Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save yibojiang/9fa096f9462acc49ec396a95daa4619e to your computer and use it in GitHub Desktop.
Save yibojiang/9fa096f9462acc49ec396a95daa4619e to your computer and use it in GitHub Desktop.

Revisions

  1. yibojiang revised this gist Jun 7, 2018. No changes.
  2. @syshen syshen revised this gist Jan 23, 2015. 1 changed file with 9 additions and 0 deletions.
    9 changes: 9 additions & 0 deletions gistfile1.sh
    Original file line number Diff line number Diff line change
    @@ -47,6 +47,15 @@ cp -r "${DEVICE_LIBRARY_PATH}/." "${FRAMEWORK}"

    lipo "${SIMULATOR_LIBRARY_PATH}/${FRAMEWORK_NAME}" "${DEVICE_LIBRARY_PATH}/${FRAMEWORK_NAME}" -create -output "${FRAMEWORK}/${FRAMEWORK_NAME}" | echo

    # For Swift framework, Swiftmodule needs to be copied in the universal framework
    if [ -d "${SIMULATOR_LIBRARY_PATH}/Modules/${FRAMEWORK_NAME}.swiftmodule/" ]; then
    cp -f ${SIMULATOR_LIBRARY_PATH}/Modules/${FRAMEWORK_NAME}.swiftmodule/* "${FRAMEWORK}/Modules/${FRAMEWORK_NAME}.swiftmodule/" | echo
    fi

    if [ -d "${DEVICE_LIBRARY_PATH}/Modules/${FRAMEWORK_NAME}.swiftmodule/" ]; then
    cp -f ${DEVICE_LIBRARY_PATH}/Modules/${FRAMEWORK_NAME}.swiftmodule/* "${FRAMEWORK}/Modules/${FRAMEWORK_NAME}.swiftmodule/" | echo
    fi

    ######################
    # On Release, copy the result to release directory
    ######################
  3. @syshen syshen revised this gist Nov 13, 2014. 1 changed file with 3 additions and 7 deletions.
    10 changes: 3 additions & 7 deletions gistfile1.sh
    Original file line number Diff line number Diff line change
    @@ -42,13 +42,13 @@ cp -r "${DEVICE_LIBRARY_PATH}/." "${FRAMEWORK}"


    ######################
    # Make fat universal binary
    # Make an universal binary
    ######################

    lipo "${SIMULATOR_LIBRARY_PATH}/${FRAMEWORK_NAME}" "${DEVICE_LIBRARY_PATH}/${FRAMEWORK_NAME}" -create -output "${FRAMEWORK}/${FRAMEWORK_NAME}" | echo

    ######################
    # On Release, copy the result to desktop folder
    # On Release, copy the result to release directory
    ######################
    OUTPUT_DIR="${PROJECT_DIR}/Output/${FRAMEWORK_NAME}-${CONFIGURATION}-iphoneuniversal/"

    @@ -57,10 +57,6 @@ mkdir -p "$OUTPUT_DIR"

    cp -r "${FRAMEWORK}" "$OUTPUT_DIR"

    ######################
    # If needed, open the Framework folder
    ######################

    if [ ${REVEAL_ARCHIVE_IN_FINDER} = true ]; then
    open "${UNIVERSAL_LIBRARY_DIR}/"
    open "${OUTPUT_DIR}/"
    fi
  4. @syshen syshen revised this gist Nov 13, 2014. 1 changed file with 2 additions and 6 deletions.
    8 changes: 2 additions & 6 deletions gistfile1.sh
    Original file line number Diff line number Diff line change
    @@ -2,7 +2,7 @@
    # Options
    ######################

    REVEAL_ARCHIVE_IN_FINDER=true
    REVEAL_ARCHIVE_IN_FINDER=false

    FRAMEWORK_NAME="${PROJECT_NAME}"

    @@ -62,9 +62,5 @@ cp -r "${FRAMEWORK}" "$OUTPUT_DIR"
    ######################

    if [ ${REVEAL_ARCHIVE_IN_FINDER} = true ]; then
    if [ "${CONFIGURATION}" == "Release" ]; then
    open "${HOME}/Desktop/${FRAMEWORK_NAME}-${CONFIGURATION}-iphoneuniversal/"
    else
    open "${UNIVERSAL_LIBRARY_DIR}/"
    fi
    open "${UNIVERSAL_LIBRARY_DIR}/"
    fi
  5. @syshen syshen created this gist Nov 13, 2014.
    70 changes: 70 additions & 0 deletions gistfile1.sh
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,70 @@
    ######################
    # Options
    ######################

    REVEAL_ARCHIVE_IN_FINDER=true

    FRAMEWORK_NAME="${PROJECT_NAME}"

    SIMULATOR_LIBRARY_PATH="${BUILD_DIR}/${CONFIGURATION}-iphonesimulator/${FRAMEWORK_NAME}.framework"

    DEVICE_LIBRARY_PATH="${BUILD_DIR}/${CONFIGURATION}-iphoneos/${FRAMEWORK_NAME}.framework"

    UNIVERSAL_LIBRARY_DIR="${BUILD_DIR}/${CONFIGURATION}-iphoneuniversal"

    FRAMEWORK="${UNIVERSAL_LIBRARY_DIR}/${FRAMEWORK_NAME}.framework"


    ######################
    # Build Frameworks
    ######################

    xcodebuild -workspace ${PROJECT_NAME}.xcworkspace -scheme ${PROJECT_NAME} -sdk iphonesimulator -configuration ${CONFIGURATION} clean build CONFIGURATION_BUILD_DIR=${BUILD_DIR}/${CONFIGURATION}-iphonesimulator 2>&1

    xcodebuild -workspace ${PROJECT_NAME}.xcworkspace -scheme ${PROJECT_NAME} -sdk iphoneos -configuration ${CONFIGURATION} clean build CONFIGURATION_BUILD_DIR=${BUILD_DIR}/${CONFIGURATION}-iphoneos 2>&1

    ######################
    # Create directory for universal
    ######################

    rm -rf "${UNIVERSAL_LIBRARY_DIR}"

    mkdir "${UNIVERSAL_LIBRARY_DIR}"

    mkdir "${FRAMEWORK}"


    ######################
    # Copy files Framework
    ######################

    cp -r "${DEVICE_LIBRARY_PATH}/." "${FRAMEWORK}"


    ######################
    # Make fat universal binary
    ######################

    lipo "${SIMULATOR_LIBRARY_PATH}/${FRAMEWORK_NAME}" "${DEVICE_LIBRARY_PATH}/${FRAMEWORK_NAME}" -create -output "${FRAMEWORK}/${FRAMEWORK_NAME}" | echo

    ######################
    # On Release, copy the result to desktop folder
    ######################
    OUTPUT_DIR="${PROJECT_DIR}/Output/${FRAMEWORK_NAME}-${CONFIGURATION}-iphoneuniversal/"

    rm -rf "$OUTPUT_DIR"
    mkdir -p "$OUTPUT_DIR"

    cp -r "${FRAMEWORK}" "$OUTPUT_DIR"

    ######################
    # If needed, open the Framework folder
    ######################

    if [ ${REVEAL_ARCHIVE_IN_FINDER} = true ]; then
    if [ "${CONFIGURATION}" == "Release" ]; then
    open "${HOME}/Desktop/${FRAMEWORK_NAME}-${CONFIGURATION}-iphoneuniversal/"
    else
    open "${UNIVERSAL_LIBRARY_DIR}/"
    fi
    fi