1#
2# makefile for architecture project.
3#
4
5# Defaults typically set by build system
6
7DEFAULT_ARCHS = i386 
8
9RC_ARCHS ?= $(DEFAULT_ARCHS)
10
11SDKROOT ?= /
12
13# map x86_64 -> i386
14SUPPORTED_ARCHS = i386
15CANONICAL_ARCH_x86_64 = i386
16
17
18ARCHS = $(filter $(SUPPORTED_ARCHS),$(sort $(foreach x,$(RC_ARCHS),$(if $(CANONICAL_ARCH_$(x)),$(CANONICAL_ARCH_$(x)),$(x)))))
19
20
21
22# install machine-independent and per-arch headers
23DIRS = . $(ARCHS)
24
25ifeq ($(RC_ProjectName),architecture_Sim)
26	include $(MAKEFILEPATH)/../AppleInternal/Makefiles/Makefile.indigo_prefix
27	HEADER_INSTALL_PREFIX = $(INDIGO_PREFIX)
28else
29	HEADER_INSTALL_PREFIX =
30endif
31
32EXPORT_DSTDIR=$(HEADER_INSTALL_PREFIX)/usr/include/architecture
33LOCAL_DSTDIR=$(HEADER_INSTALL_PREFIX)/System/Library/Frameworks/System.framework/Versions/B/PrivateHeaders/architecture
34
35INSTALL = /usr/bin/install
36INSTALL_FLAGS= -p -m 444
37MKDIRS = /bin/mkdir -p
38
39all:
40
41install:	all installhdrs
42
43copyhdrs: all DSTROOT $(DSTROOT)$(LOCAL_DSTDIR) \
44		$(DSTROOT)$(EXPORT_DSTDIR) 
45	for i in ${DIRS};						\
46	do								\
47	    DSTDIR=$(DSTROOT)$(LOCAL_DSTDIR)/$$i;			\
48	    (cd $$i;							\
49                $(MKDIRS) $$DSTDIR;					\
50		echo Installing *.h;					\
51                install $(INSTALL_FLAGS) *.h $$DSTDIR);			\
52	done
53	for i in ${DIRS};						\
54	do								\
55	    DSTDIR=$(DSTROOT)$(EXPORT_DSTDIR)/$$i;			\
56	    (cd $$i;							\
57                $(MKDIRS) $$DSTDIR;					\
58		echo Installing *.h;					\
59                install $(INSTALL_FLAGS) *.h $$DSTDIR);			\
60	done
61
62installhdrs: copyhdrs
63
64
65
66.PHONY: clean
67
68clean:
69	rm -f *~ */*~ 
70	rm -rf exports
71
72installsrc: SRCROOT $(SRCROOT)
73	pax -rw . ${SRCROOT}
74
75
76$(SRCROOT) $(DSTROOT)$(EXPORT_DSTDIR) $(DSTROOT)$(LOCAL_DSTDIR):
77	$(MKDIRS) $@
78
79.PHONY: SRCROOT DSTROOT
80
81SRCROOT DSTROOT:
82	if [ -n "${$@}" ]; \
83	then \
84		exit 0; \
85	else \
86		echo Must define $@; \
87		exit 1; \
88	fi
89