diff --git a/.github/workflows/build_app.yml b/.github/workflows/build_app.yml index 0aaa1de..61bff20 100644 --- a/.github/workflows/build_app.yml +++ b/.github/workflows/build_app.yml @@ -1,24 +1,36 @@ -name: build_app +name: Build .app -on: [push, workflow_dispatch] +on: + push: + branches: + - master + - develop + pull_request: + workflow_dispatch: env: SCHEME: AltServer - + jobs: master_deploy: - runs-on: macos-latest + runs-on: macos-12 steps: - name: Checkout project uses: actions/checkout@v2 with: - submodules: recursive - + submodules: recursive + + - name: Setup Xcode + uses: maxim-lobanov/setup-xcode@v1.4.1 + with: + xcode-version: 14.2 + - name: Set environment variables from project settings run: | - function set-env-from-proj { - echo "$1=$(xcodebuild -scheme "AltServer" -showBuildSettings | grep " $1 " | sed "s/[ ]*$1 = //")" >> $GITHUB_ENV + BUILD_SETTINGS=$(xcodebuild -scheme "AltServer" -showBuildSettings) + function set-env-from-proj { + echo "$1=$(echo $BUILD_SETTINGS | grep " $1 " | sed "s/[ ]*$1 = //")" >> $GITHUB_ENV } set-env-from-proj FULL_PRODUCT_NAME set-env-from-proj INSTALL_PATH @@ -27,10 +39,30 @@ jobs: set-env-from-proj PRODUCT_NAME set-env-from-proj PROJECT_NAME + - name: Install OpenSSL + run: | + brew install openssl@3 + LD_LIBRARY_PATH=/usr/local/opt/openssl@3/lib:"${LD_LIBRARY_PATH}" + CPATH=/usr/local/opt/openssl@3/include:"${CPATH}" + PKG_CONFIG_PATH=/usr/local/opt/openssl@3/lib/pkgconfig:"${PKG_CONFIG_PATH}" + export LD_LIBRARY_PATH CPATH PKG_CONFIG_PATH + echo "OPENSSL_LDFLAGS=$(pkg-config openssl --libs)" >> $GITHUB_ENV + - name: Build and install app - shell: bash run: | - xcodebuild -scheme "$SCHEME" install DSTROOT=build/root | xcpretty + xcodebuild -project AltStore.xcodeproj \ + -scheme AltServer \ + -sdk macosx \ + install \ + CODE_SIGNING_REQUIRED=NO \ + AD_HOC_CODE_SIGNING_ALLOWED=YES \ + CODE_SIGNING_ALLOWED=NO \ + DEVELOPMENT_TEAM=XYZ0123456 \ + ORG_IDENTIFIER=com.SideStore \ + DSTROOT=build/root \ + OTHER_LDFLAGS="-L/usr/local/opt/openssl@3/lib $OPENSSL_LDFLAGS" \ + OTHER_CPPFLAGS="-I/usr/local/opt/openssl@3/include" + | xcpretty && exit ${PIPESTATUS[0]} - name: Package app run: | diff --git a/AltStore.xcodeproj/project.pbxproj b/AltStore.xcodeproj/project.pbxproj index d4e4012..d4acb42 100644 --- a/AltStore.xcodeproj/project.pbxproj +++ b/AltStore.xcodeproj/project.pbxproj @@ -880,6 +880,7 @@ buildRules = ( ); dependencies = ( + B3991616295FA96300136B2C /* PBXTargetDependency */, BFF7C90E257844C900E55F36 /* PBXTargetDependency */, 0380808C28C6E10300C653E1 /* PBXTargetDependency */, ); @@ -1208,6 +1209,10 @@ target = BF45872A2298D31600BD7491 /* libimobiledevice */; targetProxy = 0380808B28C6E10300C653E1 /* PBXContainerItemProxy */; }; + B3991616295FA96300136B2C /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + productRef = B3991615295FA96300136B2C /* AltSign-Dynamic */; + }; BFF7C90E257844C900E55F36 /* PBXTargetDependency */ = { isa = PBXTargetDependency; target = BFF7C903257844C900E55F36 /* AltXPC */; @@ -1254,6 +1259,7 @@ "\"PACKAGE_STRING=\\\"AltServer 1.0\\\"\"", ); HEADER_SEARCH_PATHS = ( + "$(inherited)", "\"$(SRCROOT)/Dependencies/AltSign/Dependencies/ldid/libplist/include\"", "\"$(SRCROOT)/Dependencies/libimobiledevice\"", "\"$(SRCROOT)/Dependencies/libimobiledevice/include\"", @@ -1308,6 +1314,7 @@ "\"PACKAGE_STRING=\\\"AltServer 1.0\\\"\"", ); HEADER_SEARCH_PATHS = ( + "$(inherited)", "\"$(SRCROOT)/Dependencies/AltSign/Dependencies/ldid/libplist/include\"", "\"$(SRCROOT)/Dependencies/libimobiledevice\"", "\"$(SRCROOT)/Dependencies/libimobiledevice/include\"", @@ -1355,6 +1362,7 @@ ); GCC_WARN_INHIBIT_ALL_WARNINGS = YES; HEADER_SEARCH_PATHS = ( + "\"$(SRCROOT)/Dependencies/AltSign/Dependencies/libzip/xcode\"", "\"$(SRCROOT)/Dependencies/libplist/include\"", "\"$(SRCROOT)/Dependencies/libimobiledevice\"", "\"$(SRCROOT)/Dependencies/libimobiledevice/include\"", @@ -1363,7 +1371,7 @@ "\"$(SRCROOT)/Dependencies/AltSign/Dependencies/libzip/lib\"", "\"$(SRCROOT)/Dependencies/libplist/libcnary/include\"", "\"${SDKROOT}/usr/include/libxml2\"", - "\"$(SRCROOT)/Dependencies/AltSign/Dependencies/libzip/xcode\"", + "$(inherited)", ); MACOSX_DEPLOYMENT_TARGET = 10.14; PRODUCT_NAME = imobiledevice; @@ -1393,6 +1401,7 @@ ); GCC_WARN_INHIBIT_ALL_WARNINGS = YES; HEADER_SEARCH_PATHS = ( + "\"$(SRCROOT)/Dependencies/AltSign/Dependencies/libzip/xcode\"", "\"$(SRCROOT)/Dependencies/libplist/include\"", "\"$(SRCROOT)/Dependencies/libimobiledevice\"", "\"$(SRCROOT)/Dependencies/libimobiledevice/include\"", @@ -1401,7 +1410,7 @@ "\"$(SRCROOT)/Dependencies/AltSign/Dependencies/libzip/lib\"", "\"$(SRCROOT)/Dependencies/libplist/libcnary/include\"", "\"${SDKROOT}/usr/include/libxml2\"", - "\"$(SRCROOT)/Dependencies/AltSign/Dependencies/libzip/xcode\"", + "$(inherited)", ); MACOSX_DEPLOYMENT_TARGET = 10.14; PRODUCT_NAME = imobiledevice; @@ -1523,6 +1532,10 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)/Dependencies/AltSign/Dependencies/OpenSSL/iphoneos/include\"", + ); IPHONEOS_DEPLOYMENT_TARGET = 12.2; MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; MTL_FAST_MATH = YES; @@ -1585,6 +1598,10 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ( + "$(inherited)", + "\"$(SRCROOT)/Dependencies/AltSign/Dependencies/OpenSSL/iphoneos/include\"", + ); IPHONEOS_DEPLOYMENT_TARGET = 12.2; MTL_ENABLE_DEBUG_INFO = NO; MTL_FAST_MATH = YES; @@ -1763,6 +1780,10 @@ /* End XCRemoteSwiftPackageReference section */ /* Begin XCSwiftPackageProductDependency section */ + B3991615295FA96300136B2C /* AltSign-Dynamic */ = { + isa = XCSwiftPackageProductDependency; + productName = "AltSign-Dynamic"; + }; B3C395FB284F3B2400DA9E2F /* Sparkle */ = { isa = XCSwiftPackageProductDependency; package = B3C395FA284F3B2400DA9E2F /* XCRemoteSwiftPackageReference "Sparkle" */;