-
Notifications
You must be signed in to change notification settings - Fork 163
/
Copy pathinplace.mk
70 lines (61 loc) · 2.61 KB
/
inplace.mk
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# $NetBSD: inplace.mk,v 1.14 2018/08/07 12:04:36 jperkin Exp $
#
# This file should not be included directly. Use USE_FEATURES instead.
#
# This Makefile fragment builds a working copy of libnbcompat inside
# ${WRKDIR}.
#
.include "../../mk/bsd.prefs.mk"
LIBNBCOMPAT_USE_PIC?= no
LIBNBCOMPAT_FILESDIR= ${.CURDIR}/../../pkgtools/libnbcompat/files
LIBNBCOMPAT_SRCDIR= ${WRKDIR}/libnbcompat
CPPFLAGS.nbcompat= -DHAVE_NBCOMPAT_H=1 -I${LIBNBCOMPAT_SRCDIR}
LDFLAGS.nbcompat= -L${LIBNBCOMPAT_SRCDIR}
LDADD.nbcompat= -lnbcompat
.if !empty(LIBNBCOMPAT_USE_PIC:M[Yy][Ee][Ss])
LIBNBCOMPAT_PICDIR= ${WRKDIR}/libnbcompat_pic
CPPFLAGS.nbcompat_pic= -DHAVE_NBCOMPAT_H=1 -I${LIBNBCOMPAT_PICDIR}
LDFLAGS.nbcompat_pic= -L${LIBNBCOMPAT_PICDIR}
LDADD.nbcompat_pic= -lnbcompat
.endif
post-extract: libnbcompat-extract
.PHONY: libnbcompat-extract
libnbcompat-extract:
${RUN} ${CP} -R ${LIBNBCOMPAT_FILESDIR} ${LIBNBCOMPAT_SRCDIR}
${RM} -f ${LIBNBCOMPAT_SRCDIR}/config.guess ${LIBNBCOMPAT_SRCDIR}/config.sub
${LN} -fs ${PKGSRCDIR}/mk/gnu-config/config.guess ${LIBNBCOMPAT_SRCDIR}/config.guess
${LN} -fs ${PKGSRCDIR}/mk/gnu-config/config.sub ${LIBNBCOMPAT_SRCDIR}/config.sub
.if !empty(LIBNBCOMPAT_USE_PIC:M[Yy][Ee][Ss])
${RUN} ${CP} -R ${LIBNBCOMPAT_FILESDIR} ${LIBNBCOMPAT_PICDIR}
${RM} -f ${LIBNBCOMPAT_PICDIR}/config.guess ${LIBNBCOMPAT_PICDIR}/config.sub
${LN} -fs ${PKGSRCDIR}/mk/gnu-config/config.guess ${LIBNBCOMPAT_PICDIR}/config.guess
${LN} -fs ${PKGSRCDIR}/mk/gnu-config/config.sub ${LIBNBCOMPAT_PICDIR}/config.sub
.endif
.if !empty(USE_CROSS_COMPILE:M[yY][eE][sS])
NBCOMPAT_CONFIGURE_ARGS+= --build=${NATIVE_MACHINE_GNU_PLATFORM:Q}
.endif
NBCOMPAT_CONFIGURE_ARGS+= --host=${MACHINE_GNU_PLATFORM:Q}
# The illumos fts(3) implementation is not (as of August 2018) largefile aware
.if ${OPSYS} == "SunOS"
CONFIGURE_ENV+= ac_cv_func_fts_open=no
.endif
pre-configure: libnbcompat-build
.PHONY: libnbcompat-build
libnbcompat-build:
@${STEP_MSG} "Configuring and building libnbcompat"
${RUN} ${_ULIMIT_CMD} \
cd ${LIBNBCOMPAT_SRCDIR} && ${SETENV} \
AWK=${AWK:Q} CC=${CC:Q} CFLAGS=${CFLAGS:M*:Q} \
CPPFLAGS=${CPPFLAGS:M*:Q} \
${CONFIGURE_ENV:NLIBS=*} ${CONFIG_SHELL} \
${CONFIGURE_SCRIPT} ${NBCOMPAT_CONFIGURE_ARGS} && \
${SETENV} ${MAKE_ENV} ${MAKE} -j${MAKE_JOBS:U1:Q}
.if !empty(LIBNBCOMPAT_USE_PIC:M[Yy][Ee][Ss])
@${STEP_MSG} "Configuring and building libnbcompat (PIC version)"
${RUN} ${_ULIMIT_CMD} \
cd ${LIBNBCOMPAT_PICDIR} && ${SETENV} \
${CONFIGURE_ENV:NLIBS=*} CFLAGS=${CFLAGS:Q}" -fPIC" \
${CONFIG_SHELL} \
${CONFIGURE_SCRIPT} ${NBCOMPAT_CONFIGURE_ARGS} && \
${SETENV} ${MAKE_ENV} ${MAKE} -j${MAKE_JOBS:U1:Q}
.endif