clean up Mac
This commit is contained in:
parent
cc5f40fc14
commit
a5a3262c32
7 changed files with 29 additions and 23 deletions
17
.github/workflows/build_mac_arm64.yml
vendored
17
.github/workflows/build_mac_arm64.yml
vendored
|
@ -9,7 +9,7 @@ on:
|
||||||
- SoftFever
|
- SoftFever
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build_win64:
|
build_osx_arm64:
|
||||||
name: Build Mac AppleSilicon
|
name: Build Mac AppleSilicon
|
||||||
runs-on: macos-12
|
runs-on: macos-12
|
||||||
|
|
||||||
|
@ -20,7 +20,7 @@ jobs:
|
||||||
run: |
|
run: |
|
||||||
brew install cmake git gettext zstd
|
brew install cmake git gettext zstd
|
||||||
- run: mkdir -p ${{ github.workspace }}/deps/build_arm64
|
- run: mkdir -p ${{ github.workspace }}/deps/build_arm64
|
||||||
- run: mkdir -p ${{ github.workspace }}/deps/build_arm64/OrcaSlicer_dep_x86_64
|
- run: mkdir -p ${{ github.workspace }}/deps/build_arm64/OrcaSlicer_dep_arm64
|
||||||
|
|
||||||
# - name: build deps
|
# - name: build deps
|
||||||
# id: cache_deps
|
# id: cache_deps
|
||||||
|
@ -48,7 +48,8 @@ jobs:
|
||||||
|
|
||||||
- name: Build studio
|
- name: Build studio
|
||||||
working-directory: ${{ github.workspace }}
|
working-directory: ${{ github.workspace }}
|
||||||
run: ./build_release_macos.sh -s -n -a arm64
|
run: |
|
||||||
|
./build_release_macos.sh -s -n -a arm64
|
||||||
|
|
||||||
- name: Sign app
|
- name: Sign app
|
||||||
working-directory: ${{ github.workspace }}
|
working-directory: ${{ github.workspace }}
|
||||||
|
@ -67,18 +68,20 @@ jobs:
|
||||||
security import $CERTIFICATE_PATH -P $P12_PASSWORD -A -t cert -f pkcs12 -k $KEYCHAIN_PATH
|
security import $CERTIFICATE_PATH -P $P12_PASSWORD -A -t cert -f pkcs12 -k $KEYCHAIN_PATH
|
||||||
security list-keychain -d user -s $KEYCHAIN_PATH
|
security list-keychain -d user -s $KEYCHAIN_PATH
|
||||||
security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k $P12_PASSWORD $KEYCHAIN_PATH
|
security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k $P12_PASSWORD $KEYCHAIN_PATH
|
||||||
codesign --deep --force --verbose --sign "$CERTIFICATE_ID" ${{ github.workspace }}/build_arm64/OrcaSlicer_arm64/OrcaSlicer.app
|
codesign --deep --force --verbose --sign "$CERTIFICATE_ID" ${{ github.workspace }}/build_arm64/OrcaSlicer/OrcaSlicer.app
|
||||||
|
|
||||||
- name: pack app
|
- name: Pack app
|
||||||
working-directory: ${{ github.workspace }}
|
working-directory: ${{ github.workspace }}
|
||||||
run: |
|
run: |
|
||||||
export ver=$(grep '^#define SoftFever_VERSION' ./build_arm64/src/libslic3r/libslic3r_version.h | cut -d ' ' -f3)
|
export ver=$(grep '^#define SoftFever_VERSION' ./build_arm64/src/libslic3r/libslic3r_version.h | cut -d ' ' -f3)
|
||||||
ver="_V${ver//\"}"
|
ver="_V${ver//\"}"
|
||||||
zip -FSrq OrcaSlicer${ver}_nightly_Mac_AppleSilicon.zip ${{ github.workspace }}/build_arm64/OrcaSlicer_arm64/OrcaSlicer.app
|
cd ${{ github.workspace }}/build_arm64/OrcaSlicer
|
||||||
|
zip -FSrq OrcaSlicer${ver}_nightly_Mac_AppleSilicon_signed.zip ./OrcaSlicer.app
|
||||||
|
|
||||||
# (wip: staple failed, error 65)
|
# (wip: staple failed, error 65)
|
||||||
# - name: Notarize the app
|
# - name: Notarize the app
|
||||||
# run: |
|
# run: |
|
||||||
|
# cd ${{ github.workspace }}/build_arm64/OrcaSlicer
|
||||||
# xcrun notarytool store-credentials "notarytool-profile" --apple-id "${{ secrets.APPLE_DEV_ACCOUNT }}" --team-id "${{ secrets.TEAM_ID }}" --password "${{ secrets.APP_PWD }}"
|
# xcrun notarytool store-credentials "notarytool-profile" --apple-id "${{ secrets.APPLE_DEV_ACCOUNT }}" --team-id "${{ secrets.TEAM_ID }}" --password "${{ secrets.APP_PWD }}"
|
||||||
# ditto -c -k --keepParent "OrcaSlicer.app" "OrcaSlicer.zip"
|
# ditto -c -k --keepParent "OrcaSlicer.app" "OrcaSlicer.zip"
|
||||||
# xcrun notarytool submit "OrcaSlicer.zip" --keychain-profile "notarytool-profile" --wait
|
# xcrun notarytool submit "OrcaSlicer.zip" --keychain-profile "notarytool-profile" --wait
|
||||||
|
@ -89,4 +92,4 @@ jobs:
|
||||||
uses: actions/upload-artifact@v3
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: OrcaSlicer_Mac_AppleSilicon
|
name: OrcaSlicer_Mac_AppleSilicon
|
||||||
path: ${{ github.workspace }}/OrcaSlicer*.zip
|
path: ${{ github.workspace }}/build_arm64/OrcaSlicer/OrcaSlicer*.zip
|
10
.github/workflows/build_mac_x64.yml
vendored
10
.github/workflows/build_mac_x64.yml
vendored
|
@ -9,9 +9,9 @@ on:
|
||||||
- SoftFever
|
- SoftFever
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build_win64:
|
build_osx_x86_64:
|
||||||
name: Build Mac Intel
|
name: Build Mac Intel
|
||||||
runs-on: macos-latest
|
runs-on: macos-12
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v3
|
- uses: actions/checkout@v3
|
||||||
|
@ -68,14 +68,14 @@ jobs:
|
||||||
security import $CERTIFICATE_PATH -P $P12_PASSWORD -A -t cert -f pkcs12 -k $KEYCHAIN_PATH
|
security import $CERTIFICATE_PATH -P $P12_PASSWORD -A -t cert -f pkcs12 -k $KEYCHAIN_PATH
|
||||||
security list-keychain -d user -s $KEYCHAIN_PATH
|
security list-keychain -d user -s $KEYCHAIN_PATH
|
||||||
security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k $P12_PASSWORD $KEYCHAIN_PATH
|
security set-key-partition-list -S apple-tool:,apple:,codesign: -s -k $P12_PASSWORD $KEYCHAIN_PATH
|
||||||
codesign --deep --force --verbose --sign "$CERTIFICATE_ID" ${{ github.workspace }}/build_x86_64/OrcaSlicer_x86_64/OrcaSlicer.app
|
codesign --deep --force --verbose --sign "$CERTIFICATE_ID" ${{ github.workspace }}/build_x86_64/OrcaSlicer/OrcaSlicer.app
|
||||||
|
|
||||||
- name: pack app
|
- name: pack app
|
||||||
working-directory: ${{ github.workspace }}
|
working-directory: ${{ github.workspace }}
|
||||||
run: |
|
run: |
|
||||||
export ver=$(grep '^#define SoftFever_VERSION' ./build_x86_64/src/libslic3r/libslic3r_version.h | cut -d ' ' -f3)
|
export ver=$(grep '^#define SoftFever_VERSION' ./build_x86_64/src/libslic3r/libslic3r_version.h | cut -d ' ' -f3)
|
||||||
ver="_V${ver//\"}"
|
ver="_V${ver//\"}"
|
||||||
zip -FSrq OrcaSlicer${ver}_nightly_Mac_Intel.zip ${{ github.workspace }}/build_x86_64/OrcaSlicer_x86_64/OrcaSlicer.app
|
zip -FSrq OrcaSlicer${ver}_nightly_Mac_Intel_signed.zip ${{ github.workspace }}/build_x86_64/OrcaSlicer/OrcaSlicer.app
|
||||||
|
|
||||||
# (wip: staple failed, error 65)
|
# (wip: staple failed, error 65)
|
||||||
# - name: Notarize the app
|
# - name: Notarize the app
|
||||||
|
@ -90,4 +90,4 @@ jobs:
|
||||||
uses: actions/upload-artifact@v3
|
uses: actions/upload-artifact@v3
|
||||||
with:
|
with:
|
||||||
name: OrcaSlicer_Mac_Intel
|
name: OrcaSlicer_Mac_Intel
|
||||||
path: ${{ github.workspace }}/OrcaSlicer*.zip
|
path: ${{ github.workspace }}/build_arm64/OrcaSlicer/OrcaSlicer*.zip
|
|
@ -54,6 +54,8 @@ if (APPLE)
|
||||||
set(CMAKE_INSTALL_RPATH @executable_path/../Frameworks)
|
set(CMAKE_INSTALL_RPATH @executable_path/../Frameworks)
|
||||||
endif()
|
endif()
|
||||||
set(CMAKE_OSX_DEPLOYMENT_TARGET "11.3" CACHE STRING "Minimum OS X deployment version" FORCE)
|
set(CMAKE_OSX_DEPLOYMENT_TARGET "11.3" CACHE STRING "Minimum OS X deployment version" FORCE)
|
||||||
|
SET(CMAKE_XCODE_ATTRIBUTE_PRODUCT_BUNDLE_IDENTIFIER "com.softfever3d.orca-slicer")
|
||||||
|
|
||||||
endif ()
|
endif ()
|
||||||
|
|
||||||
# Proposal for C++ unit tests and sandboxes
|
# Proposal for C++ unit tests and sandboxes
|
||||||
|
@ -706,7 +708,7 @@ elseif (SLIC3R_FHS)
|
||||||
)
|
)
|
||||||
endforeach()
|
endforeach()
|
||||||
elseif (CMAKE_MACOSX_BUNDLE)
|
elseif (CMAKE_MACOSX_BUNDLE)
|
||||||
install(DIRECTORY "${SLIC3R_RESOURCES_DIR}/" DESTINATION "${CMAKE_INSTALL_PREFIX}/OrcaSlicer.app/Contents/resources")
|
# install(DIRECTORY "${SLIC3R_RESOURCES_DIR}/" DESTINATION "${CMAKE_INSTALL_PREFIX}/OrcaSlicer.app/Contents/resources")
|
||||||
else ()
|
else ()
|
||||||
install(FILES src/platform/unix/OrcaSlicer.desktop DESTINATION ${CMAKE_INSTALL_PREFIX}/resources/applications)
|
install(FILES src/platform/unix/OrcaSlicer.desktop DESTINATION ${CMAKE_INSTALL_PREFIX}/resources/applications)
|
||||||
install(DIRECTORY "${SLIC3R_RESOURCES_DIR}/" DESTINATION "${CMAKE_INSTALL_PREFIX}/resources")
|
install(DIRECTORY "${SLIC3R_RESOURCES_DIR}/" DESTINATION "${CMAKE_INSTALL_PREFIX}/resources")
|
||||||
|
|
|
@ -76,10 +76,10 @@ cd $WD
|
||||||
mkdir -p build_$ARCH
|
mkdir -p build_$ARCH
|
||||||
cd build_$ARCH
|
cd build_$ARCH
|
||||||
echo "building studio..."
|
echo "building studio..."
|
||||||
cmake .. -GXcode -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="$DEPS/usr/local" -DCMAKE_INSTALL_PREFIX="$PWD/OrcaSlicer_$ARCH" -DCMAKE_BUILD_TYPE=Release -DCMAKE_MACOSX_RPATH=ON -DCMAKE_INSTALL_RPATH="$DEPS/usr/local" -DCMAKE_MACOSX_BUNDLE=ON -DCMAKE_OSX_ARCHITECTURES=${ARCH}
|
cmake .. -GXcode -DBBL_RELEASE_TO_PUBLIC=1 -DCMAKE_PREFIX_PATH="$DEPS/usr/local" -DCMAKE_INSTALL_PREFIX="$PWD/OrcaSlicer" -DCMAKE_BUILD_TYPE=Release -DCMAKE_MACOSX_RPATH=ON -DCMAKE_INSTALL_RPATH="$DEPS/usr/local" -DCMAKE_MACOSX_BUNDLE=ON -DCMAKE_OSX_ARCHITECTURES=${ARCH}
|
||||||
cmake --build . --config Release --target ALL_BUILD
|
cmake --build . --config Release --target ALL_BUILD
|
||||||
mkdir -p OrcaSlicer_$ARCH
|
mkdir -p OrcaSlicer
|
||||||
cd OrcaSlicer_$ARCH
|
cd OrcaSlicer
|
||||||
rm -r ./OrcaSlicer.app
|
rm -r ./OrcaSlicer.app
|
||||||
cp -pR ../src/Release/OrcaSlicer.app ./OrcaSlicer.app
|
cp -pR ../src/Release/OrcaSlicer.app ./OrcaSlicer.app
|
||||||
resources_path=$(readlink ./OrcaSlicer.app/Contents/Resources)
|
resources_path=$(readlink ./OrcaSlicer.app/Contents/Resources)
|
||||||
|
|
|
@ -102,6 +102,7 @@ endif()
|
||||||
|
|
||||||
# Create a slic3r executable
|
# Create a slic3r executable
|
||||||
# Process mainfests for various platforms.
|
# Process mainfests for various platforms.
|
||||||
|
set(MACOSX_BUNDLE_COPYRIGHT "Copyright(C) 2022-2023 Li Jiang All Rights Reserved")
|
||||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/msw/BambuStudio.rc.in ${CMAKE_CURRENT_BINARY_DIR}/BambuStudio.rc @ONLY)
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/msw/BambuStudio.rc.in ${CMAKE_CURRENT_BINARY_DIR}/BambuStudio.rc @ONLY)
|
||||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/msw/BambuStudio.manifest.in ${CMAKE_CURRENT_BINARY_DIR}/BambuStudio.manifest @ONLY)
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/msw/BambuStudio.manifest.in ${CMAKE_CURRENT_BINARY_DIR}/BambuStudio.manifest @ONLY)
|
||||||
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/osx/Info.plist.in ${CMAKE_CURRENT_BINARY_DIR}/Info.plist @ONLY)
|
configure_file(${CMAKE_CURRENT_SOURCE_DIR}/platform/osx/Info.plist.in ${CMAKE_CURRENT_BINARY_DIR}/Info.plist @ONLY)
|
||||||
|
@ -238,9 +239,9 @@ else ()
|
||||||
if (CMAKE_MACOSX_BUNDLE)
|
if (CMAKE_MACOSX_BUNDLE)
|
||||||
set(BIN_RESOURCES_DIR "${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/OrcaSlicer.app/Contents/Resources")
|
set(BIN_RESOURCES_DIR "${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/OrcaSlicer.app/Contents/Resources")
|
||||||
set(MACOSX_BUNDLE_ICON_FILE Icon.icns)
|
set(MACOSX_BUNDLE_ICON_FILE Icon.icns)
|
||||||
set(MACOSX_BUNDLE_BUNDLE_NAME "Orca Slicer")
|
set(MACOSX_BUNDLE_BUNDLE_NAME "OrcaSlicer")
|
||||||
set(MACOSX_BUNDLE_SHORT_VERSION_STRING ${SoftFever_VERSION})
|
set(MACOSX_BUNDLE_SHORT_VERSION_STRING ${SoftFever_VERSION})
|
||||||
set(MACOSX_BUNDLE_COPYRIGHT "Copyright(C) 2021-2023 Lunkuo All Rights Reserved")
|
set(MACOSX_BUNDLE_COPYRIGHT "Copyright(C) 2022-2023 Li Jiang All Rights Reserved")
|
||||||
endif()
|
endif()
|
||||||
add_custom_command(TARGET OrcaSlicer POST_BUILD
|
add_custom_command(TARGET OrcaSlicer POST_BUILD
|
||||||
COMMAND ln -sfn "${SLIC3R_RESOURCES_DIR}" "${BIN_RESOURCES_DIR}"
|
COMMAND ln -sfn "${SLIC3R_RESOURCES_DIR}" "${BIN_RESOURCES_DIR}"
|
||||||
|
|
|
@ -13,7 +13,7 @@
|
||||||
<key>CFBundleShortVersionString</key>
|
<key>CFBundleShortVersionString</key>
|
||||||
<string>@SLIC3R_APP_NAME@ @SLIC3R_BUILD_ID@</string>
|
<string>@SLIC3R_APP_NAME@ @SLIC3R_BUILD_ID@</string>
|
||||||
<key>CFBundleIdentifier</key>
|
<key>CFBundleIdentifier</key>
|
||||||
<string>com.bbl.slic3r/</string>
|
<string>com.softfever3d.orca-slic3r/</string>
|
||||||
<key>CFBundleInfoDictionaryVersion</key>
|
<key>CFBundleInfoDictionaryVersion</key>
|
||||||
<string>6.0</string>
|
<string>6.0</string>
|
||||||
<key>CFBundlePackageType</key>
|
<key>CFBundlePackageType</key>
|
||||||
|
|
|
@ -236,7 +236,7 @@ namespace instance_check_internal
|
||||||
dbus_uint32_t serial = 0;
|
dbus_uint32_t serial = 0;
|
||||||
const char* sigval = message_text.c_str();
|
const char* sigval = message_text.c_str();
|
||||||
//std::string interface_name = "com.prusa3d.prusaslicer.InstanceCheck";
|
//std::string interface_name = "com.prusa3d.prusaslicer.InstanceCheck";
|
||||||
std::string interface_name = "com.softfever3d.orcaslicer.InstanceCheck.Object" + version;
|
std::string interface_name = "com.softfever3d.orca-slicer.InstanceCheck.Object" + version;
|
||||||
std::string method_name = "AnotherInstance";
|
std::string method_name = "AnotherInstance";
|
||||||
//std::string object_name = "/com/prusa3d/prusaslicer/InstanceCheck";
|
//std::string object_name = "/com/prusa3d/prusaslicer/InstanceCheck";
|
||||||
std::string object_name = "/com/softfever3d/OrcaSlicer/InstanceCheck/Object" + version;
|
std::string object_name = "/com/softfever3d/OrcaSlicer/InstanceCheck/Object" + version;
|
||||||
|
@ -538,7 +538,7 @@ namespace MessageHandlerDBusInternal
|
||||||
" <arg name=\"data\" direction=\"out\" type=\"s\" />"
|
" <arg name=\"data\" direction=\"out\" type=\"s\" />"
|
||||||
" </method>"
|
" </method>"
|
||||||
" </interface>"
|
" </interface>"
|
||||||
" <interface name=\"com.softfever3d.orcaslicer.InstanceCheck\">"
|
" <interface name=\"com.softfever3d.orca-slicer.InstanceCheck\">"
|
||||||
" <method name=\"AnotherInstance\">"
|
" <method name=\"AnotherInstance\">"
|
||||||
" <arg name=\"data\" direction=\"in\" type=\"s\" />"
|
" <arg name=\"data\" direction=\"in\" type=\"s\" />"
|
||||||
" </method>"
|
" </method>"
|
||||||
|
@ -576,7 +576,7 @@ namespace MessageHandlerDBusInternal
|
||||||
{
|
{
|
||||||
const char* interface_name = dbus_message_get_interface(message);
|
const char* interface_name = dbus_message_get_interface(message);
|
||||||
const char* member_name = dbus_message_get_member(message);
|
const char* member_name = dbus_message_get_member(message);
|
||||||
std::string our_interface = "com.softfever3d.OrcaSlicer.InstanceCheck.Object" + wxGetApp().get_instance_hash_string();
|
std::string our_interface = "com.softfever3d.orca-slicer.InstanceCheck.Object" + wxGetApp().get_instance_hash_string();
|
||||||
BOOST_LOG_TRIVIAL(trace) << "DBus message received: interface: " << interface_name << ", member: " << member_name;
|
BOOST_LOG_TRIVIAL(trace) << "DBus message received: interface: " << interface_name << ", member: " << member_name;
|
||||||
if (0 == strcmp("org.freedesktop.DBus.Introspectable", interface_name) && 0 == strcmp("Introspect", member_name)) {
|
if (0 == strcmp("org.freedesktop.DBus.Introspectable", interface_name) && 0 == strcmp("Introspect", member_name)) {
|
||||||
respond_to_introspect(connection, message);
|
respond_to_introspect(connection, message);
|
||||||
|
@ -596,7 +596,7 @@ void OtherInstanceMessageHandler::listen()
|
||||||
int name_req_val;
|
int name_req_val;
|
||||||
DBusObjectPathVTable vtable;
|
DBusObjectPathVTable vtable;
|
||||||
std::string instance_hash = wxGetApp().get_instance_hash_string();
|
std::string instance_hash = wxGetApp().get_instance_hash_string();
|
||||||
std::string interface_name = "com.softfever3d.OrcaSlicer.InstanceCheck.Object" + instance_hash;
|
std::string interface_name = "com.softfever3d.orca-slicer.InstanceCheck.Object" + instance_hash;
|
||||||
std::string object_name = "/com/softfever3d/OrcaSlicer/InstanceCheck/Object" + instance_hash;
|
std::string object_name = "/com/softfever3d/OrcaSlicer/InstanceCheck/Object" + instance_hash;
|
||||||
|
|
||||||
//BOOST_LOG_TRIVIAL(debug) << "init dbus listen " << interface_name << " " << object_name;
|
//BOOST_LOG_TRIVIAL(debug) << "init dbus listen " << interface_name << " " << object_name;
|
||||||
|
|
Loading…
Reference in a new issue