Carla binary releases https://kx.studio/carla
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

build.sh 4.6KB

1 year ago
1 year ago
1 year ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. #!/bin/bash
  2. set -e
  3. cd $(dirname ${0})
  4. # ---------------------------------------------------------------------------------------------------------------------
  5. target="${1}"
  6. if [ -z "${target}" ]; then
  7. echo "usage: ${0} <target>"
  8. exit 1
  9. fi
  10. # ---------------------------------------------------------------------------------------------------------------------
  11. # check build step
  12. PAWPAW_DIR="${HOME}/PawPawBuilds"
  13. PAWPAW_BUILDDIR="${PAWPAW_DIR}/builds/${TARGET}"
  14. if [ -e ${PAWPAW_BUILDDIR}/.last-bootstrap-version ]; then
  15. LAST_BOOTSTRAP_VERSION=$(cat ${PAWPAW_BUILDDIR}/.last-bootstrap-version)
  16. else
  17. LAST_BOOTSTRAP_VERSION=0
  18. fi
  19. if [ ${LAST_BOOTSTRAP_VERSION} -eq ${BOOTSTRAP_VERSION} ] && [ -e ${PAWPAW_BUILDDIR}/.last-build-version ]; then
  20. LAST_BUILD_VERSION=$(cat ${PAWPAW_BUILDDIR}/.last-build-version)
  21. else
  22. LAST_BUILD_VERSION=0
  23. fi
  24. BUILD_VERSION=$((${LAST_BUILD_VERSION} + 1))
  25. mkdir -p ${PAWPAW_BUILDDIR}
  26. echo ${BOOTSTRAP_VERSION} > ${PAWPAW_BUILDDIR}/.last-bootstrap-version
  27. echo ${BUILD_VERSION} > ${PAWPAW_BUILDDIR}/.last-build-version
  28. echo "Carla-Releases build v${BUILD_VERSION}"
  29. # ---------------------------------------------------------------------------------------------------------------------
  30. # build dependencies according to version/step, caching files along the way
  31. if [ ${BUILD_VERSION} -eq 1 ]; then
  32. ${TRAVIS_BUILD_DIR}/PawPaw/bootstrap-plugins.sh ${TARGET}
  33. ${TRAVIS_BUILD_DIR}/PawPaw/.cleanup.sh ${TARGET}
  34. exit 0
  35. fi
  36. if [ ${BUILD_VERSION} -eq 2 ]; then
  37. # qt build takes too long on macos-universal target, download and use premade builds
  38. if [ "${TARGET}" = "macos-universal" ]; then
  39. CROSS_COMPILING=0
  40. MACOS=1
  41. MACOS_OLD=0
  42. MACOS_UNIVERSAL=1
  43. WIN32=0
  44. source "${TRAVIS_BUILD_DIR}/PawPaw/setup/versions.sh"
  45. mkdir -p "${PAWPAW_BUILDDIR}/qtbase-everywhere-src-${QT5_VERSION}"
  46. touch "${PAWPAW_BUILDDIR}/qtbase-everywhere-src-${QT5_VERSION}/.stamp_configured"
  47. touch "${PAWPAW_BUILDDIR}/qtbase-everywhere-src-${QT5_VERSION}/.stamp_built"
  48. touch "${PAWPAW_BUILDDIR}/qtbase-everywhere-src-${QT5_VERSION}/.stamp_installed"
  49. touch "${PAWPAW_BUILDDIR}/qtbase-everywhere-src-${QT5_VERSION}/.stamp_applied_01_force-10.12-universal-build.patch"
  50. mkdir -p "${PAWPAW_BUILDDIR}/qtmacextras-everywhere-src-${QT5_VERSION}"
  51. touch "${PAWPAW_BUILDDIR}/qtmacextras-everywhere-src-${QT5_VERSION}/.stamp_configured"
  52. touch "${PAWPAW_BUILDDIR}/qtmacextras-everywhere-src-${QT5_VERSION}/.stamp_built"
  53. touch "${PAWPAW_BUILDDIR}/qtmacextras-everywhere-src-${QT5_VERSION}/.stamp_installed"
  54. mkdir -p "${PAWPAW_BUILDDIR}/qtsvg-everywhere-src-${QT5_VERSION}"
  55. touch "${PAWPAW_BUILDDIR}/qtsvg-everywhere-src-${QT5_VERSION}/.stamp_configured"
  56. touch "${PAWPAW_BUILDDIR}/qtsvg-everywhere-src-${QT5_VERSION}/.stamp_built"
  57. touch "${PAWPAW_BUILDDIR}/qtsvg-everywhere-src-${QT5_VERSION}/.stamp_installed"
  58. mkdir -p "${PAWPAW_BUILDDIR}/qttools-everywhere-src-${QT5_VERSION}"
  59. touch "${PAWPAW_BUILDDIR}/qttools-everywhere-src-${QT5_VERSION}/.stamp_configured"
  60. touch "${PAWPAW_BUILDDIR}/qttools-everywhere-src-${QT5_VERSION}/.stamp_built"
  61. touch "${PAWPAW_BUILDDIR}/qttools-everywhere-src-${QT5_VERSION}/.stamp_installed"
  62. pushd "${PAWPAW_DIR}/targets"
  63. curl -L "https://falktx.com/data/pawpaw-qt-macos-universal.tar.xz" -o "pawpaw-qt-macos-universal.tar.xz" --fail
  64. tar xvf pawpaw-qt-macos-universal.tar.xz
  65. popd
  66. fi
  67. ${TRAVIS_BUILD_DIR}/PawPaw/bootstrap-qt.sh ${TARGET}
  68. ${TRAVIS_BUILD_DIR}/PawPaw/.cleanup.sh ${TARGET}
  69. exit 0
  70. fi
  71. ${TRAVIS_BUILD_DIR}/PawPaw/bootstrap-carla.sh ${TARGET}
  72. ${TRAVIS_BUILD_DIR}/PawPaw/.cleanup.sh ${TARGET}
  73. if [ ${BUILD_VERSION} -eq 3 ]; then
  74. exit 0
  75. fi
  76. # ---------------------------------------------------------------------------------------------------------------------
  77. # import PawPaw environment
  78. pushd PawPaw
  79. source local.env ${target}
  80. popd
  81. # ---------------------------------------------------------------------------------------------------------------------
  82. # build and package carla
  83. pushd Carla
  84. make features
  85. make EXTERNAL_PLUGINS=false NOOPT=true ${MAKE_ARGS}
  86. if [ "${MACOS}" -eq 1 ] && [ "${MACOS_UNIVERSAL}" -eq 0 ]; then
  87. make EXTERNAL_PLUGINS=false NOOPT=true ${MAKE_ARGS} posix32
  88. elif [ "${WIN64}" -eq 1 ]; then
  89. make EXTERNAL_PLUGINS=false NOOPT=true ${MAKE_ARGS} win32r
  90. fi
  91. make dist ${MAKE_ARGS} TESTING=true -j 1
  92. make dist ${MAKE_ARGS} TESTING=true -j 1
  93. make dist ${MAKE_ARGS} TESTING=true -j 1
  94. make dist ${MAKE_ARGS} -j 1
  95. popd
  96. # ---------------------------------------------------------------------------------------------------------------------