Annotation of src/share/mk/bsd.own.mk, Revision 1.182
1.182 ! patrick 1: # $OpenBSD: bsd.own.mk,v 1.181 2016/11/19 14:20:58 tb Exp $
1.7 deraadt 2: # $NetBSD: bsd.own.mk,v 1.24 1996/04/13 02:08:09 thorpej Exp $
3:
1.15 millert 4: # Host-specific overrides
1.7 deraadt 5: .if defined(MAKECONF) && exists(${MAKECONF})
6: .include "${MAKECONF}"
7: .elif exists(/etc/mk.conf)
8: .include "/etc/mk.conf"
1.26 art 9: .endif
1.1 deraadt 10:
1.51 espie 11: # Set `WARNINGS' to `yes' to add appropriate warnings to each compilation
12: WARNINGS?= no
1.15 millert 13: # Set `SKEY' to `yes' to build with support for S/key authentication.
14: SKEY?= yes
1.19 downsj 15: # Set `YP' to `yes' to build with support for NIS/YP.
1.15 millert 16: YP?= yes
1.71 espie 17:
1.182 ! patrick 18: CLANG_ARCH=aarch64
1.173 deraadt 19: GCC3_ARCH=m88k
1.127 deraadt 20:
1.171 deraadt 21: # m88k: ?
1.177 jsg 22: PIE_ARCH=alpha amd64 arm hppa i386 mips64 mips64el powerpc sh sparc64
1.178 kettenis 23: STATICPIE_ARCH=alpha amd64 arm hppa i386 mips64 mips64el powerpc sh sparc64
1.106 drahn 24:
25: .for _arch in ${MACHINE_ARCH}
1.182 ! patrick 26: .if !empty(CLANG_ARCH:M${_arch})
! 27: COMPILER_VERSION?=clang
! 28: .elif !empty(GCC3_ARCH:M${_arch})
1.141 miod 29: COMPILER_VERSION?=gcc3
30: .else
1.101 espie 31: COMPILER_VERSION?=gcc4
1.72 mickey 32: .endif
1.121 pascal 33:
1.151 deraadt 34: .if !empty(STATICPIE_ARCH:M${_arch})
1.154 kettenis 35: STATICPIE?=-pie
1.151 deraadt 36: .endif
37:
1.121 pascal 38: .if !empty(PIE_ARCH:M${_arch})
1.137 miod 39: NOPIE_FLAGS?=-fno-pie
40: NOPIE_LDFLAGS?=-nopie
41: PIE_DEFAULT?=${DEFAULT_PIE_DEF}
1.121 pascal 42: .else
1.137 miod 43: NOPIE_FLAGS?=
44: PIE_DEFAULT?=
1.121 pascal 45: .endif
1.106 drahn 46: .endfor
1.32 niklas 47:
1.1 deraadt 48: # where the system object and source trees are kept; can be configurable
49: # by the user in case they want them in ~/foosrc and ~/fooobj, for example
50: BSDSRCDIR?= /usr/src
51: BSDOBJDIR?= /usr/obj
52:
53: BINGRP?= bin
1.9 deraadt 54: BINOWN?= root
1.1 deraadt 55: BINMODE?= 555
56: NONBINMODE?= 444
1.28 espie 57: DIRMODE?= 755
1.1 deraadt 58:
1.18 tholo 59: SHAREDIR?= /usr/share
60: SHAREGRP?= bin
61: SHAREOWN?= root
62: SHAREMODE?= ${NONBINMODE}
1.1 deraadt 63:
1.105 schwarze 64: MANDIR?= /usr/share/man/man
1.1 deraadt 65: MANGRP?= bin
1.9 deraadt 66: MANOWN?= root
1.1 deraadt 67: MANMODE?= ${NONBINMODE}
68:
69: LIBDIR?= /usr/lib
70: LIBGRP?= ${BINGRP}
71: LIBOWN?= ${BINOWN}
72: LIBMODE?= ${NONBINMODE}
73:
1.119 haesbaer 74: DOCDIR?= /usr/share/doc
1.1 deraadt 75: DOCGRP?= bin
1.9 deraadt 76: DOCOWN?= root
1.119 haesbaer 77: DOCMODE?= ${NONBINMODE}
1.1 deraadt 78:
1.93 espie 79: LOCALEDIR?= /usr/share/locale
80: LOCALEGRP?= wheel
81: LOCALEOWN?= root
82: LOCALEMODE?= ${NONBINMODE}
1.119 haesbaer 83:
84: .if !defined(CDIAGFLAGS)
85: CDIAGFLAGS= -Wall -Wpointer-arith -Wuninitialized -Wstrict-prototypes
1.143 martynas 86: CDIAGFLAGS+= -Wmissing-prototypes -Wunused -Wsign-compare
1.119 haesbaer 87: CDIAGFLAGS+= -Wshadow
1.120 sthen 88: . if ${COMPILER_VERSION} == "gcc4"
89: CDIAGFLAGS+= -Wdeclaration-after-statement
90: . endif
1.119 haesbaer 91: .endif
1.56 espie 92:
1.57 espie 93: # Shared files for system gnu configure, not used yet
94: GNUSYSTEM_AUX_DIR?=${BSDSRCDIR}/share/gnu
1.1 deraadt 95:
1.17 millert 96: INSTALL_COPY?= -c
1.13 niklas 97: .ifndef DEBUG
1.17 millert 98: INSTALL_STRIP?= -s
1.13 niklas 99: .endif
1.12 downsj 100:
1.151 deraadt 101: STATIC?= -static ${STATICPIE}
1.1 deraadt 102:
103: # Define SYS_INCLUDE to indicate whether you want symbolic links to the system
104: # source (``symlinks''), or a separate copy (``copies''); (latter useful
105: # in environments where it's not possible to keep /sys publicly readable)
106: #SYS_INCLUDE= symlinks
1.58 drahn 107:
1.86 pvalchev 108: # pic relocation flags.
1.96 martin 109: .if (${MACHINE_ARCH} == "alpha") || (${MACHINE_ARCH} == "sparc64")
1.100 deraadt 110: PICFLAG?=-fPIC
1.86 pvalchev 111: .else
1.100 deraadt 112: PICFLAG?=-fpic
1.62 art 113: .endif
1.86 pvalchev 114:
1.176 tedu 115: .if ${MACHINE_ARCH} == "sparc64"
1.58 drahn 116: ASPICFLAG=-KPIC
1.121 pascal 117: .endif
118:
1.129 kettenis 119: .if ${MACHINE_ARCH} == "alpha" || ${MACHINE_ARCH} == "powerpc" || \
1.176 tedu 120: ${MACHINE_ARCH} == "sparc64"
1.121 pascal 121: # big PIE
122: DEFAULT_PIE_DEF=-DPIE_DEFAULT=2
123: .else
124: # small pie
125: DEFAULT_PIE_DEF=-DPIE_DEFAULT=1
1.14 rahnds 126: .endif
127:
128: # don't try to generate PROFILED versions of libraries on machines
129: # which don't support profiling.
1.87 miod 130: .if 0
1.14 rahnds 131: NOPROFILE=
1.1 deraadt 132: .endif
1.180 natano 133:
1.181 tb 134: BUILDUSER?= build
135: WOBJGROUP?= wobj
136: WOBJUMASK?= 007
1.31 espie 137:
138: BSD_OWN_MK=Done
1.41 espie 139:
140: .PHONY: spell clean cleandir obj manpages print all \
1.98 espie 141: depend beforedepend afterdepend cleandepend subdirdepend \
1.172 bluhm 142: all cleanman includes \
1.41 espie 143: beforeinstall realinstall maninstall afterinstall install