finalize.sh 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #!/bin/sh
  2. # SPDX-License-Identifier: GPL-3.0-or-later
  3. # Copyright (c) 2012-2025 Daniele Bartolini et al.
  4. if [ $# -lt 1 ]; then
  5. echo "Usage: $0 <package-dir>"
  6. echo ""
  7. echo "e.g."
  8. echo "$0 path/to/crown-0.50.0"
  9. exit
  10. fi
  11. OUTPUT_DIR=$(realpath "$1")
  12. PKG_NAME=$(basename "${OUTPUT_DIR}")
  13. PARTIALS_DIR="${OUTPUT_DIR}/partials"
  14. PARTIAL_PKG="${PARTIALS_DIR}/${PKG_NAME}"
  15. TARGET_PLATFORMS="android-arm android-arm64 html5-wasm"
  16. MASTER_PLATFORMS="linux-x64 windows-x64"
  17. concatenate_and_compress () {
  18. for mp in $MASTER_PLATFORMS; do
  19. # Concatenate.
  20. for tp in $TARGET_PLATFORMS; do
  21. tar --concatenate --file \
  22. "${PARTIAL_PKG}-${mp}.tar" \
  23. "${PARTIAL_PKG}-${tp}.tar"
  24. done
  25. # Compress.
  26. if [ "${mp}" = "windows-x64" ]; then
  27. tar xf "${PARTIAL_PKG}-${mp}.tar" --directory="${PARTIALS_DIR}"
  28. (cd "${PARTIALS_DIR}" && zip -rq "${PKG_NAME}-${mp}.zip" "${PKG_NAME}")
  29. else
  30. gzip "${PARTIAL_PKG}-${mp}.tar"
  31. fi
  32. done
  33. }
  34. if [ ! -d "${PARTIALS_DIR}" ]; then
  35. echo "Partials dir not found."
  36. exit 1;
  37. fi
  38. concatenate_and_compress
  39. # Move to output dir.
  40. for zip in "${PARTIALS_DIR}"/*.gz "${PARTIALS_DIR}"/*.zip; do
  41. mv "${zip}" "${OUTPUT_DIR}"
  42. done