Skip to content

Instantly share code, notes, and snippets.

@karosLi
Last active March 11, 2022 10:26
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save karosLi/3c7c4101f03ee03330f97a115c72ca0a to your computer and use it in GitHub Desktop.
Save karosLi/3c7c4101f03ee03330f97a115c72ca0a to your computer and use it in GitHub Desktop.
build_static_library
#!/bin/sh
LIB_NAME=ffi
TARGET_NAME=libffi-iOS
PROJECT=libffi.xcodeproj
CONFIGURATION=Release
DEVICE=iphoneos
SIMULATOR=iphonesimulator
FAT=universal
OUTPUT=build
LIBRARY_NAME=lib${LIB_NAME}.a
xcodebuild -sdk ${DEVICE} -configuration ${CONFIGURATION} -target ${TARGET_NAME} -project ${PROJECT} -verbose -arch arm64 -arch armv7s only_active_arch=no
xcodebuild -sdk ${SIMULATOR} -configuration ${CONFIGURATION} -target ${TARGET_NAME} -project ${PROJECT} -verbose -arch x86_64 -arch i386 only_active_arch=no
device_output=${OUTPUT}/${CONFIGURATION}-${DEVICE}
simulator_output=${OUTPUT}/${CONFIGURATION}-${SIMULATOR}
fatlib_output=${OUTPUT}/${CONFIGURATION}-${FAT}
rm -rf "${fatlib_output}"
mkdir -p "${fatlib_output}"
lipo -create -output "${fatlib_output}/${LIBRARY_NAME}" "${device_output}/${LIBRARY_NAME}" "${simulator_output}/${LIBRARY_NAME}"
out_header_dir="${fatlib_output}"
mkdir -p "${headers_dir}"
cp -r "darwin_common/include" "${out_header_dir}"
cp -r "darwin_ios/include" "${out_header_dir}"
open "${fatlib_output}"
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment