mono-package-runtime 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. #!/bin/bash
  2. extension="${LIBEXT:-.dylib}"
  3. if [ "`uname -s`" == "Linux" ]; then
  4. extension="${LIBEXT:-.so}"
  5. fi
  6. if [ "x$2" == "x" ]; then
  7. echo usage is: mono-package-runtime MONO_INSTALL_PREFIX LABEL
  8. echo The file will be created in the current directory
  9. exit 1
  10. fi
  11. prefix=$1
  12. output=$2
  13. if [ ! -d "$prefix" ]; then
  14. echo the specified path is not a directory: $prefix
  15. exit 1
  16. fi
  17. if [ -e "$output.zip" ]; then
  18. echo The output file already exists, refusing to overwrite: $output.zip
  19. exit 1
  20. fi
  21. if [ ! -e "$prefix/bin/mono" ]; then
  22. echo The $prefix does not contains a bin/mono
  23. exit 1
  24. fi
  25. if [ ! -d "$prefix/lib/mono/4.5" ]; then
  26. echo The $prefix does not contains a lib/mono/4.5
  27. exit 1
  28. fi
  29. o=`pwd`/$output
  30. cd $prefix
  31. (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/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 lib/mono/4.5/Mono.WebBrowser.dll lib/mono/4.5/Novell.Directory.Ldap.dll lib/libMonoSupportW$extension lib/libMonoPosixHelper$extension lib/libmono-btls-shared$extension lib/libmono-native$extension lib/libmono-native-compat$extension)
  32. echo Created file $o.zip
  33. tmpdir=`mktemp -d`
  34. mkdir -p $tmpdir/etc/mono
  35. sed 's#\$mono_libdir/##' etc/mono/config > $tmpdir/etc/mono/config
  36. cd $tmpdir
  37. zip -u $o.zip etc/mono/config
  38. rm -r $tmpdir