]>
Commit | Line | Data |
---|---|---|
5b2abdfb A |
1 | # @(#)Makefile 8.2 (Berkeley) 2/3/94 |
2 | # $FreeBSD: src/lib/libc/Makefile,v 1.31 2001/08/13 21:48:43 peter Exp $ | |
e9ce8d39 | 3 | # |
5b2abdfb | 4 | # Yes, we build everything with -g, and strip it out later... |
e9ce8d39 | 5 | # |
3d9156a7 A |
6 | # -faltivec now disables inlining, so we can't use it globally. Fortunately, |
7 | # only two files need altivec support, so we use file-specific CFLAGS to add | |
8 | # the option when needed. | |
9 | # | |
5b2abdfb A |
10 | LIB=c |
11 | SHLIB_MAJOR= 1 | |
12 | SHLIB_MINOR= 0 | |
34e8f829 A |
13 | |
14 | .include <CoreOS/Standard/Commands.mk> | |
15 | .include <CoreOS/Standard/Variables.mk> | |
16 | ||
17 | .if !empty(MACHINE_ARCH:M*64) | |
8e029c65 A |
18 | LP64 = 1 |
19 | .endif | |
b5d655f7 A |
20 | # RC_TARGET_CONFIG may not be set, so default to MacOSX (which is good enough |
21 | # for installsrc to autopatch all files). | |
22 | .ifndef RC_TARGET_CONFIG | |
23 | RC_TARGET_CONFIG = MacOSX | |
24 | .endif | |
25 | ||
34e8f829 A |
26 | # Use default compiler, so comment out OTHERCC |
27 | #OTHERCC = gcc-4.0 | |
28 | # HOSTCC is the compiler on the local host, so we need to unset any SDKROOT | |
29 | # to before calling PATH_OF_COMMAND | |
30 | .ifdef OTHERCC | |
31 | MYCC != ${PATH_OF_COMMAND} ${OTHERCC} | |
32 | HOSTCC != export -n SDKROOT && ${PATH_OF_COMMAND} ${OTHERCC} | |
33 | .else | |
34 | MYCC = ${CC} | |
35 | HOSTCC != export -n SDKROOT && ${PATH_OF_COMMAND} cc | |
36 | .endif | |
37 | GCC_VERSION != ${MYCC} -dumpversion | ${SED} -e 's/^\([^.]*\.[^.]*\).*/\1/' | |
38 | GCC_42 != ${PERL} -e "print ($(GCC_VERSION) >= 4.2 ? 'YES' : 'NO')" | |
b5d655f7 | 39 | |
59e0d9fe | 40 | .ifdef ALTLIBCHEADERS |
3d9156a7 | 41 | INCLUDEDIR = ${ALTLIBCHEADERS} |
224c7076 | 42 | LIBCFLAGS += -I${INCLUDEDIR} |
b5d655f7 A |
43 | .else # !ALTLIBCHEADERS |
44 | INCLUDEDIR = ${SDKROOT}/usr/include | |
45 | .endif # ALTLIBCHEADERS | |
224c7076 A |
46 | FRAMEWORKS = ${OBJROOT}/Frameworks |
47 | PRIVATEHEADERS = ${FRAMEWORKS}/System.framework/PrivateHeaders | |
b5d655f7 A |
48 | PRIVINC = -I${PRIVATEHEADERS} |
49 | LIBCFLAGS += ${PRIVINC} | |
50 | ||
51 | SYMROOTINC = ${SYMROOT}/include | |
34e8f829 A |
52 | CFLAGS = -g -arch ${CCARCH} ${RC_NONARCH_CFLAGS} -std=gnu99 -fno-common -fno-builtin -Wmost |
53 | CFLAGS += -D__LIBC__ -D__DARWIN_UNIX03=1 -D__DARWIN_64_BIT_INO_T=1 -D__DARWIN_NON_CANCELABLE=1 -D__DARWIN_VERS_1050=1 -D_FORTIFY_SOURCE=0 | |
b5d655f7 A |
54 | CFLAGS += -DNOID -DLIBC_MAJOR=${SHLIB_MAJOR} |
55 | CFLAGS += -I${.OBJDIR} -I${SYMROOTINC} -I${.CURDIR}/include | |
56 | AINC = -g -arch ${CCARCH} ${RC_NONARCH_CFLAGS} | |
57 | AINC += -I${.CURDIR}/${MACHINE_ARCH} ${PRIVINC} | |
58 | .if $(MACHINE_ARCH) != arm | |
59 | CFLAGS += -force_cpusubtype_ALL | |
60 | AINC += -force_cpusubtype_ALL | |
61 | .endif | |
62 | .ifdef SDKROOT | |
63 | CFLAGS += -isysroot '${SDKROOT}' | |
64 | AINC += -isysroot '${SDKROOT}' | |
65 | .endif # SDKROOT | |
66 | ||
67 | .if ${GCC_42} != YES | |
68 | CFLAGS += -no-cpp-precomp | |
69 | AINC += -no-cpp-precomp | |
70 | .endif | |
5b2abdfb A |
71 | CLEANFILES+=tags |
72 | INSTALL_PIC_ARCHIVE= yes | |
73 | PRECIOUSLIB= yes | |
74 | ||
3d9156a7 A |
75 | # workaround for 3649783 |
76 | AINC += -fdollars-in-identifiers | |
77 | ||
5b2abdfb A |
78 | # If these aren't set give it expected defaults |
79 | DSTROOT ?= / | |
80 | OBJROOT ?= . | |
81 | SRCROOT ?= ${.CURDIR} | |
59e0d9fe A |
82 | .ifndef SYMROOT |
83 | SYMROOT = ${.CURDIR}/SYMROOT | |
34e8f829 | 84 | _x_ != ${TEST} -d ${SYMROOT} || ${MKDIR} ${SYMROOT} |
59e0d9fe | 85 | .endif |
5b2abdfb A |
86 | DESTDIR ?= ${DSTROOT} |
87 | MAKEOBJDIR ?= ${OBJROOT} | |
88 | ||
224c7076 A |
89 | # add version string |
90 | SRCS += libc_version.c | |
91 | libc_version.c: | |
b5d655f7 | 92 | ${SDKROOT}/Developer/Makefiles/bin/version.pl Libc > $@ |
224c7076 | 93 | |
b5d655f7 | 94 | .include "Makefile.features" |
5b2abdfb A |
95 | .include "${.CURDIR}/Makefile.inc" |
96 | .include "Makefile.xbs" | |
b5d655f7 | 97 | |
34e8f829 | 98 | MANFILTER = ${UNIFDEF} -t ${UNIFDEFARGS} |
3d9156a7 | 99 | .include <bsd.init.mk> |
5b2abdfb | 100 | .include <bsd.man.mk> |