[scripts] Add script to package the basic runtime to reuse by mkbundle
authorMiguel de Icaza <miguel@gnome.org>
Thu, 29 Sep 2016 02:31:30 +0000 (22:31 -0400)
committerMiguel de Icaza <miguel@gnome.org>
Thu, 29 Sep 2016 02:32:18 +0000 (22:32 -0400)
scripts/Makefile.am
scripts/mono-package-runtime [new file with mode: 0644]

index fa2d8378bbf8dc85dcc279bf8c1a0cadf5e9790b..4447e30939f9a727a9952fea1f950c5570fd201b 100644 (file)
@@ -34,8 +34,9 @@ bin_SCRIPTS = \
        $(MDOC_SUBCOMMANDS)     \
        $(MDOC_COMPAT)          \
        mono-test-install       \
-       peverify                        \
-       mcs                                     \
+       peverify                \
+       mcs                     \
+       mono-package-runtime    \
        mono-heapviz            \
        $(scripts_mono_configuration_crypto)
 
diff --git a/scripts/mono-package-runtime b/scripts/mono-package-runtime
new file mode 100644 (file)
index 0000000..d71942b
--- /dev/null
@@ -0,0 +1,36 @@
+#!/bin/sh
+
+if test x$2 = x; then
+   echo usage is: mono-package-runtime MONO_INSTALL_PREFIX LABEL
+   echo The file will be created in the current directory
+   exit 1
+fi
+
+prefix=$1
+output=$2
+if test ! -d $prefix; then
+   echo the specified path is not a directory: $prefix
+   exit 1
+fi
+
+if test -e $output.zip; then
+   echo The output file already exists, refusing to overwrite: $output.zip
+   exit 1
+fi
+
+if test ! -e $prefix/bin/mono; then
+   echo The $prefix does not contains a bin/mono
+   exit 1
+fi
+
+if test ! -d $prefix/lib/mono/4.5; then
+   echo The $prefix does not contains a lib/mono/4.5
+   exit 1
+fi
+
+o=`pwd`/$output
+
+cd $prefix
+(zip -u $o.zip bin/mono lib/mono/4.5/mscorlib.dll lib/mono/4.5/System*dll lib/mono/4.5/Mono.CSharp.dll lib/mono/4.5/Microsoft*dll lib/mono/4.5/FSharp*.dll lib/mono/4.5/I18N*dll lib/mono/4.5/Accessibility.dll lib/mono/4.5/RabbitMQ.Client.dll lib/mono/4.5/ICSharpCode.SharpZipLib.dll lib/mono/4.5/CustomMarshalers.dll etc/mono/config etc/mono/4.5/machine.config etc/mono/4.5/web.config lib/mono/4.5/Mono.Cairo.dll lib/mono/4.5/Mono.Data.Sqlite.dll lib/mono/4.5/Mono.Posix.dll lib/mono/4.5/Mono.Security.*dll lib/mono/4.5/Mono.Simd.dll)
+echo Created file $o.zip
+