Fixed source code for building and installing the ISE Wizard

This commit is contained in:
Jocelyn Fiat
2012-08-28 16:45:25 +02:00
parent 2f94214863
commit 61b7f89e3b
8 changed files with 113 additions and 11 deletions

View File

@@ -0,0 +1,4 @@
NAME="EWF: Eiffel Web Framework application, multi-platform, with EWF source code"
DESCRIPTION="Create a web server application based on the cross-platform library EWF. Using the original source code of EWF (i.e: not the one in $ISE_LIBRARY)"
LOCATION="ewf_custom"
PLATFORM="all"

View File

@@ -0,0 +1,21 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<system xmlns="http://www.eiffel.com/developers/xml/configuration-1-10-0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.eiffel.com/developers/xml/configuration-1-10-0 http://www.eiffel.com/developers/xml/configuration-1-10-0.xsd" name="${WIZ:TARGET_NAME}" uuid="${WIZ:UUID}">
<target name="${WIZ:TARGET_NAME}">
<root class="EWF_APPLICATION" feature="make_and_launch"/>
<file_rule>
<exclude>/EIFGENs$</exclude>
<exclude>/CVS$</exclude>
<exclude>/.svn$</exclude>
</file_rule>
<option warning="true" is_attached_by_default="true" void_safety="all" syntax="transitional">
<assertions precondition="true" postcondition="true" check="true" invariant="true" loop="true" supplier_precondition="true"/>
</option>
<setting name="concurrency" value="${WIZ:CONCURRENCY}"/>
<library name="base" location="$ISE_LIBRARY\library\base\base-safe.ecf"/>
<library name="default_${WIZ:EWF_CONNECTOR}" location="${WIZ:EWF_DIR}/library/server/wsf/default/${WIZ:EWF_CONNECTOR}-safe.ecf"/>
<library name="encoder" location="${WIZ:EWF_DIR}/library/text/encoder/encoder-safe.ecf" readonly="false"/>
<library name="wsf" location="${WIZ:EWF_DIR}/library/server/wsf/wsf-safe.ecf" readonly="false"/>
<library name="http" location="${WIZ:EWF_DIR}/library/network/protocol/http/http-safe.ecf" readonly="false"/>
<cluster name="src" location=".\src\" recursive="true"/>
</target>
</system>

View File

@@ -1,4 +1,4 @@
NAME="Eiffel Web Framework application, multi-platform, with EWF"
NAME="EWF: Eiffel Web Framework application, multi-platform, with EWF"
DESCRIPTION="Create a web server application based on the cross-platform library EWF."
LOCATION="ewf"
PLATFORM="all"

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="ISO-8859-1"?>
<system xmlns="http://www.eiffel.com/developers/xml/configuration-1-10-0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.eiffel.com/developers/xml/configuration-1-10-0 http://www.eiffel.com/developers/xml/configuration-1-10-0.xsd" name="ewf_ise_wizard" uuid="F881A707-745E-4C6D-90D1-F820EE3B1470">
<target name="ewf_ise_wizard">
<system xmlns="http://www.eiffel.com/developers/xml/configuration-1-10-0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.eiffel.com/developers/xml/configuration-1-10-0 http://www.eiffel.com/developers/xml/configuration-1-10-0.xsd" name="wizard" uuid="F881A707-745E-4C6D-90D1-F820EE3B1470">
<target name="wizard">
<root class="EWF_WIZARD" feature="make"/>
<file_rule>
<exclude>/.git$</exclude>
@@ -15,4 +15,7 @@
<library name="vision2" location="$ISE_LIBRARY\library\vision2\vision2-safe.ecf"/>
<cluster name="src" location=".\src\" recursive="true"/>
</target>
<target name="custom_wizard" extends="wizard">
<root class="EWF_CUSTOM_WIZARD" feature="make"/>
</target>
</system>

View File

@@ -2,10 +2,10 @@ setlocal
rd /q/s tmp
mkdir tmp
ecb -config ewf_ise_wizard-safe.ecf -finalize -c_compile -project_path tmp
ecb -config ewf_ise_wizard-safe.ecf -target wizard -finalize -c_compile -project_path tmp
mkdir spec
mkdir spec\%ISE_PLATFORM%
move tmp\EIFGENs\ewf_ise_wizard\F_code\ewf_ise_wizard.exe spec\%ISE_PLATFORM%\wizard.exe
move tmp\EIFGENs\wizard\F_code\wizard.exe spec\%ISE_PLATFORM%\wizard.exe
rd /q/s tmp
set WIZ_TARGET=%ISE_EIFFEL%\studio\wizards\new_projects\ewf

View File

@@ -0,0 +1,21 @@
setlocal
rd /q/s tmp
mkdir tmp
ecb -config ewf_ise_wizard-safe.ecf -target custom_wizard -finalize -c_compile -project_path tmp
mkdir custom
mkdir custom\spec
mkdir custom\spec\%ISE_PLATFORM%
move tmp\EIFGENs\custom_wizard\F_code\wizard.exe custom\spec\%ISE_PLATFORM%\wizard.exe
rd /q/s tmp
set WIZ_TARGET=%ISE_EIFFEL%\studio\wizards\new_projects\ewf_custom
rd /q/s %WIZ_TARGET%
mkdir %WIZ_TARGET%
xcopy /I /E /Y %~dp0\pixmaps %WIZ_TARGET%\pixmaps
xcopy /I /E /Y %~dp0\resources %WIZ_TARGET%\resources
copy %~dp0\custom\resources\* %WIZ_TARGET%\resources
xcopy /I /E /Y %~dp0\custom\spec %WIZ_TARGET%\spec
copy %~dp0custom\ewf.dsc %WIZ_TARGET%\..\ewf_custom.dsc
endlocal

View File

@@ -0,0 +1,55 @@
note
description : "Objects that ..."
author : "$Author$"
date : "$Date$"
revision : "$Revision$"
class
EWF_CUSTOM_WIZARD
inherit
EWF_WIZARD
redefine
get_information,
generate_project
end
create
make
feature -- Form
get_information
do
if attached string_question ("Location of EWF source code (by default $EWF_DIR)?", Void, Void, False) as pn then
ewf_dir := pn.string
else
ewf_dir := "$EWF_DIR"
end
Precursor
end
feature -- Generation
generate_project (a_layout: WIZARD_LAYOUT)
do
if attached ewf_dir as d then
variables.force (d, "EWF_DIR")
Precursor (a_layout)
else
die (-1)
end
end
feature -- Access
ewf_dir: detachable READABLE_STRING_8
feature -- Change
feature {NONE} -- Implementation
invariant
-- invariant_clause: True
end

View File

@@ -25,8 +25,6 @@ feature {NONE} -- Initialization
end
end
feature -- Status
feature -- Access
project_directory_name: detachable READABLE_STRING_8
@@ -65,7 +63,7 @@ feature -- Form
projet_name := "ewf"
end
if boolean_question ("Do you want to use router (Y|n) ? ", <<["y", True], ["Y", True]>>, "Y") then
if boolean_question ("Do you want to use WSF_ROUTER (Y|n) ? ", <<["y", True], ["Y", True]>>, "Y") then
use_router := True
router_type := "uri-template"
else
@@ -131,13 +129,13 @@ feature -- Form
d.recursive_create_dir
end
create tfn.make_from_string (dn.string)
tfn.set_file_name ("ewb_application")
tfn.set_file_name ("ewf_application")
tfn.add_extension ("e")
if attached router_type as rt then
check rt.same_string ("uri-template") end
copy_resource_template ("ewb_application-"+ rt +".e", tfn.string)
copy_resource_template ("ewf_application-"+ rt +".e", tfn.string)
else
copy_resource_template ("ewb_application.e", tfn.string)
copy_resource_template ("ewf_application.e", tfn.string)
end
create tfn.make_from_string (dn.string)