freebsd-ports/Mk/bsd.gnustep.mk

293 lines
8.5 KiB
Makefile
Raw Normal View History

2003-04-13 02:53:03 -04:00
#
# $FreeBSD$
#
# This file contains some variable definitions that are supposed to
# make your life easier when dealing with ports related to the GNUstep.
#
#
# Options for user to customize in /etc/make.conf:
# ================================================
#
# WITH_GNUSTEP_XLIB=yes
# use xlib as backend (default)
#
# WITH_GNUSTEP_XDPS=yes
# use xdps as backend while build instead of xlib.
2003-04-13 02:53:03 -04:00
#
# WITH_GNUSTEP_LIBART=yes
# use libart as backend while build instead of xlib.
2003-04-13 02:53:03 -04:00
#
# WITH_GNUSTEP_CAIRO=yes
# use cairo as backend while build instead of xlib.
#
# GNUSTEP_WITH_BASE_GCC=yes
# use system compiler (does not work on all architectures).
#
# GNUSTEP_WITH_GCC32=yes
# use gcc 3.2.x with objective C shared libraries.
#
# GNUSTEP_WITH_GCC33=yes
# use gcc 3.3.x with objective C shared libraries.
#
# GNUSTEP_WITH_GCC34=yes
# use gcc 3.4.x with objective C shared libraries (default).
#
# GNUSTEP_WITH_GCC40=yes
# use gcc 4.0.x with objective C shared libraries.
#
# GNUSTEP_WITH_GCC41=yes
# use gcc 4.1.x with objective C shared libraries.
#
# GNUSTEP_WITH_GCC42=yes
# use gcc 4.2.x with objective C shared libraries.
#
2003-04-13 02:53:03 -04:00
#
# Options for a port before include this file:
# ============================================
#
# USE_GNUSTEP_BASE=yes
# your port depends on the gnustep-base port.
#
# USE_GNUSTEP_GUI=yes
# your port depends on the gnustep-gui port.
#
# USE_GNUSTEP_BACK=yes
2003-08-27 10:46:06 -04:00
# your port depends on the gnustep-back port.
2003-04-13 02:53:03 -04:00
#
# USE_GNUSTEP_CONFIGURE=yes
# call configure script with GNUstep.sh sourced in the current shell
#
# USE_GNUSTEP_BUILD=yes
# call build target with GNUstep.sh sourced in the current shell
#
# USE_GNUSTEP_INSTALL=yes
# call install target with GNUstep.sh sourced in the current shell
2005-01-09 05:12:07 -05:00
#
2003-04-13 02:53:03 -04:00
# ---------------------------------------------------------------------------
.if !defined(_POSTMKINCLUDED)
GNUstep_Include_MAINTAINER= dinoex@FreeBSD.org
BUILD_DEPENDS+= ${LOCALBASE}/lib/libcallback.a:${PORTSDIR}/devel/ffcall
.if !defined(GNUSTEP_WITHOUT_LIBOBJC)
.if !defined(GNUSTEP_WITH_BASE_GCC)
BUILD_DEPENDS+= ${TARGLIB}/libobjc.so:${PORTSDIR}/${GNUSTEP_GCC_PORT}
RUN_DEPENDS+= ${TARGLIB}/libobjc.so:${PORTSDIR}/${GNUSTEP_GCC_PORT}
.else
BUILD_DEPENDS+= ${COMBOLIBDIR}/libobjc.so:${PORTSDIR}/${GNUSTEP_OBJC_PORT}
RUN_DEPENDS+= ${COMBOLIBDIR}/libobjc.so:${PORTSDIR}/${GNUSTEP_OBJC_PORT}
.endif
.endif
2003-04-13 02:53:03 -04:00
GNUSTEP_MAKE_PORT?= devel/gnustep-make
GNUSTEP_OBJC_PORT?= lang/gnustep-objc
GNUSTEP_BASE_PORT?= lang/gnustep-base
GNUSTEP_GUI_PORT?= x11-toolkits/gnustep-gui
GNUSTEP_BACK_PORT?= x11-toolkits/gnustep-back
GNUSTEP_XDPS_PORT?= x11-toolkits/gnustep-xdps
GNUSTEP_ART_PORT?= x11-toolkits/gnustep-art
GNUSTEP_CAIRO_PORT?= x11-toolkits/gnustep-cairo
2003-04-13 02:53:03 -04:00
.if ${MACHINE_ARCH} == "i386"
GNU_ARCH= ix86
.else
GNU_ARCH= ${MACHINE_ARCH}
.endif
GNUSTEP_PREFIX?= ${LOCALBASE}/GNUstep
.if defined(USE_GNUSTEP_PREFIX)
PREFIX= ${GNUSTEP_PREFIX}
NO_MTREE= yes
.endif
SYSTEMDIR= ${GNUSTEP_PREFIX}/System
2005-08-28 05:15:29 -04:00
SYSMAKEDIR= ${SYSTEMDIR}/Library/Makefiles
2003-10-19 07:14:19 -04:00
BUNDLEDIR= ${SYSTEMDIR}/Library/Bundles
2003-07-26 10:38:59 -04:00
SYSLIBDIR= ${SYSTEMDIR}/Library/Libraries
COMBOLIBDIR= ${SYSTEMDIR}/Library/Libraries
LOCALLIBDIR= ${GNUSTEP_PREFIX}/Local/Library/Libraries
2003-10-19 07:14:19 -04:00
.if defined(WITH_GNUSTEP_DEVEL)
2004-03-26 03:00:35 -05:00
PKGNAMESUFFIX?= -devel${PKGNAMESUFFIX2}
PLIST_SUB+= GNUSTEP_DEVEL=""
PLIST_SUB+= GNUSTEP_STABLE="@comment "
2004-06-16 04:17:22 -04:00
DEFAULT_LIBVERSION?= 0.0.1
.else
PLIST_SUB+= GNUSTEP_DEVEL="@comment "
PLIST_SUB+= GNUSTEP_STABLE=""
2004-11-07 16:43:20 -05:00
DEFAULT_LIBVERSION?= 0.0.1
.endif
2004-06-16 04:17:22 -04:00
2004-11-14 03:06:16 -05:00
PLIST_SUB+= GNU_ARCH=${GNU_ARCH} VERSION=${PORTVERSION}
2004-06-16 04:17:22 -04:00
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(GNUSTEP_WITH_BASE_GCC)
2004-10-12 00:32:33 -04:00
.if !defined(GNUSTEP_WITH_GCC32) && !defined(GNUSTEP_WITH_GCC33) && !defined(GNUSTEP_WITH_GCC34)
.if !defined(GNUSTEP_WITH_GCC40) && !defined(GNUSTEP_WITH_GCC41) && !defined(GNUSTEP_WITH_GCC42)
2006-04-04 15:22:26 -04:00
GNUSTEP_WITH_GCC41= yes
.endif
2004-10-12 00:32:33 -04:00
.endif
2006-03-28 14:50:51 -05:00
2004-04-15 16:51:06 -04:00
.if defined(GNUSTEP_WITH_GCC32)
2006-03-28 14:50:51 -05:00
GCCSUFFIX=32
GNUSTEP_GCC_PORT?= lang/gcc-objc
2004-10-12 00:32:33 -04:00
.endif
.if defined(GNUSTEP_WITH_GCC33)
2006-03-28 14:50:51 -05:00
GCCSUFFIX=33
2004-04-15 16:51:06 -04:00
.endif
2004-10-12 00:32:33 -04:00
.if defined(GNUSTEP_WITH_GCC34)
2006-03-28 14:50:51 -05:00
GCCSUFFIX=34
2004-10-12 00:32:33 -04:00
.endif
.if defined(GNUSTEP_WITH_GCC40)
2006-03-28 14:50:51 -05:00
GCCSUFFIX=40
.endif
.if defined(GNUSTEP_WITH_GCC41)
2006-03-28 14:50:51 -05:00
GCCSUFFIX=41
.endif
.if defined(GNUSTEP_WITH_GCC42)
2006-03-28 14:50:51 -05:00
GCCSUFFIX=42
.endif
2006-03-28 14:50:51 -05:00
CC= gcc${GCCSUFFIX}
CXX= g++${GCCSUFFIX}
GNUSTEP_GCC_PORT?= lang/gcc${GCCSUFFIX}
.endif
2003-04-13 02:53:03 -04:00
# ---------------------------------------------------------------------------
# using base
#
.if defined(USE_GNUSTEP_BASE)
BUILD_DEPENDS+= ${COMBOLIBDIR}/libgnustep-base.so:${PORTSDIR}/${GNUSTEP_BASE_PORT}
RUN_DEPENDS+= ${COMBOLIBDIR}/libgnustep-base.so:${PORTSDIR}/${GNUSTEP_BASE_PORT}
.endif
# ---------------------------------------------------------------------------
# using gui
#
.if defined(USE_GNUSTEP_GUI)
BUILD_DEPENDS+= ${COMBOLIBDIR}/libgnustep-gui.so:${PORTSDIR}/${GNUSTEP_GUI_PORT}
RUN_DEPENDS+= ${COMBOLIBDIR}/libgnustep-gui.so:${PORTSDIR}/${GNUSTEP_GUI_PORT}
.endif
# ---------------------------------------------------------------------------
# using any backend
#
.if defined(USE_GNUSTEP_BACK)
2005-07-27 13:13:46 -04:00
BACKSUFFIX?= -010
.if defined(WITH_GNUSTEP_XDPS)
2003-04-13 02:53:03 -04:00
GNUSTEP_WITH_XDPS=yes
.elif defined(WITH_GNUSTEP_LIBART)
2003-04-13 02:53:03 -04:00
USE_GNUSTEP_LIBART=yes
.elif defined(WITH_GNUSTEP_CAIRO)
USE_GNUSTEP_CAIRO=yes
.elif defined(WITH_GNUSTEP_XLIB)
USE_GNUSTEP_XLIB=yes
2003-04-13 02:53:03 -04:00
.else
# default:
2003-04-13 02:53:03 -04:00
USE_GNUSTEP_XLIB=yes
.endif
.endif
# ---------------------------------------------------------------------------
# Backend using xlib
#
.if defined(USE_GNUSTEP_XLIB)
BUILD_DEPENDS+= ${BUNDLEDIR}/${BACKXLIB}.bundle/${BACKXLIB}:${PORTSDIR}/${GNUSTEP_BACK_PORT}
RUN_DEPENDS+= ${BUNDLEDIR}/${BACKXLIB}.bundle/${BACKXLIB}:${PORTSDIR}/${GNUSTEP_BACK_PORT}
2003-04-13 02:53:03 -04:00
BACKXLIB= libgnustep-back${BACKSUFFIX}
2003-04-13 02:53:03 -04:00
MAKE_FLAGS+= GUI_BACKEND_LIB=back
.endif
# ---------------------------------------------------------------------------
# Backend using xdps
#
.if defined(USE_GNUSTEP_XDPS)
BUILD_DEPENDS+= ${BUNDLEDIR}/${BACKXDPS}.bundle/${BACKXDPS}:${PORTSDIR}/${GNUSTEP_XDPS_PORT}
RUN_DEPENDS+= ${BUNDLEDIR}/${BACKXDPS}.bundle/${BACKXDPS}:${PORTSDIR}/${GNUSTEP_XDPS_PORT}
2003-04-13 02:53:03 -04:00
BACKXDPS= libgnustep-xdps${BACKSUFFIX}
2003-04-13 02:53:03 -04:00
MAKE_FLAGS+= GUI_BACKEND_LIB=xdps
.endif
# ---------------------------------------------------------------------------
# Backend using libart
#
.if defined(USE_GNUSTEP_LIBART)
BUILD_DEPENDS+= ${BUNDLEDIR}/${BACKART}.bundle/${BACKART}:${PORTSDIR}/${GNUSTEP_ART_PORT}
RUN_DEPENDS+= ${BUNDLEDIR}/${BACKART}.bundle/${BACKART}:${PORTSDIR}/${GNUSTEP_ART_PORT}
2003-04-13 02:53:03 -04:00
BACKART= libgnustep-art${BACKSUFFIX}
2003-04-13 02:53:03 -04:00
MAKE_FLAGS+= GUI_BACKEND_LIB=art
.endif
# ---------------------------------------------------------------------------
# Backend using cairo
#
.if defined(USE_GNUSTEP_CAIRO)
BUILD_DEPENDS+= ${BUNDLEDIR}/${BACKCAIRO}.bundle/${BACKCAIRO}:${PORTSDIR}/${GNUSTEP_CAIRO_PORT}
RUN_DEPENDS+= ${BUNDLEDIR}/${BACKCAIRO}.bundle/${BACKCAIRO}:${PORTSDIR}/${GNUSTEP_CAIRO_PORT}
BACKCAIRO= libgnustep-cairo${BACKSUFFIX}
MAKE_FLAGS+= GUI_BACKEND_LIB=cairo
.endif
2003-04-13 02:53:03 -04:00
# ---------------------------------------------------------------------------
# source GNUstep.sh
#
.if defined(USE_GNUSTEP_CONFIGURE)
run-autotools::
Here come the patches! * Add ghostscript knobs [1] * Add per-port persistent build options with a menu-driven front-end [2] * Allow porters to override the message generated when do-configure fails [3] * Add patch to obviate many pkg-plist files [4] * Fix the PKG_DBDIR comment [5] * Make ports framework more robust with regard to make index [6] * Add new command macros to bsd.port.mk [7] * Remove direct command use from bsd.port.mk [8] * Make the ports system respect WITHOUT_CPU_CFLAGS [9] * Break the SDL code out into bsd.sdl.mk [10] * Add working support for USE_SIZE [11] * Fix RANDOMIZE_MASTER_SITES on -CURRENT [12] * Convert some spaces to tabs [13] * Add new physcial categories accessibility and x11-themes [14] * Speed up GNU configure scripts [15] * Remove "//" from MLINKS items in PLISTs and fix make -s install and make -s deinstall [16] * Be more specific about looking for files in distinfo [17] * Add new run-autotools target, and resort configure targets [18] * Make CONFLICTS compare prefix for installed packages and PREFIX [19] * Change directory to ${.CURDIR} before running certain make commands [20] * When INSTALL_AS_USER is set, run ldconfig with failures ignored [21] * Speed up the security check phase [22] * Fix some corner cases in the PORTDOCS code [23] * Add a new DEPRECATED macro [24] * Make INDEX breakage more informative [25] Look for a full write-up to follow on ports@ and ports-developers@. PR: 36112 [1] 59909 [4] 61351 [6] 59058 [7] 59058 [8] 59493 [9] 55494 [10] 59058 [11] 59315 [12] 59058 [13] 59811 [15] 59058 [16] 59058 [17] 60882 [18] 58149 [19] 59058 [20] 61133 [21] 55331 [22] 59070 [23] 59362 [24] 59626 [25] Submitted by: linimon [1] eivind [2] marcus [3] trevor [4] gerald [5] linimon [6] eik [7] eik [8] jeh [9] edwin [10] eik [11] Sergey Matveychuk <sem@ciam.ru> [12] eik [13] trevor gnome [14] adamw [15] eik [16] eik [17] edwin [18] clement [19] eik [20] edwin lev [21] Eugene M. Kim <ab@astralblue.com> [22] eik [23] linimon [24] eik [25]
2004-01-20 04:14:10 -05:00
@${DO_NADA}
2003-04-13 02:53:03 -04:00
do-configure:
@(cd ${CONFIGURE_WRKSRC}; . ${SYSMAKEDIR}/GNUstep.sh; \
if ! ${SETENV} CC="${CC}" CXX="${CXX}" \
CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" \
INSTALL="/usr/bin/install -c -o ${BINOWN} -g ${BINGRP}" \
INSTALL_DATA="${INSTALL} -c" \
INSTALL_PROGRAM="${INSTALL} -c" \
INSTALL_SCRIPT="${INSTALL_SCRIPT}" \
${CONFIGURE_ENV} ./${CONFIGURE_SCRIPT} ${CONFIGURE_ARGS}; then \
${ECHO} "===> Script \"${CONFIGURE_SCRIPT}\" failed: here are the contents of \"${CONFIGURE_LOG}\""; \
${CAT} ${CONFIGURE_LOG}; \
${ECHO} "(end of \"${CONFIGURE_LOG}\")"; \
${FALSE}; \
fi)
.endif
# ---------------------------------------------------------------------------
# source GNUstep.sh
#
.if defined(USE_GNUSTEP_BUILD)
BUILD_DEPENDS+= ${SYSMAKEDIR}/GNUstep.sh:${PORTSDIR}/${GNUSTEP_MAKE_PORT}
do-build:
@(cd ${WRKSRC}; . ${SYSMAKEDIR}/GNUstep.sh; \
${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${ALL_TARGET})
.endif
# ---------------------------------------------------------------------------
# source GNUstep.sh
#
.if defined(USE_GNUSTEP_INSTALL)
RUN_DEPENDS+= ${SYSMAKEDIR}/GNUstep.sh:${PORTSDIR}/${GNUSTEP_MAKE_PORT}
do-install:
@(cd ${WRKSRC}; . ${SYSMAKEDIR}/GNUstep.sh; \
${SETENV} ${MAKE_ENV} ${GMAKE} ${MAKE_FLAGS} ${MAKEFILE} ${INSTALL_TARGET})
2003-06-18 00:07:19 -04:00
.if defined(PARALLEL_PACKAGE_BUILD) || defined(BATCH) || defined(CLEAN_ROOT)
rm -rf /root/GNUstep
.endif
2003-04-13 02:53:03 -04:00
.endif
.if !defined(GNUSTEP_WITH_BASE_GCC)
TARGLIB!= (cd ${PORTSDIR}/${GNUSTEP_GCC_PORT} && make -V TARGLIB)
.endif
2003-04-13 02:53:03 -04:00
.endif
# eof