@echo off REM Adding Wix to the path. set PATH=%PATH;%@EXECSTR[cd]\wix set OLD_PATH=%PATH set OLD_EIFFEL_SRC=%EIFFEL_SRC set OLD_ISE_LIBRARY=%ISE_LIBRARY set OLD_ISE_SRC=%ISE_SRC set INIT_DIR=%@EXECSTR[cd] set TMP_ISE_EIFFEL=%ISE_EIFFEL call set_aliases.btm remtrace Set up the environment on break goto broken TIMER ON /1 >> NUL TIMER ON /2 >> NUL iff %@INDEX[%@LOWER[%$],h] ge 0 then echo Installation for ISE Eiffel 5 generation. echo Parameters are no_compile, no_doc, no_new_ec, enterprise no_wizards and no_install (or nothing to fully regenerate the installation). CANCEL endiff iff %@INDEX[%@LOWER[%$],no_compil] ge 0 then set NO_COMPILE="True" else unset /Q NO_COMPILE endiff iff %@INDEX[%@LOWER[%$],no_doc] ge 0 then set NO_DOCUMENTATION="True" else unset /Q NO_DOCUMENTATION endiff iff %@INDEX[%@LOWER[%$],no_install] ge 0 then set NO_INSTALL="True" else unset /Q NO_INSTALL endiff iff %@INDEX[%@LOWER[%$],no_new_ec] ge 0 then set NO_NEW_EC="True" else unset /Q NO_NEW_EC endiff iff %@INDEX[%@LOWER[%$],enterprise] ge 0 then set BUILD_ENTERPRISE_ONLY="True" else unset /Q BUILD_ENTERPRISE_ONLY endiff iff %@INDEX[%@LOWER[%$],no_wizard] ge 0 then set NO_WIZARDS="True" else unset /Q NO_WIZARDS endiff set EIFFEL_SRC=%TMP_EIFFEL_SRC set ISE_LIBRARY=%TMP_EIFFEL_SRC set ISE_SRC=%TMP_EIFFEL_SRC cdd %INIT_DIR remtrace Approximative starting time: remtrace %_TIME REM This is not a comment, it should create a 0-sized log file. REM > %INSTALL_LOG call check_environment.btm cdd %INIT_DIR give_time_to warm up remtrace Retrieve and organize the delivery remtrace Remove %INSTALL_DIR if isdir %INSTALL_DIR fullrd %INSTALL_DIR >>& %INSTALL_LOG if exist %INSTALL_DIR fullrf %INSTALL_DIR >>& %INSTALL_LOG iff exist %INSTALL_DIR then echo Cannot delete %INSTALL_DIR! CANCEL endiff md %INSTALL_DIR cdd %INSTALL_DIR remtrace studio exprt %DEFAULT_ORIGO_SVN/Delivery/studio studio fullrd studio\help\defaults\unix fullrd studio\spec\unix cdd %INSTALL_DIR\studio\config if not "windows"=="%ISE_PLATFORM" move windows %ISE_PLATFORM cdd %INSTALL_DIR remtrace build exprt %DEFAULT_ORIGO_SVN/Delivery/build build remtrace vision2 tour exprt %DEFAULT_ORIGO_SVN/Delivery/vision2_tour vision2_tour remtrace eifinit exprt %DEFAULT_ORIGO_SVN/Delivery/eifinit eifinit remtrace .NET libraries exprt %DEFAULT_ORIGO_SVN/Src/library.net library.net remtrace examples exprt %DEFAULT_ORIGO_SVN/Src/examples examples cd examples fullrd eiffeltest fullrd math fullrd matisse fullrd store\matisse fullrd old_com fullrd old_matisse fullrd vision fullrd build cd dotnet fullrd envision fullrd winforms\data\simple_binding cd .. cd vision2 fullrd Boxes fullrd drawing_area fullrd ev_list fullrd fake_event fullrd figure fullrd hello_world fullrd menu fullrd multicolumn_list fullrd pixmap fullrd split_area fullrd test_all_widgets fullrd test_events fullrd tests fullrd tutorial fullrd widget_test cd .. cd wel fullrd unicode cd .. cd .. remtrace precomp safe_md %INSTALL_DIR\precomp safe_md %INSTALL_DIR\precomp\spec cd %INSTALL_DIR\precomp\spec exprt %DEFAULT_ORIGO_SVN/Delivery/precomp/spec/platform %ISE_PLATFORM exprt %DEFAULT_ORIGO_SVN/Delivery/precomp/spec/dotnet dotnet cdd %INSTALL_DIR remtrace wizards exprt %DEFAULT_ORIGO_SVN/Delivery/wizards wizards fullrf %INSTALL_DIR\studio\wizards\new_projects\wizard.dsc fullrd %INSTALL_DIR\studio\wizards\new_projects\wizard remtrace C_library exprt %DEFAULT_ORIGO_SVN/Src/C_library C_library fullrd C_library\.libs remtrace Free add ons exprt %DEFAULT_ORIGO_SVN/free_add_ons free_add_ons remtrace .NET assemblies exprt %DEFAULT_ORIGO_SVN/Delivery/dotnet dotnet remtrace root exprt -N %DEFAULT_ORIGO_SVN/Delivery Delivery move Delivery\*.* . >>& %INSTALL_LOG fullrd Delivery >>& %INSTALL_LOG fullrf INSTALL README make_install compile_libraries remtrace Borland files exprt %DEFAULT_ISE_SVN/Src/tools/BCC55.tar.gz BCC55.tar.gz tar xfz BCC55.tar.gz >>& %INSTALL_LOG fullrf BCC55\bin\bcc32.cfg fullrf BCC55.tar.gz remtrace Create documentation directory md docs remtrace Create directories safe_md %INSTALL_DIR\studio\spec safe_md %INSTALL_DIR\studio\spec\%ISE_PLATFORM safe_md %INSTALL_DIR\studio\spec\%ISE_PLATFORM\bin safe_md %INSTALL_DIR\build\spec safe_md %INSTALL_DIR\build\spec\%ISE_PLATFORM safe_md %INSTALL_DIR\build\spec\%ISE_PLATFORM\bin safe_md %INSTALL_DIR\vision2_tour\spec safe_md %INSTALL_DIR\vision2_tour\spec\%ISE_PLATFORM safe_md %INSTALL_DIR\vision2_tour\spec\%ISE_PLATFORM\bin safe_md %INSTALL_DIR\wizards safe_md %INSTALL_DIR\wizards\com safe_md %INSTALL_DIR\wizards\com\config safe_md %INSTALL_DIR\wizards\dotnet safe_md %INSTALL_DIR\studio\spec\%ISE_PLATFORM\include safe_md %INSTALL_DIR\studio\spec\%ISE_PLATFORM\lib safe_md %INSTALL_DIR\studio\spec\%ISE_PLATFORM\lib\msc safe_md %INSTALL_DIR\studio\spec\%ISE_PLATFORM\lib\bcb safe_md %INSTALL_DIR\rb safe_md %INSTALL_DIR\rb\bin cdd %INIT_DIR give_time_to organize the delivery and to start filling it call make_libraries.btm cdd %INIT_DIR REM Fill directories iff not defined NO_COMPILE then remtrace Update all libraries iff isdir %EIFFEL_SRC then remtrace Delete %EIFFEL_SRC fullrd %EIFFEL_SRC endiff safe_md %EIFFEL_SRC REM Clean up the files remtrace Update all source files. cdd %EIFFEL_SRC\.. co %DEFAULT_ORIGO_SVN/Src %EIFFEL_SRC cdd %INIT_DIR call update_libraries.btm copy %EIFFEL_SRC\library\wel\spec\msc\dll\wel_hook.dll %INSTALL_DIR\studio\spec\%ISE_PLATFORM\bin\ copy %EIFFEL_SRC\library\wel\spec\msc\dll\wel_hook.dll %INSTALL_DIR\build\spec\%ISE_PLATFORM\bin\ copy %EIFFEL_SRC\library\wel\spec\msc\dll\wel_hook.dll %INSTALL_DIR\vision2_tour\spec\%ISE_PLATFORM\bin\ cdd %INIT_DIR give_time_to update libraries remtrace Generate needed executables of the bin directory call make_exes.btm cdd %INIT_DIR give_time_to compile exes iff not defined NO_WIZARDS then remtrace Generate the precompilation and the "new project" wizards call make_wizards.btm cdd %INIT_DIR give_time_to compile basic wizards remtrace Generate the COM wizard call make_com_wizard.btm cdd %INIT_DIR give_time_to compile the COM wizard else quick_move /s studio\wizards quick_move /s wizards endiff remtrace Extracting Gobo copy %INSTALL_DIR\free_add_ons\gobo\gobo_34_win.tgz %INSTALL_DIR\library cdd %INSTALL_DIR\library tar xfz gobo_34_win.tgz fullrf gobo_34_win.tgz cdd %INSTALL_DIR\free_add_ons fullrf gobo\gobo_34_unix.tgz fullrf gobo\gobo_34_win.tgz fullrf gobo\gobo_33_ise.tgz cdd %INSTALL_DIR\free_add_ons\zad_miner\ace clean_project finalize zad_miner.ecf cleanup_eiffel zad_miner zad_miner.exe iff not exist zad_miner.exe then echo Couldnt finalize zad_miner.exe. CANCEL endiff fullrf new_ace.ecf cd .. safe_md binaries move ace\zad_miner.exe binaries cdd %INIT_DIR remtrace Generate Resource Bench call make_rb.btm cdd %INIT_DIR give_time_to compile Resource Bench else remtrace Copy executable files from the old delivery quick_move /s studio\spec quick_move /s studio\wizards quick_move /s rb quick_move /s wizards cdd %INSTALL_DIR safe_md free_add_ons\zad_miner\binaries quick_move free_add_ons\zad_miner\binaries\zad_miner.exe give_time_to copy executables from the old delivery endiff iff not defined NO_DOCUMENTATION then remtrace Recompile the documentation call make_xml_documentation cdd %INIT_DIR give_time_to compile the main documentation else remtrace Retrieve the old documentation quick_move docs\eiffel.chm give_time_to copy the main documentation from the old delivery endiff cdd %INIT_DIR iff not defined NO_INSTALL then call make_installations.btm cdd %INIT_DIR endiff REM Finish remtrace final time: remtrace %_TIME remtrace total used time: remtrace %@TIMER[2] REM Error handling and normal ending :broken CANCEL