3f627ab4ce
* Bump the LLVM revision used for GNUstep to 7, the minimum to support the new ABI. * GNUstep-back does not work with lld, so mark it to use Gold (BFD LD doesn't seem able to link Objective-C things). * Turn off some annoying debug logs in GNUstep back, which generate several messages per second when you move the mouse. These should never have been enabled in a release build anyway. * Downgrade Cenon to 4.0.2. This was the last version to actually work with GNUstep (the later ones use XCode >= 5 .xib files, which GNUstep can't parse). * Update gorm to git head. The current release doesn't work with the new Objective-C ABI, but -head has the patches to fix it. * Update PikoPixel and add it to the gnustep-app meta-package. * Update the three core GNUstep packages to the latest release. * Update gnumail and pantomime to the latest release and fix a linking error with the new ABI. * Update GNUstep FTP to the latest version. Reviewed by: bapt (previous version)
96 lines
2.9 KiB
Makefile
96 lines
2.9 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
|
|
# BFD ld can't link Objective-C programs for some reason. Most things are fine
|
|
# with LLD, but the things that don't (e.g. sope) need gold.
|
|
.if defined(LLD_UNSAFE)
|
|
MAKE_ARGS+=LDFLAGS='-fuse-ld=gold'
|
|
BUILD_DEPENDS+= ${LOCALBASE}/bin/ld.gold:devel/binutils
|
|
.else
|
|
MAKE_ARGS+=LDFLAGS='-fuse-ld=${OBJC_LLD}'
|
|
.endif
|
|
|
|
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:lang/gnustep-base
|
|
. endif
|
|
|
|
. if ${USE_GNUSTEP:Mbuild}
|
|
PATH:= ${GNUSTEP_SYSTEM_TOOLS}:${GNUSTEP_LOCAL_TOOLS}:${PATH}
|
|
MAKE_ENV+= PATH="${PATH}" GNUSTEP_MAKEFILES="${GNUSTEP_MAKEFILES}"
|
|
# 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}"
|
|
BUILD_DEPENDS+= gnustep-make>0:devel/gnustep-make
|
|
.include "${USESDIR}/objc.mk"
|
|
. endif
|
|
|
|
. if ${USE_GNUSTEP:Mgui}
|
|
LIB_DEPENDS+= libgnustep-gui.so:x11-toolkits/gnustep-gui
|
|
. endif
|
|
|
|
. if ${USE_GNUSTEP:Mback}
|
|
BUILD_DEPENDS+= gnustep-back>0:x11-toolkits/gnustep-back
|
|
RUN_DEPENDS+= gnustep-back>0:x11-toolkits/gnustep-back
|
|
. endif
|
|
|
|
.endif
|
|
|
|
.endif
|