]> git.saurik.com Git - apple/xnu.git/blobdiff - libkern/kxld/Makefile
xnu-7195.50.7.100.1.tar.gz
[apple/xnu.git] / libkern / kxld / Makefile
index cc20497a10f4c8f899f4f300bb8589648e1a545f..68f8f6e7d5619f2528d3351850fc61fc5d810c86 100644 (file)
@@ -38,7 +38,7 @@ ifdef INSTALL_LOCATION
 override DSTROOT := $(DSTROOT)/$(INSTALL_LOCATION)
 endif
 
-PRODUCT_TYPE ?= DYLIB
+PRODUCT_TYPE ?= ALL
 
 HDRDST=$(DSTROOT)/usr/local/include
 DYLIBDST=$(DSTROOT)/usr/lib/system
@@ -57,6 +57,9 @@ LIBKXLDDST_ARCHIVE=$(ARCHIVEDST)/$(LIBKXLD_ARCHIVE)
 TESTSRC=$(SRCROOT)/tests
 TESTDST=./BUILD/tests
 
+# Build both the dylib and archive
+LIBKXLDDST_ALL=$(LIBKXLDDST_DYLIB) $(LIBKXLDDST_ARCHIVE)
+
 # Flags
 ifdef SDKROOT
        SDK_DIR := $(shell xcodebuild -version -sdk $(SDKROOT) Path)
@@ -66,6 +69,7 @@ ifeq ($(strip $(SDK_DIR)),)
        SDK_DIR := /
 endif
 
+
 DEFINES = -DPRIVATE
 CFLAGS=-std=c99 -Wall -Wextra -Werror -pedantic -Wformat=2 -Wcast-align \
        -Wwrite-strings -Wshorten-64-to-32 -Wshadow -Winit-self -Wpointer-arith \
@@ -84,16 +88,15 @@ endif
 
 # Tools
 CC = xcrun -sdk $(SDK_DIR) clang
-CLANG_ANALYZER = clang --analyze
 LIBTOOL = xcrun -sdk $(SDK_DIR) libtool
 STRIP = xcrun -sdk $(SDK_DIR) strip
 DSYMUTIL = xcrun -sdk $(SDK_DIR) dsymutil
 
 # Files
-HDR_NAMES=kxld.h kxld_types.h
+HDR_NAMES=kxld.h kxld_types.h prelink.h
 OBJ_NAMES=kxld.o kxld_array.o kxld_copyright.o kxld_demangle.o kxld_dict.o \
        kxld_kext.o kxld_object.o kxld_reloc.o kxld_sect.o kxld_seg.o      \
-       kxld_srcversion.o kxld_sym.o kxld_symtab.o kxld_util.o kxld_uuid.o \
+       kxld_srcversion.o kxld_splitinfolc.o kxld_sym.o kxld_symtab.o kxld_util.o kxld_uuid.o \
     kxld_vtable.o kxld_versionmin.o
 
 HDRS=$(addprefix $(HDRSRC)/, $(HDR_NAMES))
@@ -140,6 +143,7 @@ $(LIBKXLDSYM_ARCHIVE): $(LIBKXLDOBJ_ARCHIVE)
        @mkdir -p $(SYMROOT)
        install -c -m 644 $< $@
 
+
 $(LIBKXLDOBJ_DYLIB): $(OBJS)
        $(CC) $(LDFLAGS) -o $@ $^
 
@@ -161,8 +165,7 @@ $(LIBKXLDDST_ARCHIVE): $(LIBKXLDSYM_ARCHIVE)
        @mkdir -p $(ARCHIVEDST)
        install -o 0 -g 0 -c -m 555 $< $@
 
-
-KEXTCOPYOBJS=$(OBJROOT)/kextcopyright.o $(OBJROOT)/kxld_copyright.o $(OBJROOT)/kxld_util.o 
+KEXTCOPYOBJS=$(OBJROOT)/kextcopyright.o $(OBJROOT)/kxld_copyright.o $(OBJROOT)/kxld_util.o
 kextcopyright: $(TESTDST)/kextcopyright
 $(TESTDST)/kextcopyright: $(KEXTCOPYOBJS)
        @mkdir -p $(TESTDST)
@@ -193,12 +196,7 @@ $(TESTDST)/copyrighttest: $(COPYTESTOBJS)
        $(CC) $(ARCHS) $(COPYTESTOBJS) -framework CoreFoundation -framework IOKit -o $(OBJROOT)/copyrighttest
        install -c -m 755 $(OBJROOT)/copyrighttest $@
 
-analyze:
-       @$(CLANG_ANALYZER) $(CFLAGS) $(INCLUDES) $(filter-out WKdm%.c,$(wildcard *.c))
-       @$(CLANG_ANALYZER) $(CFLAGS) $(INCLUDES) -I$(SRCROOT) tests/*.c
-       @rm -f *.plist
-
-clean: 
+clean:
        @rm -rf $(OBJROOT)/*
 
 fullclean:
@@ -211,4 +209,3 @@ endif
 # Automatically build dependency information when .c or .h files change based
 # on implicit rule for .d:.c
 -include $(OBJS:.o=.d)
-