1
0
mirror of https://git.FreeBSD.org/ports.git synced 2024-12-15 03:14:23 +00:00
freebsd-ports/Mk/Uses/gnustep.mk
David Chisnall 9156bf1b9e Make all GNUstep ports install into the System domain so that the Local domain is available for stuff built from source.
Some ports were already installing in the System domain, for these just remove the Makefile lines explicitly specifying the install domain.

The rest are installed in the Local domain, remove any overrides, update their pkg-plists and any explicit paths in the Makefiles and then bump port revision.

Approved by:	bapt (mentor)
Differential Revision:	https://reviews.freebsd.org/D2977
2015-09-19 10:33:34 +00:00

88 lines
2.7 KiB
Makefile

# $FreeBSD$
#
# Handle GNUstep related ports
#
# Feature: gnustep
# Usage: USES=gnustep
#
# Defined specific dependencies under USE_GNUSTEP
# Expected arguments for USE_GNUSTEP:
#
# base: depends on the gnustep-base port
# gui: depends on the gnustep-gui port
# back: depends on the gnustep-back port
# build: prepare the build dependencies for a regular GNUstep port
#
.if !defined(_INCLUDE_USES_GNUSTEP_MK)
_INCLUDE_USES_GNUSTEP_MK= yes
.include "${USESDIR}/gmake.mk"
GNUSTEP_PREFIX?= ${LOCALBASE}/GNUstep
DEFAULT_LIBVERSION?= 0.0.1
GNUSTEP_SYSTEM_ROOT= ${GNUSTEP_PREFIX}/System
GNUSTEP_MAKEFILES= ${GNUSTEP_SYSTEM_ROOT}/Library/Makefiles
GNUSTEP_SYSTEM_LIBRARIES= ${GNUSTEP_SYSTEM_ROOT}/Library/Libraries
GNUSTEP_SYSTEM_TOOLS= ${GNUSTEP_SYSTEM_ROOT}/Tools
GNUSTEP_LOCAL_ROOT= ${GNUSTEP_PREFIX}/Local
GNUSTEP_LOCAL_LIBRARIES= ${GNUSTEP_LOCAL_ROOT}/Library/Libraries
GNUSTEP_LOCAL_TOOLS= ${GNUSTEP_LOCAL_ROOT}/Tools
LIB_DIRS+= ${GNUSTEP_SYSTEM_LIBRARIES} \
${GNUSTEP_LOCAL_LIBRARIES}
.for a in CFLAGS CPPFLAGS CXXFLAGS OBJCCFLAGS OBJCFLAGS LDFLAGS
MAKE_ENV+= ADDITIONAL_${a}="${ADDITIONAL_${a}} ${${a}}"
.endfor
.for a in FLAGS INCLUDE_DIRS LIB_DIRS
MAKE_ENV+= ADDITIONAL_${a}="${ADDITIONAL_${a}}"
.endfor
MAKE_ARGS+=messages=yes
MAKEFILE= GNUmakefile
#MAKE_ENV+= GNUSTEP_CONFIG_FILE=${PORTSDIR}/devel/gnustep-make/files/GNUstep.conf
GNU_CONFIGURE_PREFIX= ${GNUSTEP_PREFIX}
.if ${MACHINE_ARCH} == "i386"
GNU_ARCH= ix86
.else
GNU_ARCH= ${MACHINE_ARCH}
.endif
PLIST_SUB+= GNU_ARCH=${GNU_ARCH} VERSION=${PORTVERSION}
PLIST_SUB+= MAJORVERSION=${PORTVERSION:C/([0-9]).*/\1/1}
PLIST_SUB+= LIBVERSION=${DEFAULT_LIBVERSION}
PLIST_SUB+= MAJORLIBVERSION=${DEFAULT_LIBVERSION:C/([0-9]).*/\1/1}
.if defined(USE_GNUSTEP)
. if ${USE_GNUSTEP:Mbase}
LIB_DEPENDS+= libgnustep-base.so:${PORTSDIR}/lang/gnustep-base
. endif
. if ${USE_GNUSTEP:Mbuild}
PATH:= ${GNUSTEP_SYSTEM_TOOLS}:${GNUSTEP_LOCAL_TOOLS}:${PATH}
MAKE_ENV+= PATH="${PATH}" GNUSTEP_MAKEFILES="${GNUSTEP_MAKEFILES}" GNUSTEP_SYSTEM_ROOT="${GNUSTEP_SYSTEM_ROOT}"
# All GNUstep things installed from ports should be in the System domain.
# Things installed from source can then freely live in the Local domain without
# conflicts.
MAKE_ENV+= GNUSTEP_INSTALLATION_DOMAIN=SYSTEM
CONFIGURE_ENV+= PATH="${PATH}" GNUSTEP_MAKEFILES="${GNUSTEP_MAKEFILES}" GNUSTEP_SYSTEM_ROOT="${GNUSTEP_SYSTEM_ROOT}"
BUILD_DEPENDS+= gnustep-make>0:${PORTSDIR}/devel/gnustep-make
.include "${USESDIR}/objc.mk"
. endif
. if ${USE_GNUSTEP:Mgui}
LIB_DEPENDS+= libgnustep-gui.so:${PORTSDIR}/x11-toolkits/gnustep-gui
. endif
. if ${USE_GNUSTEP:Mback}
BUILD_DEPENDS+= gnustep-back>0:${PORTSDIR}/x11-toolkits/gnustep-back
RUN_DEPENDS+= gnustep-back>0:${PORTSDIR}/x11-toolkits/gnustep-back
. endif
.endif
.endif