diff --git a/.github/workflows/ccpp_mac.yml b/.github/workflows/ccpp_mac.yml index b198e85a7fb..b4f66f0149a 100644 --- a/.github/workflows/ccpp_mac.yml +++ b/.github/workflows/ccpp_mac.yml @@ -15,23 +15,26 @@ jobs: steps: - uses: actions/checkout@v3 - - name: build deps & slicer - run: ./BuildMacOS.sh - - name: copy zstd - run: cp /usr/local/opt/zstd/lib/libzstd.1.dylib ./build/pack/${{ github.event.repository.name }}/${{ github.event.repository.name }}.app/Contents/MacOS/libzstd.1.dylib - - name: relink zstd - run: install_name_tool -change /usr/local/opt/zstd/lib/libzstd.1.dylib @executable_path/libzstd.1.dylib ./build/pack/${{ github.event.repository.name }}/${{ github.event.repository.name }}.app/Contents/MacOS/${{ github.event.repository.name }} - - name: create the dmg + - name: check autoconf version + run: autoconf --version + - name: update automake for mpfr run: | - hdiutil create -ov -fs HFS+ -volname ${{ github.event.repository.name }} -srcfolder "build/pack/${{ github.event.repository.name }}" temp.dmg - hdiutil convert temp.dmg -format UDZO -o ${{ github.event.repository.name }}.dmg + curl -O -L http://ftpmirror.gnu.org/automake/automake-1.16.5.tar.gz + tar -xzf automake-1.16.5.tar.gz + cd automake-* + ./configure + make + sudo make install + automake --version + - name: build deps & slicer + run: ./BuildMacOS.sh -dsi - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: nightly_macos.app path: build/pack/${{ github.event.repository.name }}/${{ github.event.repository.name }}.app - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: nightly_macos.dmg path: ${{ github.event.repository.name }}.dmg diff --git a/.github/workflows/ccpp_mac_arm.yml b/.github/workflows/ccpp_mac_arm.yml index 090671cc17d..7519c407e3f 100644 --- a/.github/workflows/ccpp_mac_arm.yml +++ b/.github/workflows/ccpp_mac_arm.yml @@ -15,15 +15,28 @@ jobs: steps: - uses: actions/checkout@v3 + - name: install autoconf + run: brew install autoconf + - name: check autoconf version + run: autoconf --version + - name: update automake for mpfr + run: | + curl -O -L http://ftpmirror.gnu.org/automake/automake-1.16.5.tar.gz + tar -xzf automake-1.16.5.tar.gz + cd automake-* + ./configure + make + sudo make install + automake --version - name: build deps & slicer - run: ./BuildMacOS.sh -ia + run: ./BuildMacOS.sh -adsi - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: nightly_macos_arm_debug.dmg path: build/${{ github.event.repository.name }}.dmg - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: nightly_arm_macos.tar path: build/${{ github.event.repository.name }}.tar diff --git a/.github/workflows/ccpp_mac_arm_debug.yml b/.github/workflows/ccpp_mac_arm_debug.yml index 10b4e1ce387..9faf0c8df8e 100644 --- a/.github/workflows/ccpp_mac_arm_debug.yml +++ b/.github/workflows/ccpp_mac_arm_debug.yml @@ -15,17 +15,17 @@ jobs: with: ref: 'debug_macos' - name: build deps & slicer - run: ./BuildMacOS.sh -bia + run: ./BuildMacOS.sh -badsi - name: ls build working-directory: ./build run: ls - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: nightly_macos_arm_debug.dmg path: build/${{ github.event.repository.name }}.dmg - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: nightly_arm_macos.tar path: build/${{ github.event.repository.name }}.tar diff --git a/.github/workflows/ccpp_mac_arm_rc.yml b/.github/workflows/ccpp_mac_arm_rc.yml index 0fbba7b9c21..b9888593588 100644 --- a/.github/workflows/ccpp_mac_arm_rc.yml +++ b/.github/workflows/ccpp_mac_arm_rc.yml @@ -11,18 +11,31 @@ jobs: runs-on: macos-14 steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 with: ref: 'rc' + - name: install autoconf + run: brew install autoconf + - name: check autoconf version + run: autoconf --version + - name: update automake for mpfr + run: | + curl -O -L http://ftpmirror.gnu.org/automake/automake-1.16.5.tar.gz + tar -xzf automake-1.16.5.tar.gz + cd automake-* + ./configure + make + sudo make install + automake --version - name: build deps & slicer - run: ./BuildMacOS.sh -ia + run: ./BuildMacOS.sh -adsi - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: rc_arm_macos.dmg path: build/${{ github.event.repository.name }}.dmg - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: rc_arm_macos.tar path: build/${{ github.event.repository.name }}.tar diff --git a/.github/workflows/ccpp_mac_debug.yml b/.github/workflows/ccpp_mac_debug.yml index f43b8296a03..741ae754099 100644 --- a/.github/workflows/ccpp_mac_debug.yml +++ b/.github/workflows/ccpp_mac_debug.yml @@ -15,25 +15,17 @@ jobs: with: ref: 'debug_macos' - name: build deps & slicer - run: ./BuildMacOS.sh -b - - name: copy zstd - run: cp /usr/local/opt/zstd/lib/libzstd.1.dylib ./build/pack/${{ github.event.repository.name }}/${{ github.event.repository.name }}.app/Contents/MacOS/libzstd.1.dylib - - name: relink zstd - run: install_name_tool -change /usr/local/opt/zstd/lib/libzstd.1.dylib @executable_path/libzstd.1.dylib ./build/pack/${{ github.event.repository.name }}/${{ github.event.repository.name }}.app/Contents/MacOS/${{ github.event.repository.name }} - - name: create the dmg - run: | - hdiutil create -ov -fs HFS+ -volname ${{ github.event.repository.name }} -srcfolder build/pack/${{ github.event.repository.name }} temp.dmg - hdiutil convert temp.dmg -format UDZO -o ${{ github.event.repository.name }}.dmg + run: ./BuildMacOS.sh -bdsi - name: tar the pack working-directory: ./build run: ls - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: nightly_macos_debug.dmg path: build/${{ github.event.repository.name }}.dmg - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: nightly_macos.tar path: ${{ github.event.repository.name }}.tar diff --git a/.github/workflows/ccpp_mac_rc.yml b/.github/workflows/ccpp_mac_rc.yml index 972bf701623..c059aa3526c 100644 --- a/.github/workflows/ccpp_mac_rc.yml +++ b/.github/workflows/ccpp_mac_rc.yml @@ -13,23 +13,28 @@ jobs: steps: - uses: actions/checkout@v3 - - name: build deps & slicer - run: ./BuildMacOS.sh - - name: copy zstd - run: cp /usr/local/opt/zstd/lib/libzstd.1.dylib ./build/pack/${{ github.event.repository.name }}/${{ github.event.repository.name }}.app/Contents/MacOS/libzstd.1.dylib - - name: relink zstd - run: install_name_tool -change /usr/local/opt/zstd/lib/libzstd.1.dylib @executable_path/libzstd.1.dylib ./build/pack/${{ github.event.repository.name }}/${{ github.event.repository.name }}.app/Contents/MacOS/${{ github.event.repository.name }} - - name: create the dmg + with: + ref: 'rc' + - name: check autoconf version + run: autoconf --version + - name: update automake for mpfr run: | - hdiutil create -ov -fs HFS+ -volname ${{ github.event.repository.name }} -srcfolder "build/pack/${{ github.event.repository.name }}" temp.dmg - hdiutil convert temp.dmg -format UDZO -o ${{ github.event.repository.name }}.dmg + curl -O -L http://ftpmirror.gnu.org/automake/automake-1.16.5.tar.gz + tar -xzf automake-1.16.5.tar.gz + cd automake-* + ./configure + make + sudo make install + automake --version + - name: build deps & slicer + run: ./BuildMacOS.sh -dsi - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: rc_macos.app path: build/pack/${{ github.event.repository.name }}/${{ github.event.repository.name }}.app - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: rc_macos.dmg path: ${{ github.event.repository.name }}.dmg diff --git a/.github/workflows/ccpp_ubuntu.yml b/.github/workflows/ccpp_ubuntu.yml index 363cdba227c..ce719acb181 100644 --- a/.github/workflows/ccpp_ubuntu.yml +++ b/.github/workflows/ccpp_ubuntu.yml @@ -30,21 +30,15 @@ jobs: run: sudo apt update - name: install gtk2 glew run: sudo apt install libgtk2.0-dev libglew-dev libudev-dev libdbus-1-dev gettext - - name: build deps & slicer - run: ./BuildLinux.sh -dgs - - name: make .pot - working-directory: ./build - run: make gettext_make_pot - - name: build tar & appimage - working-directory: ./build - run: src/BuildLinuxImage.sh -i + - name: build deps & slicer, tar & appimage + run: ./BuildLinux.sh -dgsi - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: nightly_linux_gtk2.tar path: build/${{ github.event.repository.name }}.tar - name: Upload appimage - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: ${{ github.event.repository.name }}-gtk2.AppImage path: build/${{ github.event.repository.name }}_ubu64.AppImage diff --git a/.github/workflows/ccpp_ubuntu_debug.yml b/.github/workflows/ccpp_ubuntu_debug.yml index 824b34b4af4..7c45ea3a3c6 100644 --- a/.github/workflows/ccpp_ubuntu_debug.yml +++ b/.github/workflows/ccpp_ubuntu_debug.yml @@ -18,9 +18,6 @@ jobs: uses: jwlawson/actions-setup-cmake@v1.13 with: cmake-version: '3.16.x' - - name: update submodule profiles - working-directory: ./resources/profiles - run: git submodule update --init - name: change date in version run: sed -i "s/+UNKNOWN/_$(date '+%F')/" version.inc - name: update clock @@ -29,21 +26,15 @@ jobs: run: sudo apt update - name: install gtk2 glew run: sudo apt install libgtk2.0-dev libglew-dev libudev-dev libdbus-1-dev libssl-dev libcurl4-openssl-dev gettext - - name: build deps & slicer - run: ./BuildLinux.sh -bdgs - - name: make .pot - working-directory: ./build - run: make gettext_make_pot - - name: build tar & appimage - working-directory: ./build - run: src/BuildLinuxImage.sh -i + - name: build deps & slicer, tar & appimage + run: ./BuildLinux.sh -bdgsi - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: nightly_linux_gtk2.tar path: build/${{ github.event.repository.name }}.tar - name: Upload appimage - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: ${{ github.event.repository.name }}-gtk2.AppImage path: build/${{ github.event.repository.name }}_ubu64.AppImage diff --git a/.github/workflows/ccpp_ubuntu_gtk3.yml b/.github/workflows/ccpp_ubuntu_gtk3.yml index 6bcf54eb255..42b0916e67d 100644 --- a/.github/workflows/ccpp_ubuntu_gtk3.yml +++ b/.github/workflows/ccpp_ubuntu_gtk3.yml @@ -19,9 +19,6 @@ jobs: uses: jwlawson/actions-setup-cmake@v1.13 with: cmake-version: '3.16.x' - - name: update submodule profiles - working-directory: ./resources/profiles - run: git submodule update --init - name: change date in version run: sed -i "s/+UNKNOWN/_$(date '+%F')/" version.inc - name: update clock @@ -30,21 +27,15 @@ jobs: run: sudo apt update - name: install gtk3 glew run: sudo apt install libgtk-3-dev libglew-dev libudev-dev libdbus-1-dev gettext - - name: build deps & slicer - run: ./BuildLinux.sh -ds - - name: make .pot - working-directory: ./build - run: make gettext_make_pot - - name: build tar & appimage - working-directory: ./build - run: src/BuildLinuxImage.sh -i + - name: build deps & slicer, tar & appimage + run: ./BuildLinux.sh -dsi - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: nightly_linux_gtk3.tar path: build/${{ github.event.repository.name }}.tar - name: Upload appimage - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: ${{ github.event.repository.name }}-gtk3.AppImage path: build/${{ github.event.repository.name }}_ubu64.AppImage diff --git a/.github/workflows/ccpp_ubuntu_gtk3_debug.yml b/.github/workflows/ccpp_ubuntu_gtk3_debug.yml index c8c4d69bd55..b9ec06dc550 100644 --- a/.github/workflows/ccpp_ubuntu_gtk3_debug.yml +++ b/.github/workflows/ccpp_ubuntu_gtk3_debug.yml @@ -18,9 +18,6 @@ jobs: uses: jwlawson/actions-setup-cmake@v1.13 with: cmake-version: '3.16.x' - - name: update submodule profiles - working-directory: ./resources/profiles - run: git submodule update --init - name: change date in version run: sed -i "s/+UNKNOWN/_$(date '+%F')/" version.inc - name: update clock @@ -29,21 +26,15 @@ jobs: run: sudo apt update - name: install gtk3 glew run: sudo apt install libgtk-3-dev libglew-dev libudev-dev libdbus-1-dev libssl-dev libcurl4-openssl-dev gettext - - name: build deps & slicer - run: ./BuildLinux.sh -bds - - name: make .pot - working-directory: ./build - run: make gettext_make_pot - - name: build tar & appimage - working-directory: ./build - run: src/BuildLinuxImage.sh -i + - name: build deps & slicer, tar & appimage + run: ./BuildLinux.sh -bdsi - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: nightly_linux_gtk3.tar path: build/${{ github.event.repository.name }}.tar - name: Upload appimage - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: ${{ github.event.repository.name }}-gtk3.AppImage path: build/${{ github.event.repository.name }}_ubu64.AppImage diff --git a/.github/workflows/ccpp_ubuntu_gtk3_rc.yml b/.github/workflows/ccpp_ubuntu_gtk3_rc.yml index 70c07c82277..911373382b0 100644 --- a/.github/workflows/ccpp_ubuntu_gtk3_rc.yml +++ b/.github/workflows/ccpp_ubuntu_gtk3_rc.yml @@ -20,9 +20,6 @@ jobs: uses: jwlawson/actions-setup-cmake@v1.13 with: cmake-version: '3.16.x' - - name: update submodule profiles - working-directory: ./resources/profiles - run: git submodule update --init - name: change date in version run: sed -i "s/+UNKNOWN/_$(date '+%F')/" version.inc - name: update clock @@ -31,21 +28,15 @@ jobs: run: sudo apt update - name: install gtk3 glew run: sudo apt install libgtk-3-dev libglew-dev libudev-dev libdbus-1-dev gettext - - name: build deps & slicer - run: ./BuildLinux.sh -ds - - name: make .pot - working-directory: ./build - run: make gettext_make_pot - - name: build tar & appimage - working-directory: ./build - run: src/BuildLinuxImage.sh -i + - name: build deps & slicer, tar & appimage + run: ./BuildLinux.sh -dsi - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: rc_linux_gtk3.tar path: build/${{ github.event.repository.name }}.tar - name: Upload appimage - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: rc-${{ github.event.repository.name }}-gtk3.AppImage path: build/${{ github.event.repository.name }}_ubu64.AppImage diff --git a/.github/workflows/ccpp_ubuntu_rc.yml b/.github/workflows/ccpp_ubuntu_rc.yml index a8412e7a131..0d935098a48 100644 --- a/.github/workflows/ccpp_ubuntu_rc.yml +++ b/.github/workflows/ccpp_ubuntu_rc.yml @@ -18,9 +18,6 @@ jobs: uses: jwlawson/actions-setup-cmake@v1.13 with: cmake-version: '3.16.x' - - name: update submodule profiles - working-directory: ./resources/profiles - run: git submodule update --init - name: change date in version run: sed -i "s/+UNKNOWN//" version.inc - name: update clock @@ -29,21 +26,15 @@ jobs: run: sudo apt update - name: install gtk2 glew run: sudo apt install libgtk2.0-dev libglew-dev libudev-dev libdbus-1-dev gettext - - name: build deps & slicer - run: ./BuildLinux.sh -dgs - - name: make .pot - working-directory: ./build - run: make gettext_make_pot - - name: build tar & appimage - working-directory: ./build - run: src/BuildLinuxImage.sh -i + - name: build deps & slicer, tar & appimage + run: ./BuildLinux.sh -dgsi - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: rc_linux_gtk2.tar path: build/${{ github.event.repository.name }}.tar - name: Upload appimage - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: rc-${{ github.event.repository.name }}-gtk2.AppImage path: build/${{ github.event.repository.name }}_ubu64.AppImage diff --git a/.github/workflows/ccpp_win.yml b/.github/workflows/ccpp_win.yml index 6ede51d046f..414d8d86af3 100644 --- a/.github/workflows/ccpp_win.yml +++ b/.github/workflows/ccpp_win.yml @@ -99,7 +99,7 @@ jobs: # shell: cmd # run: '"C:/Program Files/7-Zip/7z.exe" a -tzip nightly.zip *' - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: nightly_win64 path: build/package/ diff --git a/.github/workflows/ccpp_win_debug.yml b/.github/workflows/ccpp_win_debug.yml index fe6abf9cb46..f17b973d9be 100644 --- a/.github/workflows/ccpp_win_debug.yml +++ b/.github/workflows/ccpp_win_debug.yml @@ -69,7 +69,7 @@ jobs: cmake .. -G "Visual Studio 16 2019" -A x64 msbuild /m ALL_BUILD.vcxproj - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: deps_win path: ./deps/build/destdir/ @@ -160,7 +160,7 @@ jobs: # shell: cmd # run: '"C:/Program Files/7-Zip/7z.exe" a -tzip nightly.zip *' - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: nightly_win64_debug path: build/package/ diff --git a/.github/workflows/ccpp_win_deps.yml b/.github/workflows/ccpp_win_deps.yml index 9155f24fd8f..fdb790c9f2d 100644 --- a/.github/workflows/ccpp_win_deps.yml +++ b/.github/workflows/ccpp_win_deps.yml @@ -20,7 +20,7 @@ jobs: cmake .. -G "Visual Studio 16 2019" -A x64 msbuild /m ALL_BUILD.vcxproj - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: deps_win path: ./deps/build/destdir/ @@ -112,7 +112,7 @@ jobs: # shell: cmd # run: '"C:/Program Files/7-Zip/7z.exe" a -tzip nightly.zip *' - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: nightly_win64 path: build/package/ diff --git a/.github/workflows/ccpp_win_rc.yml b/.github/workflows/ccpp_win_rc.yml index ea5f0563844..25691de7966 100644 --- a/.github/workflows/ccpp_win_rc.yml +++ b/.github/workflows/ccpp_win_rc.yml @@ -99,7 +99,7 @@ jobs: # shell: cmd # run: '"C:/Program Files/7-Zip/7z.exe" a -tzip nightly.zip *' - name: Upload artifact - uses: actions/upload-artifact@v1.0.0 + uses: actions/upload-artifact@v4.0.0 with: name: rc_win64 path: build/package/ diff --git a/src/platform/msw/Slic3r.rc.in b/src/platform/msw/Slic3r.rc.in index 3daf56ba9aa..83c10a5fca3 100644 --- a/src/platform/msw/Slic3r.rc.in +++ b/src/platform/msw/Slic3r.rc.in @@ -12,7 +12,7 @@ PRODUCTVERSION @SLIC3R_RC_VERSION@ VALUE "ProductName", "@SLIC3R_APP_NAME@" VALUE "ProductVersion", "@SLIC3R_BUILD_ID@" VALUE "InternalName", "@SLIC3R_APP_NAME@" - VALUE "LegalCopyright", "Copyright \251 2018-2022 Remi Durand, \251 2016-2022 Prusa Research, \251 2011-2018 Alessandro Ranellucci" + VALUE "LegalCopyright", "Copyright \251 2018-2023 Remi Durand, \251 2016-2023 Prusa Research, \251 2011-2018 Alessandro Ranellucci" VALUE "OriginalFilename", "slic3r.exe" } } diff --git a/src/platform/msw/gcodeviewer.rc.in b/src/platform/msw/gcodeviewer.rc.in index 758f9641cf7..efe5b182e84 100644 --- a/src/platform/msw/gcodeviewer.rc.in +++ b/src/platform/msw/gcodeviewer.rc.in @@ -12,7 +12,7 @@ PRODUCTVERSION @SLIC3R_RC_VERSION@ VALUE "ProductName", "@GCODEVIEWER_APP_NAME@" VALUE "ProductVersion", "@SLIC3R_BUILD_ID@" VALUE "InternalName", "@GCODEVIEWER_APP_NAME@" - VALUE "LegalCopyright", "Copyright \251 2019-2022 Durand Remi, \251 2016-2022 Prusa Research, \251 2018-2021 Joseph Lenox, \251 2011-2018 Alessandro Ranellucci" + VALUE "LegalCopyright", "Copyright \251 2019-2023 Durand Remi, \251 2016-2023 Prusa Research, \251 2018-2021 Joseph Lenox, \251 2011-2018 Alessandro Ranellucci" VALUE "OriginalFilename", "@GCODEVIEWER_APP_CMD@.exe" } } diff --git a/src/platform/osx/BuildMacOSImage.sh.in b/src/platform/osx/BuildMacOSImage.sh.in index 5ec5e1dd50b..0c0bc6c2ccf 100644 --- a/src/platform/osx/BuildMacOSImage.sh.in +++ b/src/platform/osx/BuildMacOSImage.sh.in @@ -11,87 +11,66 @@ # 10 Mar 2024, wschadow, added options # -while getopts ":ihag" opt; do +export ROOT=`pwd` +export NCORES=`sysctl -n hw.ncpu` + +while getopts ":ih" opt; do case ${opt} in i ) export BUILD_IMAGE="1" ;; - a ) - export BUILD_APP="1" - ;; - g ) - export FORCE_GTK2="1" - ;; - h ) echo "Usage: ./BuildLinuxImage.sh [-g][-i][-a][-h]" - echo " -g: force gtk2 build" - echo " -i: generate Appimage (optional)" - echo " -a: generate tgz (optional)" - echo " -h: help" + h ) echo "Usage: ./BuildMacOSImage.sh [-i]" + echo " -i: Generate DMG image (optional)" exit 0 ;; esac done -if [[ -n "$BUILD_APP" ]] -then - echo -e "\n[8/9] Generating MacOS app..." - { - # update Info.plist - pushd src - sed "s/+UNKNOWN/_$(date '+%F')/" Info.plist >Info.date.plist - popd - - # create directory and copy into it - if [ -d "pack" ] - then - rm -rf pack/* - fi - mkdir pack - mkdir pack/@SLIC3R_APP_KEY@ - mkdir pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app - mkdir pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents - mkdir pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/_CodeSignature - mkdir pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Frameworks - mkdir pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/MacOS +echo -n "[9/9] Generating MacOS app..." +{ + # update Info.plist + pushd src + sed "s/+UNKNOWN/_$(date '+%F')/" Info.plist >Info.date.plist + popd - # copy Resources - cp -Rf ../resources pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Resources - cp pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Resources/icons/@SLIC3R_APP_KEY@.icns pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/resources/@SLIC3R_APP_KEY@.icns - cp src/Info.date.plist pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Info.plist - echo -n -e 'APPL????\x0a' > PkgInfo - cp PkgInfo pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/PkgInfo - # remove unneeded po from resources - find pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Resources/localization -name "*.po" -type f -delete - find pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Resources/localization -name "*.pot" -type f -delete - find pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Resources/localization -name "*.ini" -type f -delete - find pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Resources/localization -name "*.py" -type f -delete - find pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Resources/localization -name "*.md" -type f -delete - find pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Resources/localization -name "*.txt" -type f -delete - find pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Resources/localization -name "*database.mo" -type f -delete - find pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Resources/localization -name "Slic3r.mo" -type f -delete + # create directory and copy into it + if [ -d "pack" ] + then + rm -rf pack/* + fi + mkdir pack + mkdir pack/@SLIC3R_APP_KEY@ + mkdir pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app + mkdir pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents + mkdir pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/_CodeSignature + mkdir pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Frameworks + mkdir pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/MacOS - # copy bin and do not let it lower case - cp -f src/@SLIC3R_APP_CMD@ pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/MacOS/@SLIC3R_APP_KEY@ - chmod u+x pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/MacOS/@SLIC3R_APP_KEY@ - cp /usr/local/opt/zstd/lib/libzstd.1.dylib pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/MacOS/libzstd.1.dylib + # copy Resources + cp -Rf ../resources pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Resources + cp pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Resources/icons/@SLIC3R_APP_KEY@.icns pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/resources/@SLIC3R_APP_KEY@.icns + cp src/Info.date.plist pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Info.plist + echo -n -e 'APPL????\x0a' > PkgInfo + cp PkgInfo pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/PkgInfo + # remove unneeded po from resources + find pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/Resources/localization -name "*.po" -type f -delete - } &> $ROOT/Build.log # Capture all command output - echo -e "\n ... done\n" -fi + # copy bin and do not let it lower case + cp -f src/@SLIC3R_APP_CMD@ pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/MacOS/@SLIC3R_APP_KEY@ + chmod u+x pack/@SLIC3R_APP_KEY@/@SLIC3R_APP_KEY@.app/Contents/MacOS/@SLIC3R_APP_KEY@ +} &> $ROOT/Build.log # Capture all command output +echo "done" if [[ -n "$BUILD_IMAGE" ]] then -echo -e "\n[9/9] Creating .tgz and DMG Image for distribution..." +echo -n "Creating DMG Image for distribution..." { - - tar -czvf @SLIC3R_APP_KEY@-@SLIC3R_VERSION_FULL@-macOS.tgz pack/@SLIC3R_APP_KEY@ + tar -cvf @SLIC3R_APP_KEY@.tar pack/@SLIC3R_APP_KEY@ # create dmg hdiutil create -ov -fs HFS+ -volname "@SLIC3R_APP_KEY@" -srcfolder "pack/@SLIC3R_APP_KEY@" temp.dmg - hdiutil convert temp.dmg -format UDZO -o @SLIC3R_APP_KEY@-@SLIC3R_VERSION_FULL@-macOS.dmg - rm -f temp.dmg - + hdiutil convert temp.dmg -format UDZO -o @SLIC3R_APP_KEY@.dmg popd } &> $ROOT/Build.log # Capture all command output -echo -e "\n ... done\n" +echo "done" fi diff --git a/src/platform/osx/Info.plist.in b/src/platform/osx/Info.plist.in index e8e2f3fc853..9dc9fe2bad0 100644 --- a/src/platform/osx/Info.plist.in +++ b/src/platform/osx/Info.plist.in @@ -5,7 +5,7 @@ CFBundleExecutable @SLIC3R_APP_KEY@ CFBundleGetInfoString - @SLIC3R_APP_NAME@ Copyright (C) 2011-2020 Alessandro Ranellucci, (C) 2016-2022 Prusa Reseach, (C) 2018-2022 Remi Durand + @SLIC3R_APP_NAME@ Copyright (C) 2011-2019 Alessandro Ranellucci, (C) 2016-2023 Prusa Reseach, (C) 2018-2023 Remi Durand CFBundleIconFile @SLIC3R_APP_KEY@.icns CFBundleName @@ -109,9 +109,37 @@ LSHandlerRank Alternate + + CFBundleTypeExtensions + + bgcode + BGCODE + + CFBundleTypeIconFile + bgcode.icns + CFBundleTypeName + BGCODE + CFBundleTypeRole + Viewer + LISsAppleDefaultForType + + LSHandlerRank + Alternate + + CFBundleURLTypes + + + CFBundleURLName + Slic3r Downloads + CFBundleURLSchemes + + slic3r + + + LSMinimumSystemVersion - 10.10 + 10.12 NSPrincipalClass NSApplication NSHighResolutionCapable diff --git a/src/platform/unix/BuildLinuxImage.sh.in b/src/platform/unix/BuildLinuxImage.sh.in index 1bd6566e294..f7ba3a495fd 100644 --- a/src/platform/unix/BuildLinuxImage.sh.in +++ b/src/platform/unix/BuildLinuxImage.sh.in @@ -19,32 +19,22 @@ else sysctl_bin=sysctl # If not found in sbin, hope fi export ROOT=`pwd` -export NCORES=`nproc` +export NCORES=`"$sysctl_bin" -n hw.ncpu` -while getopts ":ihag" opt; do +while getopts ":ih" opt; do case ${opt} in i ) export BUILD_IMAGE="1" ;; - a ) - export BUILD_APP="1" - ;; - g ) - export FORCE_GTK2="1" - ;; - h ) echo "Usage: ./BuildLinuxImage.sh [-g][-i][-a][-h]" - echo " -g: force gtk2 build" - echo " -i: generate .tgz and Appimage (optional)" - echo " -a: generate app (optional)" - echo " -h: help" + h ) echo "Usage: ./BuildLinuxImage.sh [-i]" + echo " -i: Generate Appimage (optional)" exit 0 ;; esac done -if [[ -n "$BUILD_APP" ]] -then - echo -e "\n[8/9] Generating Linux app ..." +echo -n "[9/9] Generating Linux app..." +#{ # create directory and copy into it if [ -d "package" ] then @@ -56,51 +46,33 @@ then mkdir package/bin # copy Resources - cp -rf ../resources/ package/resources - cp -f src/@SLIC3R_APP_CMD@ package/bin/@SLIC3R_APP_CMD@ - cp -f src/OCCTWrapper.so package/bin - ln -rs package/bin/@SLIC3R_APP_CMD@ package/bin/@GCODEVIEWER_APP_CMD@ + cp -Rf ../resources package/resources + cp -f bin/@SLIC3R_APP_CMD@ package/bin/@SLIC3R_APP_CMD@ # remove unneeded po from resources find package/resources/localization -name "*.po" -type f -delete - find package/resources/localization -name "*.pot" -type f -delete - find package/resources/localization -name "*.ini" -type f -delete - find package/resources/localization -name "*.py" -type f -delete - find package/resources/localization -name "*.md" -type f -delete - find package/resources/localization -name "*.txt" -type f -delete - find package/resources/localization -name "*database*" -type f -delete - find package/resources/localization -name "Slic3r.mo" -type f -delete - + # copy occtwrapper cp src/OCCTWrapper.so package/bin/OCCTWrapper.so # create bin - echo -e '#!/bin/bash\nDIR=$(readlink -f "$0" | xargs dirname)\nexport LD_LIBRARY_PATH="$DIR/bin"\nexec "$DIR/bin/@SLIC3R_APP_CMD@" "$@"' > package/@SLIC3R_APP_CMD@ - chmod ug+x package/@SLIC3R_APP_CMD@ - echo -e '#!/bin/bash\nDIR=$(readlink -f "$0" | xargs dirname)\nexport LD_LIBRARY_PATH="$DIR/bin"\nexec "$DIR/bin/@GCODEVIEWER_APP_CMD@" "$@"' > package/@GCODEVIEWER_APP_CMD@ - chmod ug+x package/@GCODEVIEWER_APP_CMD@ - echo -e "\n... done\n" -fi + echo -e '#!/bin/bash\nDIR=$(readlink -f "$0" | xargs dirname)\nexport LD_LIBRARY_PATH="$DIR/bin"\nexec "$DIR/bin/@SLIC3R_APP_CMD@" "$@"' >@SLIC3R_APP_CMD@ + chmod ug+x @SLIC3R_APP_CMD@ + cp -f @SLIC3R_APP_CMD@ package/@SLIC3R_APP_CMD@ + pushd package + tar -cvf ../@SLIC3R_APP_KEY@.tar . &>/dev/null + popd +#} &> $ROOT/Build.log # Capture all command output +echo "done" if [[ -n "$BUILD_IMAGE" ]] then - echo -e "\n[9/9] Creating .tgz and Appimage for distribution ...\n" - - pushd package > /dev/null - if [[ -z "$FORCE_GTK2" ]] - then - tar -czvf ../@SLIC3R_APP_KEY@-@SLIC3R_VERSION_FULL@-linux-x64-GTK3.tgz . &>/dev/null - else - tar -czvf ../@SLIC3R_APP_KEY@-@SLIC3R_VERSION_FULL@-linux-x64-GTK2.tgz . &>/dev/null - fi - - chmod +x ../src/build_appimage.sh - ../src/build_appimage.sh - popd > /dev/null - if [[ -z "$FORCE_GTK2" ]] - then - mv package/"@SLIC3R_APP_KEY@_ubu64.AppImage" "@SLIC3R_APP_KEY@-@SLIC3R_VERSION_FULL@-linux-x64-GTK3.AppImage" - else - mv package/"@SLIC3R_APP_KEY@_ubu64.AppImage" "@SLIC3R_APP_KEY@-@SLIC3R_VERSION_FULL@-linux-x64-GTK2.AppImage" - fi - echo -e "\n... done\n" +echo -n "Creating Appimage for distribution..." +#{ + pushd package + chmod +x ../build_appimage.sh + ../build_appimage.sh + popd + mv package/"@SLIC3R_APP_KEY@_ubu64.AppImage" "@SLIC3R_APP_KEY@_ubu64.AppImage" +#} &> $ROOT/Build.log # Capture all command output +echo "done" fi diff --git a/src/platform/unix/build_appimage.sh.in b/src/platform/unix/build_appimage.sh.in index 42810da8e0c..7ef56325fc3 100644 --- a/src/platform/unix/build_appimage.sh.in +++ b/src/platform/unix/build_appimage.sh.in @@ -18,8 +18,8 @@ APP_IMAGE="@SLIC3R_APP_KEY@_ubu64.AppImage" wget ${APPIMAGETOOLURL} -O ../appimagetool.AppImage chmod +x ../appimagetool.AppImage -sed -i -e 's#/usr#././#g' bin/@SLIC3R_APP_NAME@ -cp @SLIC3R_APP_CMD@ AppRun +sed -i -e 's#/usr#././#g' bin/@SLIC3R_APP_CMD@ +mv @SLIC3R_APP_CMD@ AppRun chmod +x AppRun cp resources/icons/@SLIC3R_APP_KEY@_192px.png @SLIC3R_APP_KEY@.png @@ -35,7 +35,7 @@ Categories=Utility; MimeType=model/stl;application/vnd.ms-3mfdocument;application/prs.wavefront-obj;application/x-amf; EOF + ../appimagetool.AppImage . mv @SLIC3R_APP_KEY@-x86_64.AppImage ${APP_IMAGE} chmod +x ${APP_IMAGE} -rm -fr usr \ No newline at end of file