Opened 17 years ago
Closed 17 years ago
#20479 closed enhancement (fixed)
EiffelStudio: +precompile variant
| Reported by: | daniel.furrer@… | Owned by: | roederja@… |
|---|---|---|---|
| Priority: | Normal | Milestone: | |
| Component: | ports | Version: | 1.7.1 |
| Keywords: | precompile | Cc: | |
| Port: | eiffelstudio64 |
Description
This patch adds a variant "precompile" that will generate precompiles for EiffelBase and EiffelVision automatically.
It also adds myself to the maintainer list.
Index: Portfile
===================================================================
--- Portfile (Revision 54555)
+++ Portfile (Arbeitskopie)
@@ -8,7 +8,8 @@
set branch [join [lrange [split ${version} .] 0 1] ""]
categories lang
platforms darwin
-maintainers student.ethz.ch:roederja
+maintainers student.ethz.ch:roederja \
+ ethz.ch:dfurrer
description The ISE Eiffel Compiler and IDE
long_description EiffelStudio is a development environment for the \
Eiffel programming language developed by Eiffel Software. \
@@ -65,6 +66,39 @@
# Run ranlib on the libraries
system "ranlib ${destroot}/${applications_dir}/Eiffel${branch}/studio/spec/$env(ISE_PLATFORM)/lib/*.a"
+
+ if {[variant_isset precompile]} {
+ # Build the precompiles
+ set env(ISE_EIFFEL) ${destroot}/${applications_dir}/Eiffel${branch}
+ set compiler $env(ISE_EIFFEL)/studio/spec/$env(ISE_PLATFORM)/bin/ec
+ ui_msg "---> Precompiling EiffelBase"
+ system "cd $env(ISE_EIFFEL)/precomp/spec/$env(ISE_PLATFORM) && ${compiler} -precompile -config base.ecf -c_compile -clean"
+ system "cd $env(ISE_EIFFEL)/precomp/spec/$env(ISE_PLATFORM) && ${compiler} -precompile -config base-safe.ecf -c_compile -clean"
+ system "cd $env(ISE_EIFFEL)/precomp/spec/$env(ISE_PLATFORM) && ${compiler} -precompile -config base-mt.ecf -c_compile -clean"
+ system "cd $env(ISE_EIFFEL)/precomp/spec/$env(ISE_PLATFORM) && ${compiler} -precompile -config base-mt-safe.ecf -c_compile -clean"
+
+ ui_msg "---> Precompiling EiffelVision"
+ system "cd $env(ISE_EIFFEL)/precomp/spec/$env(ISE_PLATFORM) && ${compiler} -precompile -config vision2.ecf -c_compile -clean"
+ #system "cd $env(ISE_EIFFEL)/precomp/spec/$env(ISE_PLATFORM) && ${compiler} -precompile -config vision2-safe.ecf -c_compile -clean"
+ system "cd $env(ISE_EIFFEL)/precomp/spec/$env(ISE_PLATFORM) && ${compiler} -precompile -config vision2-mt.ecf -c_compile -clean"
+ #system "cd $env(ISE_EIFFEL)/precomp/spec/$env(ISE_PLATFORM) && ${compiler} -precompile -config vision2-mt-safe.ecf -c_compile -clean"
+
+ # Build the precompiles
+ set env(ISE_EIFFEL) ${applications_dir}/Eiffel${branch}
+ set compiler $env(ISE_EIFFEL)/studio/spec/$env(ISE_PLATFORM)/bin/ec
+ # Build the precompiles for -experimental
+ ui_msg "---> Precompiling EiffelBase for experimental"
+ system "cd $env(ISE_EIFFEL)/experimental/precomp/spec/$env(ISE_PLATFORM) && ${compiler} -experiment -precompile -config base.ecf -c_compile -clean"
+ system "cd $env(ISE_EIFFEL)/experimental/precomp/spec/$env(ISE_PLATFORM) && ${compiler} -experiment -precompile -config base-safe.ecf -c_compile -clean"
+ system "cd $env(ISE_EIFFEL)/experimental/precomp/spec/$env(ISE_PLATFORM) && ${compiler} -experiment -precompile -config base-mt.ecf -c_compile -clean"
+ system "cd $env(ISE_EIFFEL)/experimental/precomp/spec/$env(ISE_PLATFORM) && ${compiler} -experiment -precompile -config base-mt-safe.ecf -c_compile -clean"
+
+ ui_msg "---> Precompiling EiffelVision for experimental"
+ system "cd $env(ISE_EIFFEL)/experimental/precomp/spec/$env(ISE_PLATFORM) && ${compiler} -experiment -precompile -config vision2.ecf -c_compile -clean"
+ system "cd $env(ISE_EIFFEL)/experimental/precomp/spec/$env(ISE_PLATFORM) && ${compiler} -experiment -precompile -config vision2-safe.ecf -c_compile -clean"
+ system "cd $env(ISE_EIFFEL)/experimental/precomp/spec/$env(ISE_PLATFORM) && ${compiler} -experiment -precompile -config vision2-mt.ecf -c_compile -clean"
+ system "cd $env(ISE_EIFFEL)/experimental/precomp/spec/$env(ISE_PLATFORM) && ${compiler} -experiment -precompile -config vision2-mt-safe.ecf -c_compile -clean"
+ }
}
post-install {
@@ -76,3 +110,7 @@
export PATH=\$PATH:\$ISE_EIFFEL/studio/spec/\$ISE_PLATFORM/bin:\$GOBO/../spec/\$ISE_PLATFORM/bin \n\
################################################################################## \n"
}
+
+variant precompile description {Build the precompiles for EiffelBase and EiffelVision} {
+ # Build the precompiles in the destroot phase.
+}
Attachments (1)
Change History (4)
Changed 17 years ago by daniel.furrer@…
| Attachment: | eiffelstudio64.patch added |
|---|
comment:1 Changed 17 years ago by daniel.furrer@…
comment:2 Changed 17 years ago by ryandesign (Ryan Carsten Schmidt)
| Cc: | roederja@… removed |
|---|---|
| Owner: | changed from macports-tickets@… to roederja@… |
| Summary: | Precomple variant for EiffelStudio → EiffelStudio: +precompile variant |
comment:3 Changed 17 years ago by roederja
| Resolution: | → fixed |
|---|---|
| Status: | new → closed |
Committed in r55299 . Do you have a similar patch for eiffelstudio65 ?
Note: See
TracTickets for help on using
tickets.

Commented out two more lines. It looks like the vision2-safe precompiles don't work in 6.4.