]> git.saurik.com Git - apple/xnu.git/blobdiff - osfmk/conf/Makefile.ppc
xnu-1504.9.17.tar.gz
[apple/xnu.git] / osfmk / conf / Makefile.ppc
index eca5968859fc29f0f3e7fcb9feea521ee66e0189..35d7f0dd2a3f6a28b5980a2a9161b341d9e2855f 100644 (file)
@@ -2,22 +2,75 @@
 #BEGIN Machine dependent Makefile fragment for ppc
 ######################################################################
 
+#
+# ppc should be (mostly) warning free
+#
+CFLAGS+= $(WERROR)
+CWARNFLAGS= $(filter-out -Wbad-function-cast, $(CWARNFLAGS_STD))
+
+# Objects that don't compile cleanly:
+OBJS_NO_WERROR=                         \
+       UNDRequest.o                    \
+       machine_routines.o              \
+       db_examine.o                    \
+       db_macro.o                      \
+       db_print.o                      \
+       db_sym.o                        \
+       db_variables.o                  \
+       ppc_disasm.o                    \
+       db_disasm.o                     \
+       db_trace.o                      \
+       db_low_trace.o                  \
+       gssd_mach.o                     \
+       kdp_machdep.o
+
+OBJS_WERROR=$(filter-out $(OBJS_NO_WERROR),$(OBJS))
+
+$(OBJS_WERROR):         WERROR=-Werror
+
+export bsd_vm.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export device_vm.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export memory_object.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export vm32_user.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export vm_apple_protect.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export vm_debug.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export vm_external.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export vm_fault.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export vm_init.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export vm_kern.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export vm_map.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export vm_object.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export vm_pageout.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export vm_purgeable.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export vm_resident.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export vm_shared_region.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export vm_swapfile_pager.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export vm_user.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+
+export default_pager.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export dp_backing_store.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+export dp_memory_object.o_CFLAGS_ADD=-Werror -Wshorten-64-to-32
+
 #
 # KDB support
 #
 
 makedis: $(SRCROOT)/osfmk/ddb/makedis.c
-       $(CC) -o $@ $<
+       $(HOST_CC) -Werror -Wall -o $@ $<
 
 ppc_disasm.o_CFLAGS_ADD = -Dperror=db_printf -Dexit=db_error -Dmalloc=db_disasm_malloc
 
-ppc_disasm : $(SRCROOT)/osfmk/ppc/ppc_disasm.i makedis
+ppc_disasm.c ppc_disasm.h : $(SRCROOT)/osfmk/ppc/ppc_disasm.i makedis
        ./makedis -w -h ./ppc_disasm.h $(SOURCE_DIR)/osfmk/ppc/ppc_disasm.i > ./ppc_disasm.c
 
-ppc_disasm.c ppc_disasm.h : ppc_disasm
 
 db_disasm.o : ppc_disasm.h
 
+# Files that must go in the __HIB segment:
+UNCONFIGURED_HIB_FILES=                              \
+           hibernate_restore.o
+HIB_FILES=$(filter $(UNCONFIGURED_HIB_FILES),$(OBJS))
+
 ######################################################################
 #END   Machine dependent Makefile fragment for ppc
 ######################################################################