pkgsrc/devel/pth-syscall/buildlink.mk
skrll 19f99199a4 Add a new variation on the pth package that has --enable-syscall-hard
as part of the configure options. A pth with this option enabled provides
some semblance of pre-emptive threads - enough for things like xmms and
knode to actually work.

Add the necessary glue to pthread.buildlink.mk and appropriate CONFLICT
into pth.

It is hoped that the pkgs that currently use

	-D_POSIX_THREAD_SYSCALL_SOFT=1

will be tested against pth-syscall and changed to use it. The goal is to
be able to add --enable-syscall-hard to devel/pth and retire pth-syscall.
Baby steps...
2002-05-29 08:19:55 +00:00

59 lines
2.4 KiB
Makefile

# $NetBSD: buildlink.mk,v 1.1 2002/05/29 08:19:58 skrll Exp $
#
# This Makefile fragment is included by packages that use pth-syscall.
#
# To use this Makefile fragment, simply:
#
# (1) Optionally define BUILDLINK_DEPENDS.pth-syscall to the dependency pattern
# for the version of pth desired.
# (2) Include this Makefile fragment in the package Makefile,
# (3) Add ${BUILDLINK_DIR}/include to the front of the C preprocessor's header
# search path, and
# (4) Add ${BUILDLINK_DIR}/lib to the front of the linker's library search
# path.
.if !defined(PTH_SYSCALL_BUILDLINK_MK)
PTH_SYSCALL_BUILDLINK_MK= # defined
.include "../../mk/bsd.buildlink.mk"
BUILDLINK_DEPENDS.pth-syscall?= pth-syscall>=1.4.1
DEPENDS+= ${BUILDLINK_DEPENDS.pth-syscall}:../../devel/pth-syscall
EVAL_PREFIX+= BUILDLINK_PREFIX.pth-syscall=pth-syscall
BUILDLINK_PREFIX.pth-syscall_DEFAULT= ${LOCALBASE}
BUILDLINK_FILES.pth-syscall= include/pth.h
BUILDLINK_FILES.pth-syscall+= include/pthread.h
BUILDLINK_FILES.pth-syscall+= lib/libpth.*
BUILDLINK_FILES.pth-syscall+= lib/libpthread.*
BUILDLINK_TARGETS.pth-syscall= pth-syscall-buildlink
BUILDLINK_TARGETS.pth-syscall+= pth-syscall-buildlink-config-wrapper
BUILDLINK_TARGETS.pth-syscall+= pth-syscall-pthread-buildlink-config-wrapper
BUILDLINK_TARGETS+= ${BUILDLINK_TARGETS.pth-syscall}
BUILDLINK_CONFIG.pth-syscall= ${BUILDLINK_PREFIX.pth-syscall}/bin/pth-config
BUILDLINK_CONFIG_WRAPPER.pth-syscall= ${BUILDLINK_DIR}/bin/pth-config
REPLACE_BUILDLINK_SED+= \
-e "s|${BUILDLINK_CONFIG_WRAPPER.pth-syscall}|${BUILDLINK_CONFIG.pth-syscall}|g"
BUILDLINK_CONFIG.pth-syscall-pthread= ${BUILDLINK_PREFIX.pth-syscall}/bin/pthread-config
BUILDLINK_CONFIG_WRAPPER.pth-syscall-pthread= ${BUILDLINK_DIR}/bin/pthread-config
REPLACE_BUILDLINK_SED+= \
-e "s|${BUILDLINK_CONFIG_WRAPPER.pth-syscall-pthread}|${BUILDLINK_CONFIG.pth-syscall-pthread}|g"
.if defined(USE_CONFIG_WRAPPER)
PTH_CONFIG?= ${BUILDLINK_CONFIG_WRAPPER.pth-syscall}
PTHREAD_CONFIG?= ${BUILDLINK_CONFIG_WRAPPER.pth-syscall-pthread}
CONFIGURE_ENV+= PTH_CONFIG="${PTH_CONFIG}"
CONFIGURE_ENV+= PTHREAD_CONFIG="${PTHREAD_CONFIG}"
MAKE_ENV+= PTH_CONFIG="${PTH_CONFIG}"
MAKE_ENV+= PTHREAD_CONFIG="${PTHREAD_CONFIG}"
.endif
pre-configure: ${BUILDLINK_TARGETS.pth-syscall}
pth-syscall-buildlink: _BUILDLINK_USE
pth-syscall-buildlink-config-wrapper: _BUILDLINK_CONFIG_WRAPPER_USE
pth-syscall-pthread-buildlink-config-wrapper: _BUILDLINK_CONFIG_WRAPPER_USE
.endif # PTH_SYSCALL_BUILDLINK_MK