archive.sh 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. #!/bin/bash
  2. REV=$(git describe --tags)
  3. STEM=mupdf-$REV-source
  4. CSTEM=mupdf-$REV-source-commercial
  5. echo git archive $STEM.tar
  6. git archive --format=tar --prefix=$STEM/ -o $STEM.tar HEAD
  7. function make_submodule_archive {
  8. # Make tarballs for submodules, stripped of unnecessary files.
  9. M=$1
  10. shift
  11. echo git archive submodule-$M.tar
  12. git archive --format=tar --remote=thirdparty/$M --prefix=$STEM/thirdparty/$M/ -o submodule-$M.tar HEAD
  13. for DIR in $*
  14. do
  15. tar f submodule-$M.tar --wildcards --delete "*/$DIR"
  16. done
  17. tar Af $STEM.tar submodule-$M.tar
  18. rm -f submodule-$M.tar
  19. }
  20. # Remove test files from thirdparty source archives.
  21. make_submodule_archive brotli tests
  22. make_submodule_archive curl tests
  23. make_submodule_archive extract test
  24. make_submodule_archive freeglut
  25. make_submodule_archive freetype tests
  26. make_submodule_archive gumbo-parser benchmarks tests
  27. make_submodule_archive harfbuzz test perf
  28. make_submodule_archive jbig2dec
  29. make_submodule_archive lcms2 testbed plugins/fast_float
  30. make_submodule_archive leptonica prog
  31. make_submodule_archive libjpeg libjpeg/test*
  32. make_submodule_archive mujs
  33. make_submodule_archive openjpeg
  34. make_submodule_archive tesseract unittest
  35. make_submodule_archive zint
  36. make_submodule_archive zlib test contrib
  37. make_submodule_archive zxing-cpp test
  38. # Generate commercial tarball
  39. cp $STEM.tar $CSTEM.tar
  40. tar f $CSTEM.tar --wildcards --delete ${STEM}/COPYING
  41. tar -r -f $CSTEM.tar --owner=0 --group=0 --mode=664 --transform=s,$(dirname "$0")/customer\.txt,${STEM}/LICENSE, "$(dirname "$0")/customer.txt"
  42. echo gzip $CSTEM.tar
  43. pigz -f -k -11 $CSTEM.tar
  44. rm -f $CSTEM.tar
  45. echo gzip $STEM.tar
  46. pigz -f -k -11 $STEM.tar
  47. echo lzip $STEM.tar
  48. plzip -9 -f -k $STEM.tar
  49. rm -f $STEM.tar