TESTROOT = ../..
include ${TESTROOT}/include/common.makefile
ifeq ($(ARCH),i386)
ALL_ARCH_OPTIONS = $(patsubst %,-arch %,$(filter-out arm%,$(VALID_ARCHS)) )
SYSROOT = -isysroot $(OSX_SDK)
endif
ifeq ($(ARCH),x86_64)
ALL_ARCH_OPTIONS = $(patsubst %,-arch %,$(filter-out arm%,$(VALID_ARCHS)) )
SYSROOT = -isysroot $(OSX_SDK)
endif
ifeq ($(ARCH),armv7)
ALL_ARCH_OPTIONS = $(patsubst %,-arch %,$(filter arm%,$(VALID_ARCHS)) )
SYSROOT = -isysroot $(IOS_SDK)
endif
ifeq ($(ARCH),arm64)
ALL_ARCH_OPTIONS = $(patsubst %,-arch %,$(filter arm%,$(VALID_ARCHS)) )
SYSROOT = -isysroot $(IOS_SDK)
endif
run: all
all:
gcc $(SYSROOT) ${CCFLAGS} `echo ${ALL_ARCH_OPTIONS}` -dynamiclib foo.c -o libfoo.dylib -install_name libfoo.dylib
${FAIL_IF_BAD_MACHO} libfoo.dylib
if [ x${ARCH} != xppc ]; \
then \
SUB_ARCH=${ARCH}; \
else \
SUB_ARCH=`lipo -info libfoo.dylib | sed 's/.*://;s/ppc64 //;s/.* \(ppc[^ ]*\).*/\1/'`; \
echo SUB_ARCH $$SUB_ARCH; \
if [ x$$SUB_ARCH = xALL ]; \
then \
SUB_ARCH=ppc; \
fi \
fi; \
lipo libfoo.dylib -remove $$SUB_ARCH -output libfoo.dylib
lipo -create libfoo.dylib -arch_blank ${ARCH} -output libfoo.dylib
${CC} ${CCFLAGS} main.c libfoo.dylib -o main
${OTOOL} -L main | grep libfoo | ${FAIL_IF_STDIN}
${PASS_IFF_GOOD_MACHO} main
clean:
rm -rf libfoo.dylib main