summaryrefslogtreecommitdiff
path: root/mk/pthread.buildlink2.mk
diff options
context:
space:
mode:
Diffstat (limited to 'mk/pthread.buildlink2.mk')
-rw-r--r--mk/pthread.buildlink2.mk223
1 files changed, 0 insertions, 223 deletions
diff --git a/mk/pthread.buildlink2.mk b/mk/pthread.buildlink2.mk
deleted file mode 100644
index 31487e9524f..00000000000
--- a/mk/pthread.buildlink2.mk
+++ /dev/null
@@ -1,223 +0,0 @@
-# $NetBSD: pthread.buildlink2.mk,v 1.17 2004/06/12 03:19:52 grant Exp $
-#
-# The pthreads strategy for pkgsrc is to "bless" a particular pthread
-# package as the Official Pthread Replacement (OPR). A package that uses
-# pthreads may do one of the following:
-#
-# (1) Simply include pthread.buildlink2.mk. This will make the package
-# use the native pthread library if it's available, or else the OPR
-# package. The value of PTHREAD_TYPE may be checked to be either
-# "native", or the name of the OPR package, or "none", e.g.
-#
-# #
-# # package Makefile stuff...
-# #
-# .include "../../mk/pthread.buildlink2.mk"
-#
-# .if defined(PTHREAD_TYPE) && ${PTHREAD_TYPE} == "none"
-# CONFIGURE_ARGS+= --without-pthreads
-# .endif
-#
-# .include "../../mk/bsd.pkg.mk"
-#
-# Note that it's only safe to check and use the value of PTHREAD_TYPE
-# after all other buildlink2.mk files have been included.
-#
-# (2) Add "native" to PTHREAD_OPTS prior to including
-# pthread.buildlink2.mk. This is like case (1), but we only check for
-# the native pthread library, e.g.,
-#
-# PTHREAD_OPTS+= native
-# #
-# # package Makefile stuff...
-# #
-# .include "../../mk/pthread.buildlink2.mk"
-#
-# .if defined(PTHREAD_TYPE) && ${PTHREAD_TYPE} == "none"
-# CONFIGURE_ARGS+= --without-pthreads
-# .endif
-#
-# .include "../../mk/bsd.pkg.mk"
-#
-# (3) Add "require" to PTHREAD_OPTS prior to including
-# pthread.buildlink2.mk. This will make the package use the native
-# pthread library or else use the OPR package, and will otherwise set
-# PKG_SKIP_REASON if neither can be used, e.g.,
-#
-# PTHREAD_OPTS+= require
-# #
-# # package Makefile stuff...
-# #
-# .include "../../mk/pthread.buildlink2.mk"
-# .include "../../mk/bsd.pkg.mk"
-#
-# (4) Add both "require" and "native" to PTHREAD_OPTS prior to including
-# pthread.buildlink2.mk. This is like case (3), but we only check for
-# the native pthread library, e.g.,
-#
-# PTHREAD_OPTS+= require native
-# #
-# # more package Makefile stuff...
-# #
-# .include "../../mk/pthread.buildlink2.mk"
-# .include "../../mk/bsd.pkg.mk"
-#
-# The case where a package must use either the native pthread library or
-# some pthread package aside from the OPR is a special case of (2), e.g.,
-# if the required pthread package is "ptl2", then:
-#
-# PTHREAD_OPTS+= native
-# #
-# # more package Makefile stuff...
-# #
-# .include "../../mk/pthread.buildlink2.mk"
-#
-# .if defined(PTHREAD_TYPE) && ${PTHREAD_TYPE} == "none"
-# . include "../../devel/ptl2/buildlink2.mk"
-# .endif
-#
-# .include "../../mk/bsd.pkg.mk"
-#
-# A package Makefile may add the word "optional" to PTHREAD_OPTS, which
-# will override the effects of any instance of the word "require". This
-# should _only_ be used by those packages that can be built with or
-# without pthreads _independently_ of whether any of its dependencies need
-# pthreads. Currently, this only only www/mozilla, which uses its own
-# threading library if native pthreads is unavailable, despite that it
-# uses GTK+, which _does_ need pthreads.
-#
-###########################################################################
-#
-# PTHREAD_OPTS represents whether this package requires pthreads, and also
-# whether it needs to be native. It may include the word "require"
-# to denote that a pthreads implementation is required, and may also
-# include the word "native" to denote that only native pthreads are
-# acceptable.
-#
-# _PKG_PTHREAD is the fall-back package pthread implementation use by
-# pthread.buildlink2.mk.
-#
-# _PKG_PTHREAD_COMPAT_PATTERNS matches the ONLY_FOR_PLATFORMS from the
-# Makefile for ${_PKG_PTHREAD}. It's used to see if ${_PKG_PTHREADS}
-# can actually be used to replace a native pthreads.
-#
-_PKG_PTHREAD?= pth
-_PKG_PTHREAD_DEPENDS?= pth>=2.0.0
-_PKG_PTHREAD_PKGSRCDIR?= ../../devel/${_PKG_PTHREAD}
-_PKG_PTHREAD_BUILDLINK2_MK?= ${_PKG_PTHREAD_PKGSRCDIR}/buildlink2.mk
-_PKG_PTHREAD_COMPAT_PATTERNS= *-*-*
-
-.include "../../mk/bsd.prefs.mk"
-
-PTHREAD_OPTS?= # empty
-#
-# We check for a native pthreads implementation by checking for the presence
-# of /usr/include/pthread.h (we might want to make this check stricter).
-#
-.undef PTHREAD_TYPE
-PREFER_NATIVE_PTHREADS?= YES
-.if ${_OPSYS_PTHREAD_AUTO} == "yes"
-PTHREAD_TYPE= automatic
-.elif exists(/usr/include/pthread.h) && ${PREFER_NATIVE_PTHREADS} == "YES"
-PTHREAD_TYPE= native
-.else
-. if !empty(PTHREAD_OPTS:Mnative)
-PTHREAD_TYPE= none
-. if !empty(PTHREAD_OPTS:Mrequire) && empty(PTHREAD_OPTS:Moptional)
-PKG_SKIP_REASON= "${PKGNAME} requires a native pthreads implementation."
-. endif
-. else
-PTHREAD_TYPE= none
-. for _pattern_ in ${_PKG_PTHREAD_COMPAT_PATTERNS}
-. if !empty(MACHINE_PLATFORM:M${_pattern_})
-PTHREAD_TYPE= ${_PKG_PTHREAD}
-. endif
-. endfor
-. if ${PTHREAD_TYPE} == "none" && \
- !empty(PTHREAD_OPTS:Mrequire) && empty(PTHREAD_OPTS:Moptional)
-PKG_SKIP_REASON= "${PKGNAME} requires a working pthreads implementation."
-. endif
-. endif
-.endif
-
-.if !defined(PTHREAD_BUILDLINK2_MK)
-PTHREAD_BUILDLINK2_MK= # defined
-
-.if ${PTHREAD_TYPE} == "native"
-#
-# Link the native pthread libraries and headers into ${BUILDLINK_DIR}.
-#
-BUILDLINK_PREFIX.pthread= /usr
-BUILDLINK_FILES.pthread= include/pthread.h
-BUILDLINK_FILES.pthread+= lib/libpthread.*
-
-BUILDLINK_TARGETS+= pthread-buildlink
-BUILDLINK_TARGETS+= pthread-buildlink-la
-
-# only pass -pthread on platforms known to support it.
-. if ${OPSYS} == "FreeBSD" || ${OPSYS} == "Linux" || \
- ${OPSYS} == "NetBSD"
-BUILDLINK_CFLAGS.pthread= -pthread
-. else
-BUILDLINK_CFLAGS.pthread= # empty
-. endif
-
-# handle systems which have pthreads functions in libc_r such as
-# FreeBSD 5.x, or fall back to libc if we don't find libc_r.
-#
-. if exists(/usr/lib/libpthread.so) || exists(/lib/libpthread.so)
-BUILDLINK_LDFLAGS.pthread= -lpthread
-LIBTOOL_ARCHIVE_UNTRANSFORM_SED+= \
- -e "s|${BUILDLINK_PREFIX.pthread}/lib/libpthread.la|-lpthread|g" \
- -e "s|${LOCALBASE}/lib/libpthread.la|-lpthread|g"
-. else
-. if exists(/usr/lib/libc_r.so)
-BUILDLINK_LDFLAGS.pthread= -lc_r
-LIBTOOL_ARCHIVE_UNTRANSFORM_SED+= \
- -e "s|${BUILDLINK_PREFIX.pthread}/lib/libpthread.la|-lc_r|g" \
- -e "s|${LOCALBASE}/lib/libpthread.la|-lc_r|g"
-. else
-BUILDLINK_LDFLAGS.pthread= # empty
-LIBTOOL_ARCHIVE_UNTRANSFORM_SED+= \
- -e "s|${BUILDLINK_PREFIX.pthread}/lib/libpthread.la||g" \
- -e "s|${LOCALBASE}/lib/libpthread.la||g"
-. endif
-. endif
-
-pthread-buildlink: _BUILDLINK_USE
-
-pthread-buildlink-la:
- ${_PKG_SILENT}${_PKG_DEBUG} \
- lafile="${BUILDLINK_DIR}/lib/libpthread.la"; \
- libpattern="${BUILDLINK_PREFIX.pthread}/lib/libpthread.*"; \
- ${BUILDLINK_FAKE_LA}
-
-.elif ${PTHREAD_TYPE} == "${_PKG_PTHREAD}"
-. if exists(${_PKG_PTHREAD_BUILDLINK2_MK})
-. if !empty(_PKG_PTHREAD_DEPENDS)
-BUILDLINK_DEPENDS.${_PKG_PTHREAD}= ${_PKG_PTHREAD_DEPENDS}
-. endif
-BUILDLINK_PREFIX.pthread= ${BUILDLINK_PREFIX.${_PKG_PTHREAD}}
-BUILDLINK_CFLAGS.pthread= ${BUILDLINK_CFLAGS.${_PKG_PTHREAD}}
-BUILDLINK_LDFLAGS.pthread= -lpthread
-. include "${_PKG_PTHREAD_BUILDLINK2_MK}"
-. else
-PKG_SKIP_REASON= "${PKGNAME} needs pthreads, but ${_PKG_PTHREAD_BUILDLINK2_MK} is missing."
-. endif
-
-.elif ${PTHREAD_TYPE} == "automatic"
-BUILDLINK_PREFIX.pthread= /usr
-
-.endif
-
-# Define user-visible PTHREAD_CFLAGS and PTHREAD_LDFLAGS as compiler
-# options used to compile/link pthreaded code.
-#
-PTHREAD_CFLAGS= ${BUILDLINK_CFLAGS.pthread}
-PTHREAD_LDFLAGS=${BUILDLINK_LDFLAGS.pthread}
-
-PTHREADBASE= ${BUILDLINK_PREFIX.pthread}
-CONFIGURE_ENV+= PTHREADBASE=${PTHREADBASE}
-MAKE_ENV+= PTHREADBASE=${PTHREADBASE}
-
-.endif # PTHREAD_BUILDLINK2_MK