build Windows application on the spot, using Unix tools;
authorwenzelm
Tue, 16 Jul 2013 12:25:59 +0200
changeset 52670 57a00f274130
parent 52669 fb59e6e9442a
child 52671 9a360530eac8
build Windows application on the spot, using Unix tools;
Admin/Windows/Cygwin/isabelle/init.bat
Admin/Windows/Installer/sfx.txt
Admin/Windows/launch4j/Isabelle.exe
Admin/Windows/launch4j/isabelle.xml
Admin/components/bundled-windows
Admin/components/components.sha1
Admin/lib/Tools/makedist_bundle
--- a/Admin/Windows/Cygwin/isabelle/init.bat	Mon Jul 15 23:53:04 2013 +0200
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,11 +0,0 @@
-@echo off
-
-cd "%~dp0"
-cd "..\..\.."
-
-set CYGWIN=nodosfilewarning
-
-echo Initializing Cygwin ...
-"contrib\cygwin\bin\dash" /isabelle/rebaseall
-"contrib\cygwin\bin\bash" /isabelle/postinstall
-
--- a/Admin/Windows/Installer/sfx.txt	Mon Jul 15 23:53:04 2013 +0200
+++ b/Admin/Windows/Installer/sfx.txt	Tue Jul 16 12:25:59 2013 +0200
@@ -1,9 +1,9 @@
 ;!@Install@!UTF-8!
 GUIFlags="64"
 InstallPath="%UserDesktop%"
-BeginPrompt="Unpack Isabelle2013?"
+BeginPrompt="Unpack {ISABELLE_NAME}?"
 ExtractPathText="Target directory"
-ExtractTitle="Unpacking Isabelle2013 ..."
-Shortcut="Du,{%%T\Isabelle2013\Isabelle2013.exe},{},{},{},{Isabelle2013},{%%T\Isabelle2013}"
-RunProgram="\"%%T\Isabelle2013\contrib\cygwin\isabelle\init.bat\""
+ExtractTitle="Unpacking {ISABELLE_NAME} ..."
+Shortcut="Du,{%%T\{ISABELLE_NAME}\{ISABELLE_NAME}.exe},{},{},{},{{ISABELLE_NAME}},{%%T\{ISABELLE_NAME}}"
+RunProgram="\"%%T\{ISABELLE_NAME}\contrib\jdk-7u21\x86-cygwin\jdk1.7.0_21\bin\java.exe\" -classpath \"%%T\{ISABELLE_NAME}\lib\classes\ext\Pure.jar;%%T\{ISABELLE_NAME}\lib\classes\ext\scala-library.jar;%%T\{ISABELLE_NAME}\lib\classes\ext\scala-swing.jar\" -D \"isabelle.home=\%%T\{ISABELLE_NAME}\""
 ;!@InstallEnd@!
Binary file Admin/Windows/launch4j/Isabelle.exe has changed
--- a/Admin/Windows/launch4j/isabelle.xml	Mon Jul 15 23:53:04 2013 +0200
+++ b/Admin/Windows/launch4j/isabelle.xml	Tue Jul 16 12:25:59 2013 +0200
@@ -20,7 +20,7 @@
     <cp>%EXEDIR%\lib\classes\ext\scala-swing.jar</cp>
   </classPath>
   <jre>
-    <path>%EXEDIR%\contrib\jdk-7u13\x86-cygwin\jdk1.7.0_13</path>
+    <path>%EXEDIR%\contrib\jdk-7u21\x86-cygwin\jdk1.7.0_21</path>
     <minVersion></minVersion>
     <maxVersion></maxVersion>
     <jdkPreference>jdkOnly</jdkPreference>
--- a/Admin/components/bundled-windows	Mon Jul 15 23:53:04 2013 +0200
+++ b/Admin/components/bundled-windows	Tue Jul 16 12:25:59 2013 +0200
@@ -1,2 +1,3 @@
 #additional components to be bundled for release
 cygwin-20130117
+windows_app-20130716
--- a/Admin/components/components.sha1	Mon Jul 15 23:53:04 2013 +0200
+++ b/Admin/components/components.sha1	Tue Jul 16 12:25:59 2013 +0200
@@ -48,6 +48,7 @@
 43b5afbcad575ab6817d2289756ca22fd2ef43a9  spass-3.8ds.tar.gz
 1f4a2053cc1f34fa36c4d9d2ac906ad4ebc863fd  sumatra_pdf-2.1.1.tar.gz
 869ea6d8ea35c8ba68d7fcb028f16b2b7064c5fd  vampire-1.0.tar.gz
+81d21dfd0ea5c58f375301f5166be9dbf8921a7a  windows_app-20130716.tar.gz
 2ae13aa17d0dc95ce254a52f1dba10929763a10d  xz-java-1.2.tar.gz
 4530a1aa6f4498ee3d78d6000fa71a3f63bd077f  yices-1.0.28.tar.gz
 12ae71acde43bd7bed1e005c43034b208c0cba4c  z3-3.2.tar.gz
--- a/Admin/lib/Tools/makedist_bundle	Mon Jul 15 23:53:04 2013 +0200
+++ b/Admin/lib/Tools/makedist_bundle	Tue Jul 16 12:25:59 2013 +0200
@@ -97,6 +97,8 @@
   fi
 done
 
+mv "$ISABELLE_TARGET/contrib/windows_app" "$TMP/."
+
 
 # purge other platforms
 
@@ -133,7 +135,7 @@
     perl -pi -e "s,lookAndFeel=.*,lookAndFeel=com.sun.java.swing.plaf.windows.WindowsLookAndFeel,g;" \
       "$TMP/$ISABELLE_NAME/src/Tools/jEdit/dist/properties/jEdit.props"
 
-    cp "$ISABELLE_HOME/Admin/Windows/launch4j/Isabelle.exe" "$ISABELLE_TARGET/Isabelle2013.exe"
+    cp "$TMP/windows_app/Isabelle.exe" "$ISABELLE_TARGET/${ISABELLE_NAME}.exe"
     cp "$ISABELLE_HOME/Admin/Windows/Cygwin/Cygwin-Setup.bat" \
       "$ISABELLE_HOME/Admin/Windows/Cygwin/Cygwin-Latex-Setup.bat" \
       "$ISABELLE_HOME/Admin/Windows/Cygwin/Cygwin-Terminal.bat" "$ISABELLE_TARGET"
@@ -141,7 +143,7 @@
     (
       cd "$ISABELLE_TARGET"
 
-      for NAME in init.bat postinstall rebaseall
+      for NAME in postinstall rebaseall
       do
         cp -a "$ISABELLE_HOME/Admin/Windows/Cygwin/isabelle/$NAME" \
           "contrib/cygwin/isabelle/."
@@ -180,15 +182,26 @@
 echo "packaging $(basename "$BUNDLE_ARCHIVE")"
 tar -C "$TMP" -c -z -f "$BUNDLE_ARCHIVE" "$ISABELLE_NAME" || exit 2
 
+
+# application
+
 if [ "$PLATFORM_FAMILY" = windows ]
 then
   if type -p 7z >/dev/null
   then
-    echo "packaging ${ISABELLE_NAME}.7z"
     (
       cd "$TMP"
       rm -f "${ARCHIVE_DIR}/${ISABELLE_NAME}.7z"
-      7z -y a "${ARCHIVE_DIR}/${ISABELLE_NAME}.7z" "$ISABELLE_NAME" || exit 2
+      7z -y -bd a "${ARCHIVE_DIR}/${ISABELLE_NAME}.7z" "$ISABELLE_NAME" || exit 2
+
+      echo "application for $PLATFORM_FAMILY"
+      (
+        cat "windows_app/7zsd_All.sfx"
+        cat "$ISABELLE_HOME/Admin/Windows/Installer/sfx.txt" | \
+          perl -p -e "s,{ISABELLE_NAME},${ISABELLE_NAME},g;"
+        cat "${ARCHIVE_DIR}/${ISABELLE_NAME}.7z"
+      ) > "${ARCHIVE_DIR}/${ISABELLE_NAME}.exe"
+      chmod +x "${ARCHIVE_DIR}/${ISABELLE_NAME}.exe"
     )
   fi
 fi