summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mk/buildlink2/bsd.buildlink2.mk143
1 files changed, 49 insertions, 94 deletions
diff --git a/mk/buildlink2/bsd.buildlink2.mk b/mk/buildlink2/bsd.buildlink2.mk
index 27f5080fd80..0edfb0edc74 100644
--- a/mk/buildlink2/bsd.buildlink2.mk
+++ b/mk/buildlink2/bsd.buildlink2.mk
@@ -1,4 +1,4 @@
-# $NetBSD: bsd.buildlink2.mk,v 1.90.4.7 2003/08/16 09:08:50 jlam Exp $
+# $NetBSD: bsd.buildlink2.mk,v 1.90.4.8 2003/08/16 09:25:36 jlam Exp $
#
# An example package buildlink2.mk file:
#
@@ -56,6 +56,11 @@ CONFIGURE_ENV+= BUILDLINK_DIR="${BUILDLINK_DIR}"
MAKE_ENV+= BUILDLINK_DIR="${BUILDLINK_DIR}"
CONFIGURE_ENV+= BUILDLINK_X11_DIR="${BUILDLINK_X11_DIR}"
MAKE_ENV+= BUILDLINK_X11_DIR="${BUILDLINK_X11_DIR}"
+_BLNK_CPPFLAGS= -I${LOCALBASE}/include
+_BLNK_LDFLAGS= -L${LOCALBASE}/lib
+.if ${_USE_RPATH} == "yes"
+_BLNK_LDFLAGS+= -Wl,${_OPSYS_RPATH_NAME}${LOCALBASE}/lib
+.endif
_BLNK_OPSYS= ${OPSYS}
BUILDLINK_SHELL?= ${SH}
@@ -81,17 +86,49 @@ MAKE_ENV+= BUILDLINK_CACHE_ALL=yes
. endif
.endfor
+.if defined(USE_X11)
+USE_X11_LINKS?= YES
+. if !empty(USE_X11_LINKS:M[nN][oO])
+. include "../../mk/x11.buildlink2.mk"
+. else
+BUILD_DEPENDS+= x11-links>=0.12:../../pkgtools/x11-links
+_BLNK_X11_DIR= ${LOCALBASE}/share/x11-links
+. endif
+_BLNK_CPPFLAGS+= -I${X11BASE}/include
+_BLNK_LDFLAGS+= -L${X11BASE}/lib
+.if ${_USE_RPATH} == "yes"
+_BLNK_LDFLAGS+= -Wl,${_OPSYS_RPATH_NAME}${X11BASE}/lib
+.endif
+.endif
+
+CONFIGURE_ENV+= BUILDLINK_CPPFLAGS="${_BLNK_CPPFLAGS}"
+MAKE_ENV+= BUILDLINK_CPPFLAGS="${_BLNK_CPPFLAGS}"
+CONFIGURE_ENV+= BUILDLINK_LDFLAGS="${_BLNK_LDFLAGS}"
+MAKE_ENV+= BUILDLINK_LDFLAGS="${_BLNK_LDFLAGS}"
+
+.for FLAG in ${_BLNK_CPPFLAGS}
+. if empty(CFLAGS:M${FLAG})
+CFLAGS+= ${FLAG}
+. endif
+. if empty(CXXFLAGS:M${FLAG})
+CXXFLAGS+= ${FLAG}
+. endif
+. if empty(CPPFLAGS:M${FLAG})
+CPPFLAGS+= ${FLAG}
+. endif
+.endfor
+.for FLAG in ${_BLNK_LDFLAGS}
+. if empty(LDFLAGS:M${FLAG})
+LDFLAGS+= ${FLAG}
+. endif
+.endfor
+
# Prepend ${BUILDLINK_DIR}/bin to the PATH so that the wrappers are found
# first when searching for executables.
#
PATH:= ${BUILDLINK_DIR}/bin:${PATH}
-# BUILDLINK_DEPENDS contains the list of packages for which we add
-# dependencies.
-#
-BUILDLINK_DEPENDS= ${BUILDLINK_PACKAGES}
-
-.for _pkg_ in ${BUILDLINK_DEPENDS}
+.for _pkg_ in ${BUILDLINK_PACKAGES}
#
# Add the proper dependency on each package pulled in by buildlink2.mk
# files. BUILDLINK_DEPMETHOD.<pkg> contains a list of either "full" or
@@ -114,9 +151,6 @@ ${_BUILDLINK_DEPMETHOD.${_pkg_}}+= \
${_depends_}:${BUILDLINK_PKGSRCDIR.${_pkg_}}
. endfor
. endif
-.endfor
-
-.for _pkg_ in ${BUILDLINK_PACKAGES}
#
# BUILDLINK_PLIST_CMD.<pkg> is a sequence of shell commands that extracts
# a list of all of the files installed by <pkg>. This list is relative to
@@ -127,85 +161,6 @@ BUILDLINK_PLIST_CMD.${_pkg_}= \
${SED} -n '/File:/s/^[ ]*File:[ ]*//p'
.endfor
-# Pass the proper -I.../-L.../-Wl,-R... flags to the compiler and linker.
-
-_BLNK_CPPFLAGS= # empty
-_BLNK_LDFLAGS= # empty
-
-.for _pkg_ in ${BUILDLINK_PACKAGES}
-_BLNK_INCDIR.${_pkg_}= ${BUILDLINK_PREFIX.${_pkg_}}/include
-_BLNK_LIBDIR.${_pkg_}= ${BUILDLINK_PREFIX.${_pkg_}}/lib
-
-. if exists(${_BLNK_INCDIR.${_pkg_}})
-. if empty(_BLNK_CPPFLAGS:M-I${_BLNK_INCDIR.${_pkg_}})
-_BLNK_CPPFLAGS+= -I${_BLNK_INCDIR.${_pkg_}}
-. endif
-. endif
-. if exists(${_BLNK_LIBDIR.${_pkg_}})
-. if empty(_BLNK_LDFLAGS:M-L${_BLNK_LIBDIR.${_pkg_}})
-_BLNK_LDFLAGS+= -L${_BLNK_LIBDIR.${_pkg_}}
-. endif
-. if empty(_BLNK_LDFLAGS:M-L${_BLNK_LIBDIR.${_pkg_}})
-_BLNK_LDFLAGS+= -Wl,${RPATH_FLAG}${BUILDLINK_PREFIX.${_pkg_}}/lib
-. endif
-. endif
-.endfor
-
-.if ${PKG_INSTALLATION_TYPE} == "overwrite"
-. if empty(_BLNK_CPPFLAGS:M-I${LOCALBASE}/include)
-_BLNK_CPPFLAGS+= -I${LOCALBASE}/include
-. endif
-. if empty(_BLNK_LDFLAGS:M-L${LOCALBASE}/lib)
-_BLNK_LDFLAGS+= -L${LOCALBASE}/lib
-. endif
-.endif
-.if empty(_BLNK_LDFLAGS:M-Wl,${RPATH_FLAG}${LOCALBASE}/lib)
-_BLNK_LDFLAGS+= -Wl,${RPATH_FLAG}${LOCALBASE}/lib
-.endif
-
-.if defined(USE_X11)
-USE_X11_LINKS?= YES
-. if !empty(USE_X11_LINKS:M[nN][oO])
-. include "../../mk/x11.buildlink2.mk"
-. else
-BUILD_DEPENDS+= x11-links>=0.12:../../pkgtools/x11-links
-_BLNK_X11_DIR= ${LOCALBASE}/share/x11-links
-. endif
-. if ${PKG_INSTALLATION_TYPE} == "overwrite"
-. if empty(_BLNK_CPPFLAGS:M-I${X11BASE}/include)
-_BLNK_CPPFLAGS+= -I${X11BASE}/include
-. endif
-. if empty(_BLNK_LDFLAGS:M-L${X11BASE}/lib)
-_BLNK_LDFLAGS+= -L${X11BASE}/lib
-. endif
-. endif
-. if empty(_BLNK_LDFLAGS:M-Wl,${RPATH_FLAG}${X11BASE}/lib)
-_BLNK_LDFLAGS+= -Wl,${RPATH_FLAG}${X11BASE}/lib
-. endif
-.endif
-
-CONFIGURE_ENV+= BUILDLINK_CPPFLAGS="${_BLNK_CPPFLAGS}"
-MAKE_ENV+= BUILDLINK_CPPFLAGS="${_BLNK_CPPFLAGS}"
-CONFIGURE_ENV+= BUILDLINK_LDFLAGS="${_BLNK_LDFLAGS}"
-MAKE_ENV+= BUILDLINK_LDFLAGS="${_BLNK_LDFLAGS}"
-
-.for FLAG in ${_BLNK_CPPFLAGS}
-. if empty(CFLAGS:M${FLAG})
-CFLAGS+= ${FLAG}
-. endif
-. if empty(CXXFLAGS:M${FLAG})
-CXXFLAGS+= ${FLAG}
-. endif
-. if empty(CPPFLAGS:M${FLAG})
-CPPFLAGS+= ${FLAG}
-. endif
-.endfor
-.for FLAG in ${_BLNK_LDFLAGS}
-. if empty(LDFLAGS:M${FLAG})
-LDFLAGS+= ${FLAG}
-. endif
-.endfor
-
# Create the buildlink include and lib directories so that the Darwin
# compiler/linker won't complain verbosely (on stdout, even!) when
# those directories are passed as sub-arguments of -I and -L.
@@ -492,16 +447,16 @@ _REPLACE_BUILDLINK= \
# When "unbuildlinkifying" a file, we must remove references to the
# buildlink directories and change any -llib to the proper replacement
# libraries (-lreadline -> -ledit, etc.). Redundant -Idir and -Ldir
-# options are removed to optimize the resulting file.
+# options are removed to optimize the resulting file. Also, prefer the
+# .la files in ${LOCALBASE}/lib over the ones in
+# ${LOCALBASE}/${DEPOT_SUBDIR}/*/lib when creating new .la files. This
+# makes "overwrite" packages look and feel more like they would without
+# the pkgviews integration.
#
LIBTOOL_ARCHIVE_UNTRANSFORM_SED?= # empty
-.if ${PKG_INSTALLATION_TYPE} == "overwrite"
_LIBTOOL_ARCHIVE_UNTRANSFORM_SED= \
-e "s|${LOCALBASE}/${DEPOT_SUBDIR}/[^/]*/|${LOCALBASE}/|g" \
-e "s|${X11BASE}/${DEPOT_SUBDIR}/[^/]*/|${X11BASE}/|g"
-.else
-_LIBTOOL_ARCHIVE_UNTRANSFORM_SED= # empty
-.endif
_LIBTOOL_ARCHIVE_UNTRANSFORM_SED+= ${LIBTOOL_ARCHIVE_UNTRANSFORM_SED}
REPLACE_BUILDLINK_SED?= # empty
_REPLACE_BUILDLINK_SED= ${REPLACE_BUILDLINK_SED}