Added script to fix dotnet Eiffel compilation.
Updated delivery script for minor changes.
This commit is contained in:
47
build_fix_dotnet.bat
Normal file
47
build_fix_dotnet.bat
Normal file
@@ -0,0 +1,47 @@
|
|||||||
|
@echo off
|
||||||
|
setlocal
|
||||||
|
rem Output a set of command to remove EiffelSoftware regasm-registered dll.
|
||||||
|
rem removing the related reg key helps fixing dotnet Eiffel compilation.
|
||||||
|
rem
|
||||||
|
rem Usage: build_fix_dotnet.bat > fix_dotnet.bat.bat
|
||||||
|
rem - edit, check and modify if needed, the "fix_dotnet.bat.bat" script
|
||||||
|
rem - then execute "fix_dotnet.bat.bat" following the requirements.
|
||||||
|
rem Requirements:
|
||||||
|
rem - have ISE_EIFFEL and ISE_PLATFORM set, in order to perform new registration using regasm.
|
||||||
|
rem - run "fix_dotnet.bat.bat" in administration mode.
|
||||||
|
|
||||||
|
set TMP_SCRIPT_FILENAME=fix_dotnet.bat
|
||||||
|
|
||||||
|
echo REM Build script to fix dotnet Eiffel environment...
|
||||||
|
|
||||||
|
echo REM Fix dotnet Eiffel environment > %TMP_SCRIPT_FILENAME%
|
||||||
|
|
||||||
|
reg query HKCR > %TMP_SCRIPT_FILENAME%.tmp
|
||||||
|
for /f %%f in ('findstr "EiffelSoftware" %TMP_SCRIPT_FILENAME%.tmp') do call :getclsid %%f
|
||||||
|
del %TMP_SCRIPT_FILENAME%.tmp
|
||||||
|
|
||||||
|
echo %ISE_EIFFEL%\tools\spec\%ISE_PLATFORM%\bin\espawn.exe "regasm %ISE_EIFFEL%\studio\spec\%ISE_PLATFORM%\bin\EiffelSoftware.Runtime.dll" >> %TMP_SCRIPT_FILENAME%
|
||||||
|
echo %ISE_EIFFEL%\tools\spec\%ISE_PLATFORM%\bin\espawn.exe "regasm %ISE_EIFFEL%\studio\spec\%ISE_PLATFORM%\bin\EiffelSoftware.MetadataConsumer.dll" >> %TMP_SCRIPT_FILENAME%
|
||||||
|
|
||||||
|
echo REM completed, see %TMP_SCRIPT_FILENAME%
|
||||||
|
|
||||||
|
goto end
|
||||||
|
|
||||||
|
|
||||||
|
:getclsid
|
||||||
|
::echo getclsid %1
|
||||||
|
reg query "%1\CLSID" > %TMP_SCRIPT_FILENAME%.tmp2
|
||||||
|
for /f "tokens=3*" %%a in ('findstr "Default" %TMP_SCRIPT_FILENAME%.tmp2') do call :delclsid %%a
|
||||||
|
del %TMP_SCRIPT_FILENAME%.tmp2
|
||||||
|
|
||||||
|
echo REG DELETE %1 /f
|
||||||
|
echo REG DELETE %1 /f >> %TMP_SCRIPT_FILENAME%
|
||||||
|
goto :EOF
|
||||||
|
|
||||||
|
:delclsid
|
||||||
|
echo REG DELETE HKCR\CLSID\%1 /f
|
||||||
|
echo REG DELETE HKCR\CLSID\%1 /f >> %TMP_SCRIPT_FILENAME%
|
||||||
|
goto :EOF
|
||||||
|
|
||||||
|
:end
|
||||||
|
goto :EOF
|
||||||
@@ -4,7 +4,7 @@ iff not defined ISE_PLATFORM then
|
|||||||
set ISE_PLATFORM=win64
|
set ISE_PLATFORM=win64
|
||||||
endiff
|
endiff
|
||||||
iff not defined ISE_EIFFEL then
|
iff not defined ISE_EIFFEL then
|
||||||
set ISE_EIFFEL=C:\DEV\Eiffel\18.05_%ISE_PLATFORM%
|
set ISE_EIFFEL=C:\DEV\Eiffel\18.07_%ISE_PLATFORM%
|
||||||
endiff
|
endiff
|
||||||
|
|
||||||
iff "%ISE_PLATFORM%" == "win64" then
|
iff "%ISE_PLATFORM%" == "win64" then
|
||||||
|
|||||||
@@ -42,8 +42,12 @@ else
|
|||||||
safe_copy %EIFFEL_SRC\C\CONFIGS\windows-x86-64-mingw %STUDIO_DIR\studio\config\%ISE_PLATFORM\mingw\config.sh
|
safe_copy %EIFFEL_SRC\C\CONFIGS\windows-x86-64-mingw %STUDIO_DIR\studio\config\%ISE_PLATFORM\mingw\config.sh
|
||||||
endiff
|
endiff
|
||||||
|
|
||||||
remtrace Compile the run-time for Microsoft
|
iff defined HAS_VC140 then
|
||||||
espawn -u:VC140 "%COMSPEC% /c %INIT_DIR%\make_runtimes.btm msc_vc140"
|
remtrace Compile the run-time for Microsoft (msc_vc140)
|
||||||
|
espawn -u:VC140 "%COMSPEC% /c %INIT_DIR%\make_runtimes.btm msc_vc140"
|
||||||
|
endiff
|
||||||
|
|
||||||
|
remtrace Compile the run-time for Microsoft (ISE_C_COMPILER=%ISE_C_COMPILER% ISE_C_COMPILER_VER=%ISE_C_COMPILER_VER%)
|
||||||
espawn -u:%ISE_C_COMPILER_VER% "%COMSPEC% /c %INIT_DIR%\make_runtimes.btm msc"
|
espawn -u:%ISE_C_COMPILER_VER% "%COMSPEC% /c %INIT_DIR%\make_runtimes.btm msc"
|
||||||
|
|
||||||
remtrace Copy the header files
|
remtrace Copy the header files
|
||||||
@@ -133,16 +137,6 @@ else
|
|||||||
set_version %EIFFEL_SRC 0000 system_constants.e
|
set_version %EIFFEL_SRC 0000 system_constants.e
|
||||||
cdd %FINALIZATION_DIR
|
cdd %FINALIZATION_DIR
|
||||||
safe_copy %EIFFEL_SRC\Eiffel\Ace\*.* .
|
safe_copy %EIFFEL_SRC\Eiffel\Ace\*.* .
|
||||||
clean_project
|
|
||||||
remtrace finalize GPL edition "bench"
|
|
||||||
finalize ec.ecf bench
|
|
||||||
cleanup_eiffel bench ec.exe
|
|
||||||
iff exist ec.exe then
|
|
||||||
move ec.exe %INSTALL_DIR\releases\gpl_version
|
|
||||||
else
|
|
||||||
remerror Could not finalize a new "gpl_edition" EiffelStudio
|
|
||||||
CANCEL_ON_ERROR
|
|
||||||
endiff
|
|
||||||
|
|
||||||
clean_project
|
clean_project
|
||||||
remtrace finalize GPL edition "batch"
|
remtrace finalize GPL edition "batch"
|
||||||
@@ -155,6 +149,18 @@ else
|
|||||||
CANCEL_ON_ERROR
|
CANCEL_ON_ERROR
|
||||||
endiff
|
endiff
|
||||||
|
|
||||||
|
clean_project
|
||||||
|
remtrace finalize GPL edition "bench"
|
||||||
|
finalize ec.ecf bench
|
||||||
|
cleanup_eiffel bench ec.exe
|
||||||
|
iff exist ec.exe then
|
||||||
|
move ec.exe %INSTALL_DIR\releases\gpl_version
|
||||||
|
else
|
||||||
|
remerror Could not finalize a new "gpl_edition" EiffelStudio
|
||||||
|
CANCEL_ON_ERROR
|
||||||
|
endiff
|
||||||
|
|
||||||
|
|
||||||
exprtfile -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/Delivery/scripts/licensing/eiffelstudio/gpl.txt > %INSTALL_DIR\releases\gpl_version\LICENSE
|
exprtfile -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/Delivery/scripts/licensing/eiffelstudio/gpl.txt > %INSTALL_DIR\releases\gpl_version\LICENSE
|
||||||
endiff
|
endiff
|
||||||
|
|
||||||
@@ -164,16 +170,6 @@ else
|
|||||||
sed -e "s/Version_type_name:\ STRING\ =\ \"GPL\ Edition\"/Version_type_name:\ STRING\ =\ \"Enterprise\ Edition\"/g" system_constants.e >> new_system_constants.e
|
sed -e "s/Version_type_name:\ STRING\ =\ \"GPL\ Edition\"/Version_type_name:\ STRING\ =\ \"Enterprise\ Edition\"/g" system_constants.e >> new_system_constants.e
|
||||||
move new_system_constants.e system_constants.e
|
move new_system_constants.e system_constants.e
|
||||||
cdd %FINALIZATION_DIR
|
cdd %FINALIZATION_DIR
|
||||||
clean_project
|
|
||||||
safe_copy %EIFFEL_SRC\tools\estudio_enterprise\ec.ecf ec.ecf
|
|
||||||
finalize ec.ecf bench
|
|
||||||
cleanup_eiffel bench ec.exe
|
|
||||||
iff exist ec.exe then
|
|
||||||
move ec.exe %INSTALL_DIR\releases\enterprise_version
|
|
||||||
else
|
|
||||||
remerror Could not finalize a new "enterprise_version" EiffelStudio
|
|
||||||
CANCEL_ON_ERROR
|
|
||||||
endiff
|
|
||||||
|
|
||||||
clean_project
|
clean_project
|
||||||
finalize ec.ecf batch
|
finalize ec.ecf batch
|
||||||
@@ -185,6 +181,17 @@ else
|
|||||||
CANCEL_ON_ERROR
|
CANCEL_ON_ERROR
|
||||||
endiff
|
endiff
|
||||||
|
|
||||||
|
clean_project
|
||||||
|
safe_copy %EIFFEL_SRC\tools\estudio_enterprise\ec.ecf ec.ecf
|
||||||
|
finalize ec.ecf bench
|
||||||
|
cleanup_eiffel bench ec.exe
|
||||||
|
iff exist ec.exe then
|
||||||
|
move ec.exe %INSTALL_DIR\releases\enterprise_version
|
||||||
|
else
|
||||||
|
remerror Could not finalize a new "enterprise_version" EiffelStudio
|
||||||
|
CANCEL_ON_ERROR
|
||||||
|
endiff
|
||||||
|
|
||||||
exprtfile -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/Delivery/scripts/licensing/eiffelstudio/enterprise.txt > %INSTALL_DIR\releases\enterprise_version\LICENSE
|
exprtfile -r %PUBLIC_SVN_REVISION %DEFAULT_PUBLIC_SVN/Src/Delivery/scripts/licensing/eiffelstudio/enterprise.txt > %INSTALL_DIR\releases\enterprise_version\LICENSE
|
||||||
endiff
|
endiff
|
||||||
endiff
|
endiff
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ REM Eiffel Compilation
|
|||||||
REM Remove a project from the current directory, if any
|
REM Remove a project from the current directory, if any
|
||||||
alias clean_project `iff exist EIFGENs .or. isdir EIFGENs then & fullrd EIFGENs & endiff`
|
alias clean_project `iff exist EIFGENs .or. isdir EIFGENs then & fullrd EIFGENs & endiff`
|
||||||
REM Finalize at the Eiffel level only
|
REM Finalize at the Eiffel level only
|
||||||
alias finalize `iff "%2" == "" then & ecb -batch -finalize -c_compile -config %$ >>& %INSTALL_LOG & else & ecb -batch -finalize -c_compile -config %1 -target %2 >>& %INSTALL_LOG & endiff`
|
alias finalize `echo ISE_C_COMPILER=%ISE_C_COMPILER% (ISE_C_COMPILER_VER=%ISE_C_COMPILER_VER%) & iff "%2" == "" then & ecb -batch -finalize -c_compile -config %$ >>& %INSTALL_LOG & else & ecb -batch -finalize -c_compile -config %1 -target %2 >>& %INSTALL_LOG & endiff`
|
||||||
REM Melt at the Eiffel level only
|
REM Melt at the Eiffel level only
|
||||||
alias melt `ecb -config %$ >>& %INSTALL_LOG`
|
alias melt `ecb -config %$ >>& %INSTALL_LOG`
|
||||||
alias freeze `ecb -freeze -c_compile -config %$ >>& %INSTALL_LOG`
|
alias freeze `ecb -freeze -c_compile -config %$ >>& %INSTALL_LOG`
|
||||||
|
|||||||
Reference in New Issue
Block a user