diff --git a/Mk/bsd.gnustep.mk b/Mk/bsd.gnustep.mk new file mode 100644 index 000000000000..9f88b1ed6ef2 --- /dev/null +++ b/Mk/bsd.gnustep.mk @@ -0,0 +1,185 @@ +# +# $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: +# ================================================ +# +# WANT_GNUSTEP_XDPS=yes +# use xdps as backend instead of xlib. +# +# WANT_GNUSTEP_LIBART=yes +# use libart as backend instead of xlib. +# +# +# 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 +# your port depends on teh gnustep-back port. +# +# 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 +# + +# --------------------------------------------------------------------------- +.if !defined(_POSTMKINCLUDED) + +GNUstep_Include_MAINTAINER= dinoex@FreeBSD.org + +BUILD_DEPENDS+= ${LOCALBASE}/lib/libcallback.a:${PORTSDIR}/devel/ffcall +LIB_DEPENDS+= objc:${PORTSDIR}/${GNUSTEP_OBJC_PORT} + +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 + +.if ${MACHINE_ARCH} == "i386" +GNU_ARCH= ix86 +.else +GNU_ARCH= ${MACHINE_ARCH} +.endif + +PLIST_SUB+= GNU_ARCH=${GNU_ARCH} OPSYS=${OPSYS:L} VERSION=${PORTVERSION} +PLIST_SUB+= MAJORVERSION=${PORTVERSION:C/([0-9]).*/\1/1} + +SYSTEMDIR= ${PREFIX}/System +SYSMAKEDIR= ${SYSTEMDIR}/Makefiles +SYSLIBDIR= ${SYSTEMDIR}/Libraries/${GNU_ARCH}/${OPSYS:L} +COMBOLIBDIR= ${SYSTEMDIR}/Libraries/${GNU_ARCH}/${OPSYS:L}/gnu-gnu-gnu +BUNDLEDIR= ${SYSTEMDIR}/Library/Bundles +COMBOPATH= ${GNU_ARCH}/${OPSYS:L}/gnu-gnu-gnu +LOCALLIBDIR= ${PREFIX}/Local/Libraries/${COMBOPATH} +CC= gcc32 +CXX= g++32 + +# --------------------------------------------------------------------------- +# 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) +.if defined(WANT_GNUSTEP_XDPS) +GNUSTEP_WITH_XDPS=yes +.else +.if defined(WANT_GNUSTEP_LIBART) +USE_GNUSTEP_LIBART=yes +.else +USE_GNUSTEP_XLIB=yes +.endif +.endif +.endif + +# --------------------------------------------------------------------------- +# Backend using xlib +# +.if defined(USE_GNUSTEP_XLIB) +BUILD_DEPENDS+= ${BACKBUNDLEDIR}/libgnustep-back:${PORTSDIR}/${GNUSTEP_BACK_PORT} +RUN_DEPENDS+= ${BACKBUNDLEDIR}/libgnustep-back:${PORTSDIR}/${GNUSTEP_BACK_PORT} + +BACKBUNDLEDIR= ${BUNDLEDIR}/libgnustep-back.bundle/${COMBOPATH} +MAKE_FLAGS+= GUI_BACKEND_LIB=back +.endif + +# --------------------------------------------------------------------------- +# Backend using xdps +# +.if defined(USE_GNUSTEP_XDPS) +BUILD_DEPENDS+= ${BACKBUNDLEDIR}/libgnustep-xdps:${PORTSDIR}/${GNUSTEP_XDPS_PORT} +RUN_DEPENDS+= ${BACKBUNDLEDIR}/libgnustep-xdps:${PORTSDIR}/${GNUSTEP_XDPS_PORT} + +BACKBUNDLEDIR= ${BUNDLEDIR}/libgnustep-xdps.bundle/${COMBOPATH} +MAKE_FLAGS+= GUI_BACKEND_LIB=xdps +.endif + +# --------------------------------------------------------------------------- +# Backend using libart +# +.if defined(USE_GNUSTEP_LIBART) +BUILD_DEPENDS+= ${BACKBUNDLEDIR}/libgnustep-art:${PORTSDIR}/${GNUSTEP_ART_PORT} +RUN_DEPENDS+= ${BACKBUNDLEDIR}/libgnustep-art:${PORTSDIR}/${GNUSTEP_ART_PORT} + +BACKBUNDLEDIR= ${BUNDLEDIR}/libgnustep-art.bundle/${COMBOPATH} +MAKE_FLAGS+= GUI_BACKEND_LIB=art +.endif + +# --------------------------------------------------------------------------- +# source GNUstep.sh +# +.if defined(USE_GNUSTEP_CONFIGURE) +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}) + +.endif + +.endif + +# eof diff --git a/devel/gnustep/bsd.gnustep.mk b/devel/gnustep/bsd.gnustep.mk new file mode 100644 index 000000000000..9f88b1ed6ef2 --- /dev/null +++ b/devel/gnustep/bsd.gnustep.mk @@ -0,0 +1,185 @@ +# +# $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: +# ================================================ +# +# WANT_GNUSTEP_XDPS=yes +# use xdps as backend instead of xlib. +# +# WANT_GNUSTEP_LIBART=yes +# use libart as backend instead of xlib. +# +# +# 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 +# your port depends on teh gnustep-back port. +# +# 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 +# + +# --------------------------------------------------------------------------- +.if !defined(_POSTMKINCLUDED) + +GNUstep_Include_MAINTAINER= dinoex@FreeBSD.org + +BUILD_DEPENDS+= ${LOCALBASE}/lib/libcallback.a:${PORTSDIR}/devel/ffcall +LIB_DEPENDS+= objc:${PORTSDIR}/${GNUSTEP_OBJC_PORT} + +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 + +.if ${MACHINE_ARCH} == "i386" +GNU_ARCH= ix86 +.else +GNU_ARCH= ${MACHINE_ARCH} +.endif + +PLIST_SUB+= GNU_ARCH=${GNU_ARCH} OPSYS=${OPSYS:L} VERSION=${PORTVERSION} +PLIST_SUB+= MAJORVERSION=${PORTVERSION:C/([0-9]).*/\1/1} + +SYSTEMDIR= ${PREFIX}/System +SYSMAKEDIR= ${SYSTEMDIR}/Makefiles +SYSLIBDIR= ${SYSTEMDIR}/Libraries/${GNU_ARCH}/${OPSYS:L} +COMBOLIBDIR= ${SYSTEMDIR}/Libraries/${GNU_ARCH}/${OPSYS:L}/gnu-gnu-gnu +BUNDLEDIR= ${SYSTEMDIR}/Library/Bundles +COMBOPATH= ${GNU_ARCH}/${OPSYS:L}/gnu-gnu-gnu +LOCALLIBDIR= ${PREFIX}/Local/Libraries/${COMBOPATH} +CC= gcc32 +CXX= g++32 + +# --------------------------------------------------------------------------- +# 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) +.if defined(WANT_GNUSTEP_XDPS) +GNUSTEP_WITH_XDPS=yes +.else +.if defined(WANT_GNUSTEP_LIBART) +USE_GNUSTEP_LIBART=yes +.else +USE_GNUSTEP_XLIB=yes +.endif +.endif +.endif + +# --------------------------------------------------------------------------- +# Backend using xlib +# +.if defined(USE_GNUSTEP_XLIB) +BUILD_DEPENDS+= ${BACKBUNDLEDIR}/libgnustep-back:${PORTSDIR}/${GNUSTEP_BACK_PORT} +RUN_DEPENDS+= ${BACKBUNDLEDIR}/libgnustep-back:${PORTSDIR}/${GNUSTEP_BACK_PORT} + +BACKBUNDLEDIR= ${BUNDLEDIR}/libgnustep-back.bundle/${COMBOPATH} +MAKE_FLAGS+= GUI_BACKEND_LIB=back +.endif + +# --------------------------------------------------------------------------- +# Backend using xdps +# +.if defined(USE_GNUSTEP_XDPS) +BUILD_DEPENDS+= ${BACKBUNDLEDIR}/libgnustep-xdps:${PORTSDIR}/${GNUSTEP_XDPS_PORT} +RUN_DEPENDS+= ${BACKBUNDLEDIR}/libgnustep-xdps:${PORTSDIR}/${GNUSTEP_XDPS_PORT} + +BACKBUNDLEDIR= ${BUNDLEDIR}/libgnustep-xdps.bundle/${COMBOPATH} +MAKE_FLAGS+= GUI_BACKEND_LIB=xdps +.endif + +# --------------------------------------------------------------------------- +# Backend using libart +# +.if defined(USE_GNUSTEP_LIBART) +BUILD_DEPENDS+= ${BACKBUNDLEDIR}/libgnustep-art:${PORTSDIR}/${GNUSTEP_ART_PORT} +RUN_DEPENDS+= ${BACKBUNDLEDIR}/libgnustep-art:${PORTSDIR}/${GNUSTEP_ART_PORT} + +BACKBUNDLEDIR= ${BUNDLEDIR}/libgnustep-art.bundle/${COMBOPATH} +MAKE_FLAGS+= GUI_BACKEND_LIB=art +.endif + +# --------------------------------------------------------------------------- +# source GNUstep.sh +# +.if defined(USE_GNUSTEP_CONFIGURE) +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}) + +.endif + +.endif + +# eof