Index: head/Mk/bsd.gecko.mk =================================================================== --- head/Mk/bsd.gecko.mk (revision 499896) +++ head/Mk/bsd.gecko.mk (revision 499897) @@ -1,540 +1,535 @@ #-*- tab-width: 4; -*- # ex:ts=4 # # Date created: 12 Nov 2005 # Whom: Michael Johnson # # $FreeBSD$ # # 4 column tabs prevent hair loss and tooth decay! # bsd.gecko.mk abstracts the selection of gecko-based backends. It allows users # and porters to support any available gecko backend without needing to build # many conditional tests. ${USE_GECKO} is the list of backends that your port # can handle, and ${GECKO} is set by bsd.gecko.mk to be the chosen backend. # Users set ${WITH_GECKO} to the list of gecko backends they want on their # system. .if defined(USE_GECKO) .if !defined(_POSTMKINCLUDED) && !defined(Gecko_Pre_Include) Gecko_Pre_Include= bsd.gecko.mk # This file contains some reusable components for mozilla ports. It's of # use primarily to apps from the mozilla project itself (such as Firefox, # Thunderbird, etc.), and probably won't be of use for gecko-based ports # like epiphany, galeon, etc. # # You need to make sure to add USE_GECKO=gecko to for your port can uses # one of these options below. # # Ports can use the following: # # USE_MOZILLA By default, it enables every system dependency # listed in '_ALL_DEPENDS'. If your port doesn't # need one of those then you can use '-' like # 'USE_MOZILLA= -png -vpx' to subtract the # dependencies. Experimental deps use '+' like # 'USE_MOZILLA= +speex +theora'. # # MOZILLA_PLIST_DIRS List of directories to descend into when installing # and creating the plist # # MOZ_PIS_SCRIPTS List of scripts residing in ${FILESDIR} to be # filtered through MOZCONFIG_SED and installed along # with our Pluggable Init Scripts (PIS) # # MOZ_SED_ARGS sed(1) commands through which MOZ_PIS_SCRIPTS are # filtered. There is a default set defined here, so # you probably want to add to MOZ_SED_ARGS rather # than clobber it # # MOZ_OPTIONS configure arguments (added to .mozconfig). If # NOMOZCONFIG is defined, you probably want to set # CONFIGURE_ARGS+=${MOZ_OPTIONS} # # MOZ_MK_OPTIONS The make(1) arguments (added to .mozconfig). If # NOMOZCONFIG is defined, you probably want to set # MAKE_ARGS+=${MOZ_MK_OPTIONS} # # MOZ_EXPORT Environment variables for the build process (added # to .mozconfig). If NOMOZCONFIG is defined, you # probably want to set MAKE_ENV+=${MOZ_EXPORT} # # MOZ_CHROME A variable for the --enable-chrome-format= in # CONFIGURE_ARGS. The default is omni. # # MOZ_TOOLKIT A variable for the --enable-default-toolkit= in # CONFIGURE_ARGS. The default is cairo-gtk2. # # PORT_MOZCONFIG Defaults to ${FILESDIR}/mozconfig.in, but can be # set to a generic mozconfig included with the port # # NOMOZCONFIG Don't drop a customized .mozconfig into the build # directory. Options will have to be specified in # CONFIGURE_ARGS instead # MAINTAINER?= gecko@FreeBSD.org MOZILLA?= ${PORTNAME} MOZILLA_VER?= ${PORTVERSION} MOZILLA_BIN?= ${PORTNAME}-bin MOZILLA_EXEC_NAME?=${MOZILLA} MOZ_RPATH?= ${MOZILLA} USES+= compiler:c++17-lang cpe gl gmake iconv localbase perl5 pkgconfig \ python:2.7,build desktop-file-utils CPE_VENDOR?=mozilla USE_GL= gl USE_PERL5= build USE_XORG= x11 xcb xcomposite xdamage xext xfixes xrender xt HAS_CONFIGURE= yes CONFIGURE_OUTSOURCE= yes BUNDLE_LIBS= yes .if ${MOZILLA_VER:R:R} >= 56 BUILD_DEPENDS+= llvm${LLVM_DEFAULT}>0:devel/llvm${LLVM_DEFAULT} MOZ_EXPORT+= LLVM_CONFIG=llvm-config${LLVM_DEFAULT} # Require newer Clang than what's in base system unless user opted out . if ${CC} == cc && ${CXX} == c++ && exists(/usr/lib/libc++.so) BUILD_DEPENDS+= ${LOCALBASE}/bin/clang${LLVM_DEFAULT}:devel/llvm${LLVM_DEFAULT} CPP= ${LOCALBASE}/bin/clang-cpp${LLVM_DEFAULT} CC= ${LOCALBASE}/bin/clang${LLVM_DEFAULT} CXX= ${LOCALBASE}/bin/clang++${LLVM_DEFAULT} USES:= ${USES:Ncompiler\:*} # XXX avoid warnings . endif .endif .if ${MOZILLA_VER:R:R} >= 61 BUILD_DEPENDS+= ${LOCALBASE}/bin/python${PYTHON3_DEFAULT}:lang/python${PYTHON3_DEFAULT:S/.//g} MOZ_EXPORT+= PYTHON3="${LOCALBASE}/bin/python${PYTHON3_DEFAULT}" .endif .if ${MOZILLA_VER:R:R} >= 63 BUILD_DEPENDS+= rust-cbindgen>=0.6.8:devel/rust-cbindgen \ node:www/node .endif .if ${MOZILLA_VER:R:R} < 64 MOZ_OPTIONS+= --enable-pie .endif -.if ${MOZILLA_VER:R:R} >= 65 -# Let vendor add -fstack-protector-strong on all architectures -SSP_UNSAFE= yes -.endif - MOZILLA_SUFX?= none MOZSRC?= ${WRKSRC} PLISTF?= ${WRKDIR}/plist_files MOZ_PIS_DIR?= lib/${MOZILLA}/init.d PORT_MOZCONFIG?= ${FILESDIR}/mozconfig.in MOZCONFIG?= ${WRKSRC}/.mozconfig MOZILLA_PLIST_DIRS?= bin lib share/pixmaps share/applications PKGINSTALL?= ${WRKDIR}/pkg-install PKGDEINSTALL?= ${WRKDIR}/pkg-deinstall PKGINSTALL_INC?= ${.CURDIR}/../../www/firefox/files/pkg-install.in PKGDEINSTALL_INC?= ${.CURDIR}/../../www/firefox/files/pkg-deinstall.in MOZ_PKGCONFIG_FILES?= ${MOZILLA}-gtkmozembed ${MOZILLA}-js \ ${MOZILLA}-xpcom ${MOZILLA}-plugin MOZ_EXPORT+= ${CONFIGURE_ENV} \ RUSTFLAGS="${RUSTFLAGS}" \ PERL="${PERL}" MOZ_OPTIONS+= --prefix="${PREFIX}" MOZ_MK_OPTIONS+=MOZ_OBJDIR="${BUILD_WRKSRC}" LDFLAGS+= -Wl,--as-needed # Adjust -C target-cpu if -march/-mcpu is set by bsd.cpu.mk .if ${ARCH} == amd64 || ${ARCH} == i386 RUSTFLAGS+= ${CFLAGS:M-march=*:S/-march=/-C target-cpu=/} .else RUSTFLAGS+= ${CFLAGS:M-mcpu=*:S/-mcpu=/-C target-cpu=/} .endif # Standard depends _ALL_DEPENDS= event ffi graphite harfbuzz hunspell icu jpeg nspr nss png pixman sqlite vpx webp event_LIB_DEPENDS= libevent.so:devel/libevent event_MOZ_OPTIONS= --with-system-libevent ffi_LIB_DEPENDS= libffi.so:devel/libffi ffi_MOZ_OPTIONS= --enable-system-ffi .if exists(${FILESDIR}/patch-bug847568) graphite_LIB_DEPENDS= libgraphite2.so:graphics/graphite2 graphite_MOZ_OPTIONS= --with-system-graphite2 harfbuzz_LIB_DEPENDS= libharfbuzz.so:print/harfbuzz harfbuzz_MOZ_OPTIONS= --with-system-harfbuzz .endif hunspell_LIB_DEPENDS= libhunspell-1.7.so:textproc/hunspell hunspell_MOZ_OPTIONS= --enable-system-hunspell icu_LIB_DEPENDS= libicui18n.so:devel/icu icu_MOZ_OPTIONS= --with-system-icu --with-intl-api -jpeg_BUILD_DEPENDS=yasm:devel/yasm jpeg_USES= jpeg jpeg_MOZ_OPTIONS= --with-system-jpeg=${LOCALBASE} nspr_LIB_DEPENDS= libnspr4.so:devel/nspr nspr_MOZ_OPTIONS= --with-system-nspr nss_LIB_DEPENDS= libnss3.so:security/nss nss_MOZ_OPTIONS= --with-system-nss pixman_LIB_DEPENDS= libpixman-1.so:x11/pixman pixman_MOZ_OPTIONS= --enable-system-pixman png_LIB_DEPENDS= libpng.so:graphics/png png_MOZ_OPTIONS= --with-system-png=${LOCALBASE} sqlite_LIB_DEPENDS= libsqlite3.so:databases/sqlite3 sqlite_MOZ_OPTIONS= --enable-system-sqlite -vpx_BUILD_DEPENDS= yasm:devel/yasm vpx_LIB_DEPENDS= libvpx.so:multimedia/libvpx vpx_MOZ_OPTIONS= --with-system-libvpx webp_LIB_DEPENDS= libwebp.so:graphics/webp webp_MOZ_OPTIONS= --with-system-webp .for use in ${USE_MOZILLA} ${use:S/-/_WITHOUT_/}= ${TRUE} .endfor LIB_DEPENDS+= libfontconfig.so:x11-fonts/fontconfig \ libfreetype.so:print/freetype2 .for dep in ${_ALL_DEPENDS} ${USE_MOZILLA:M+*:S/+//} .if !defined(_WITHOUT_${dep}) BUILD_DEPENDS+= ${${dep}_BUILD_DEPENDS} LIB_DEPENDS+= ${${dep}_LIB_DEPENDS} RUN_DEPENDS+= ${${dep}_RUN_DEPENDS} USES+= ${${dep}_USES} MOZ_OPTIONS+= ${${dep}_MOZ_OPTIONS} .else BUILD_DEPENDS+= ${-${dep}_BUILD_DEPENDS} .endif .endfor # Standard options MOZ_CHROME?= omni MOZ_TOOLKIT?= cairo-gtk3 MOZ_CHANNEL?= ${PKGNAMESUFFIX:Urelease:S/^-//} MOZ_OPTIONS+= \ --enable-chrome-format=${MOZ_CHROME} \ --enable-default-toolkit=${MOZ_TOOLKIT} \ --enable-update-channel=${MOZ_CHANNEL} \ --disable-updater # others MOZ_OPTIONS+= --with-system-zlib \ --with-system-bz2 # API keys from www/chromium # http://www.chromium.org/developers/how-tos/api-keys # Note: these are for FreeBSD use ONLY. For your own distribution, # please get your own set of keys. MOZ_EXPORT+= MOZ_GOOGLE_API_KEY=AIzaSyBsp9n41JLW8jCokwn7vhoaMejDFRd1mp8 .if ${PORT_OPTIONS:MGTK2} MOZ_TOOLKIT= cairo-gtk2 .elif ${PORT_OPTIONS:MWAYLAND} MOZ_TOOLKIT= cairo-gtk3-wayland .endif USES+= gnome .if ${MOZ_TOOLKIT:Mcairo-gtk3*} BUILD_DEPENDS+= gtk3>=3.14.6:x11-toolkits/gtk30 USE_GNOME+= gdkpixbuf2 gtk20 gtk30 .else # gtk2, cairo-gtk2 USE_GNOME+= gdkpixbuf2 gtk20 .endif .if ${PORT_OPTIONS:MOPTIMIZED_CFLAGS} CFLAGS+= -O3 MOZ_EXPORT+= MOZ_OPTIMIZE_FLAGS="${CFLAGS:M-O*}" MOZ_OPTIONS+= --enable-optimize .else MOZ_OPTIONS+= --disable-optimize . if ${MOZILLA_VER:R:R} >= 56 . if ${/usr/bin/ld:L:tA} != /usr/bin/ld.lld # ld 2.17 barfs on Stylo built with -C opt-level=0 USE_BINUTILS= yes LDFLAGS+= -B${LOCALBASE}/bin . endif . endif .endif .if ${PORT_OPTIONS:MCANBERRA} RUN_DEPENDS+= libcanberra>0:audio/libcanberra .endif .if ${PORT_OPTIONS:MDBUS} BUILD_DEPENDS+= libnotify>0:devel/libnotify LIB_DEPENDS+= libdbus-1.so:devel/dbus \ libdbus-glib-1.so:devel/dbus-glib \ libstartup-notification-1.so:x11/startup-notification MOZ_OPTIONS+= --enable-startup-notification .else MOZ_OPTIONS+= --disable-dbus .endif .if ${PORT_OPTIONS:MFFMPEG} # dom/media/platforms/ffmpeg/FFmpegRuntimeLinker.cpp RUN_DEPENDS+= ffmpeg>=0.8,1:multimedia/ffmpeg .endif .if ${PORT_OPTIONS:MGCONF} USE_GNOME+= gconf2 MOZ_OPTIONS+= --enable-gconf .else MOZ_OPTIONS+= --disable-gconf .endif .if ${PORT_OPTIONS:MLIBPROXY} LIB_DEPENDS+= libproxy.so:net/libproxy MOZ_OPTIONS+= --enable-libproxy .else MOZ_OPTIONS+= --disable-libproxy .endif .if ${PORT_OPTIONS:MALSA} LIB_DEPENDS+= libasound.so:audio/alsa-lib RUN_DEPENDS+= ${LOCALBASE}/lib/alsa-lib/libasound_module_pcm_oss.so:audio/alsa-plugins RUN_DEPENDS+= alsa-lib>=1.1.1_1:audio/alsa-lib MOZ_OPTIONS+= --enable-alsa .endif .if ${PORT_OPTIONS:MJACK} BUILD_DEPENDS+= ${LOCALBASE}/include/jack/jack.h:audio/jack MOZ_OPTIONS+= --enable-jack .endif .if ${PORT_OPTIONS:MPULSEAUDIO} BUILD_DEPENDS+= ${LOCALBASE}/include/pulse/pulseaudio.h:audio/pulseaudio MOZ_OPTIONS+= --enable-pulseaudio .else MOZ_OPTIONS+= --disable-pulseaudio .endif .if ${PORT_OPTIONS:MSNDIO} LIB_DEPENDS+= libsndio.so:audio/sndio post-patch-SNDIO-on: @${REINPLACE_CMD} -e 's|OpenBSD|${OPSYS}|g' \ ${MOZSRC}/media/libcubeb/src/moz.build \ ${MOZSRC}/toolkit/library/moz.build . for tests in tests gtest @if [ -f "${MOZSRC}/media/libcubeb/${tests}/moz.build" ]; then \ ${REINPLACE_CMD} -e 's|OpenBSD|${OPSYS}|g' \ ${MOZSRC}/media/libcubeb/${tests}/moz.build; \ fi . endfor @if [ -f "${MOZSRC}/media/webrtc/trunk/webrtc/build/common.gypi" ]; then \ ${REINPLACE_CMD} -e 's|OS==\"openbsd\"|OS==\"${OPSYS:tl}\"|g' \ ${MOZSRC}/media/webrtc/trunk/webrtc/build/common.gypi; \ fi @if [ -f "${MOZSRC}/media/webrtc/signaling/test/common.build" ]; then \ ${ECHO_CMD} "OS_LIBS += ['sndio']" >> \ ${MOZSRC}/media/webrtc/signaling/test/common.build; \ fi .endif .if ${PORT_OPTIONS:MRUST} || ${MOZILLA_VER:R:R} >= 54 BUILD_DEPENDS+= ${RUST_DEFAULT}>=1.30:lang/${RUST_DEFAULT} . if ${MOZILLA_VER:R:R} < 54 MOZ_OPTIONS+= --enable-rust . endif .else MOZ_OPTIONS+= --disable-rust .endif .if ${PORT_OPTIONS:MDEBUG} MOZ_OPTIONS+= --enable-debug --disable-release STRIP= # ports/184285 .else MOZ_OPTIONS+= --disable-debug --disable-debug-symbols --enable-release . if ${MOZILLA_VER:R:R} >= 67 && (${ARCH:Maarch64} || ${MACHINE_CPU:Msse2}) MOZ_OPTIONS+= --enable-rust-simd . endif .endif .if ${PORT_OPTIONS:MPROFILE} MOZ_OPTIONS+= --enable-profiling STRIP= .else MOZ_OPTIONS+= --disable-profiling .endif .if ${PORT_OPTIONS:MTEST} USE_XORG+= xscrnsaver MOZ_OPTIONS+= --enable-tests .else MOZ_OPTIONS+= --disable-tests .endif .if !defined(STRIP) || ${STRIP} == "" MOZ_OPTIONS+= --disable-strip --disable-install-strip .else MOZ_OPTIONS+= --enable-strip --enable-install-strip .endif # _MAKE_JOBS is only available after bsd.port.post.mk, thus cannot be # used in .mozconfig. And client.mk automatically uses -jN where N # is what multiprocessing.cpu_count() returns. .if defined(DISABLE_MAKE_JOBS) || defined(MAKE_JOBS_UNSAFE) MAKE_JOBS_NUMBER= 1 .endif .if defined(MAKE_JOBS_NUMBER) MOZ_MAKE_FLAGS+=-j${MAKE_JOBS_NUMBER} .endif .if defined(MOZ_MAKE_FLAGS) MOZ_MK_OPTIONS+=MOZ_MAKE_FLAGS="${MOZ_MAKE_FLAGS}" .endif MOZ_SED_ARGS+= -e's|@CPPFLAGS@|${CPPFLAGS}|g' \ -e 's|@CFLAGS@|${CFLAGS}|g' \ -e 's|@LDFLAGS@|${LDFLAGS}|g' \ -e 's|@LIBS@|${LIBS}|g' \ -e 's|@LOCALBASE@|${LOCALBASE}|g' \ -e 's|@PERL@|${PERL}|g' \ -e 's|@MOZDIR@|${PREFIX}/lib/${MOZILLA}|g' \ -e 's|%%PREFIX%%|${PREFIX}|g' \ -e 's|%%CFLAGS%%|${CFLAGS}|g' \ -e 's|%%LDFLAGS%%|${LDFLAGS}|g' \ -e 's|%%LIBS%%|${LIBS}|g' \ -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \ -e 's|%%PERL%%|${PERL}|g' \ -e 's|%%MOZILLA%%|${MOZILLA}|g' \ -e 's|%%MOZILLA_BIN%%|${MOZILLA_BIN}|g' \ -e 's|%%MOZDIR%%|${PREFIX}/lib/${MOZILLA}|g' MOZCONFIG_SED?= ${SED} ${MOZ_SED_ARGS} .if ${ARCH} == amd64 . if ${USE_MOZILLA:M-nss} USE_BINUTILS= # intel-gcm.s CFLAGS+= -B${LOCALBASE}/bin LDFLAGS+= -B${LOCALBASE}/bin . endif .elif ${ARCH:Mpowerpc*} . if ${ARCH} == "powerpc64" MOZ_EXPORT+= UNAME_m="${ARCH}" CFLAGS+= -mminimal-toc . endif .elif ${ARCH} == "sparc64" # Work around miscompilation/mislinkage of the sCanonicalVTable hacks. MOZ_OPTIONS+= --disable-v1-string-abi .endif .else # bsd.port.post.mk post-patch: gecko-post-patch gecko-moz-pis-patch gecko-post-patch: .if exists(${PKGINSTALL_INC}) @${MOZCONFIG_SED} < ${PKGINSTALL_INC} > ${PKGINSTALL} .endif .if exists(${PKGDEINSTALL_INC}) @${MOZCONFIG_SED} < ${PKGDEINSTALL_INC} > ${PKGDEINSTALL} .endif @${RM} ${MOZCONFIG} .if !defined(NOMOZCONFIG) @if [ -e ${PORT_MOZCONFIG} ] ; then \ ${MOZCONFIG_SED} < ${PORT_MOZCONFIG} >> ${MOZCONFIG} ; \ fi .for arg in ${MOZ_OPTIONS} @${ECHO_CMD} ac_add_options ${arg:Q} >> ${MOZCONFIG} .endfor .for arg in ${MOZ_MK_OPTIONS} @${ECHO_CMD} mk_add_options ${arg:Q} >> ${MOZCONFIG} .endfor .for var in ${MOZ_EXPORT} @${ECHO_CMD} export ${var:Q} >> ${MOZCONFIG} .endfor .endif # .if !defined(NOMOZCONFIG) .if exists(${MOZSRC}/build/unix/mozilla-config.in) @${REINPLACE_CMD} -e 's/%{idldir}/%idldir%/g ; \ s|"%FULL_NSPR_CFLAGS%"|`nspr-config --cflags`|g ; \ s|"%FULL_NSPR_LIBS%"|`nspr-config --libs`|g' \ ${MOZSRC}/build/unix/mozilla-config.in .endif .if ${USE_MOZILLA:M-nspr} @${ECHO_MSG} "===> Applying NSPR patches" @for i in ${.CURDIR}/../../devel/nspr/files/patch-*; do \ ${PATCH} ${PATCH_ARGS} -d ${MOZSRC}/nsprpub < $$i; \ done .endif .if ${USE_MOZILLA:M-nss} @${ECHO_MSG} "===> Applying NSS patches" @for i in ${.CURDIR}/../../security/nss/files/patch-*; do \ ${PATCH} ${PATCH_ARGS} -d ${MOZSRC}/security/nss < $$i; \ done .endif @if [ -f ${WRKSRC}/config/baseconfig.mk ] ; then \ ${REINPLACE_CMD} -e 's|%%MOZILLA%%|${MOZILLA}|g' \ ${WRKSRC}/config/baseconfig.mk; \ fi @${REINPLACE_CMD} -e 's|%%MOZILLA%%|${MOZILLA}|g' \ ${MOZSRC}/config/baseconfig.mk @${REINPLACE_CMD} -e 's|/usr/local/netscape|${LOCALBASE}|g ; \ s|/usr/local/lib/netscape|${LOCALBASE}/lib|g' \ ${MOZSRC}/xpcom/io/SpecialSystemDirectory.cpp @${REINPLACE_CMD} -e 's|/etc|${PREFIX}&|g' \ ${MOZSRC}/xpcom/build/nsXPCOMPrivate.h @${REINPLACE_CMD} -e 's|/usr/local|${LOCALBASE}|g' \ -e 's|mozilla/plugins|browser_plugins|g' \ -e 's|share/mozilla/extensions|lib/xpi|g' \ ${MOZSRC}/xpcom/io/nsAppFileLocationProvider.cpp \ ${MOZSRC}/toolkit/xre/nsXREDirProvider.cpp .if ${MOZILLA_VER:R:R} < 61 @${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \ ${MOZSRC}/extensions/spellcheck/hunspell/*/mozHunspell.cpp .endif # handles mozilla pis scripts. gecko-moz-pis-patch: .for moz in ${MOZ_PIS_SCRIPTS} @${MOZCONFIG_SED} < ${FILESDIR}/${moz} > ${WRKDIR}/${moz} .endfor pre-configure: gecko-pre-configure gecko-pre-configure: .if ${PORT_OPTIONS:MWAYLAND} # .if !exists() evaluates too early before gtk3 has a chance to be installed @if ! pkg-config --exists gtk+-wayland-3.0; then \ ${ECHO_MSG} "${PKGNAME}: Needs gtk3 with WAYLAND support enabled."; \ ${FALSE}; \ fi .endif pre-install: gecko-moz-pis-pre-install post-install-script: gecko-create-plist gecko-create-plist: # Create the plist ${RM} ${PLISTF} .for dir in ${MOZILLA_PLIST_DIRS} @cd ${STAGEDIR}${PREFIX}/${dir} && ${FIND} -H -s * ! -type d | \ ${SED} -e 's|^|${dir}/|' >> ${PLISTF} .endfor ${CAT} ${PLISTF} | ${SORT} >> ${TMPPLIST} gecko-moz-pis-pre-install: .if defined(MOZ_PIS_SCRIPTS) ${MKDIR} ${STAGEDIR}${PREFIX}/${MOZ_PIS_DIR} .for moz in ${MOZ_PIS_SCRIPTS} ${INSTALL_SCRIPT} ${WRKDIR}/${moz} ${STAGEDIR}${PREFIX}/${MOZ_PIS_DIR} .endfor .endif .endif .endif # HERE THERE BE TACOS -- adamw Index: head/Mk/bsd.ssp.mk =================================================================== --- head/Mk/bsd.ssp.mk (revision 499896) +++ head/Mk/bsd.ssp.mk (revision 499897) @@ -1,17 +1,12 @@ # $FreeBSD$ # SSP Support SSP_Include_MAINTAINER= portmgr@FreeBSD.org .if !defined(SSP_UNSAFE) && \ - (${ARCH} == i386 || ${ARCH} == amd64) + (${MACHINE} != "mips") # Overridable as a user may want to use -fstack-protector-all -SSP_CFLAGS?= -fstack-protector +SSP_CFLAGS?= -fstack-protector-strong CFLAGS+= ${SSP_CFLAGS} -LDFLAGS+= -fstack-protector -# -lssp_nonshared is needed on i386 where /usr/lib/libc.so is not an ldscript -# This is currently unused XXX -. if defined(SSP_NEED_NONSHARED) -LDFLAGS+= -lssp_nonshared -. endif +LDFLAGS+= ${SSP_CFLAGS} .endif Index: head/audio/linux-skype_oss_wrapper/Makefile =================================================================== --- head/audio/linux-skype_oss_wrapper/Makefile (revision 499896) +++ head/audio/linux-skype_oss_wrapper/Makefile (revision 499897) @@ -1,37 +1,38 @@ # Created by: Andriy Voskoboinyk # $FreeBSD$ PORTNAME= skype_oss_wrapper PORTVERSION= 0.1.1 DISTVERSIONPREFIX= v CATEGORIES= audio linux PKGNAMEPREFIX= linux- MAINTAINER= s3erios@gmail.com COMMENT= Partial PulseAudio API implementation using OSS backend LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE DEPRECATED= Only useful for net-im/skype4 EXPIRATION_DATE= 2019-04-30 USE_GITHUB= yes GH_ACCOUNT= s3erios MAKE_ARGS= CC=${LINUXBASE}/usr/bin/gcc USES= linux USE_LINUX= base devtools:build USE_LINUX_PREFIX= yes # do not define USE_LDCONFIG, it's not for global use +SSP_CFLAGS?= -fstack-protector # XXX -strong isn't supported by GCC < 4.9 ONLY_FOR_ARCHS= i386 amd64 PLIST_FILES= lib/skype_oss_wrapper/libpulse.so.0 LIB_DIR= ${PREFIX}/lib/${PORTNAME} post-install: ${RM} ${STAGEDIR}${PREFIX}/bin/skype_oss ${RMDIR} ${STAGEDIR}${PREFIX}/bin .include Index: head/devel/linux_libusb/Makefile =================================================================== --- head/devel/linux_libusb/Makefile (revision 499896) +++ head/devel/linux_libusb/Makefile (revision 499897) @@ -1,81 +1,82 @@ # Created by: nox@FreeBSD.org # $FreeBSD$ PORTNAME= linux_libusb PORTVERSION= 11.0r${FSVN_REV} PORTREVISION= 2 CATEGORIES= devel linux MASTER_SITES= LOCAL/nox MAINTAINER= emulation@FreeBSD.org COMMENT= Linux-compatibility libusb BUILD_DEPENDS= ${LINUXBASE}/usr/bin/gcc:devel/linux-c6-devtools USES= tar:bzip2 ONLY_FOR_ARCHS= i386 amd64 USE_LDCONFIG= yes USE_LINUX_PREFIX= yes PLIST_FILES= usr/lib/libusb.so \ usr/lib/libusb-0.1.so.4 CC= ${LINUXBASE}/usr/bin/gcc CFLAGS+= -I${WRKDIR}/sys +SSP_CFLAGS?= -fstack-protector # XXX -strong isn't supported by GCC < 4.9 MAKE_ARGS+= LIBUSB_GLOBAL_INCLUDE_FILE=libusb_global_linux.h MAKE_ARGS+= PTHREAD_LIBS="-lpthread -lrt" MAKE_ARGS+= WITHOUT_SSP=yes # XXX ${LINUXBASE}/usr/bin/ld is a broken link with gentoo atm? #MAKE_ENV+= COMPILER_PATH=/usr/i486-pc-linux-gnu/binutils-bin/2.22 # see: sysutils/pc-sysinstall/Makefile FSVN_REV= 261448 FSVNPATH?= http://svn.freebsd.org/base/head FSVNDIR= lib/libusb .include .if ${ARCH} == "amd64" MAKE_ARGS+= COMPAT_32BIT=YES .endif pre-everything:: @${ECHO_MSG} '===> Using the FreeBSD source tree under ${SRC_BASE}' @${ECHO_MSG} '===> Set SRC_BASE to use an alternate source tree' .if !exists(${SRC_BASE}/sys/i386/linux/syscalls.master) IGNORE= requires kernel source present in ${SRC_BASE}/sys .endif #.if !exists(${SRC_BASE}/lib/libusb/Makefile) #IGNORE= requires libusb source present in ${SRC_BASE}/lib/libusb #.endif #.if exists(${LINUXBASE}/etc/fedora-release) #IGNORE= does not build with the default linux base, use the package instead #.endif post-patch: ${MKDIR} ${WRKDIR}/sys ${LN} -s ${SRC_BASE}/sys/compat ${SRC_BASE}/sys/dev ${WRKDIR}/sys # XXX: Due to problems with ports/ infrastructure, we don't seem to be able # to symlink files. I provide hardlink instead. If fixed, remember to remove # link name from PLIST_FILES. do-install: ${MKDIR} ${STAGEDIR}${PREFIX}/usr/lib ${INSTALL_DATA} ${WRKSRC}/libusb.so ${STAGEDIR}${PREFIX}/usr/lib # Xilinx ISE requirement. ${LN} -f ${STAGEDIR}${PREFIX}/usr/lib/libusb.so ${STAGEDIR}${PREFIX}/usr/lib/libusb-0.1.so.4 .if defined(BOOTSTRAP) || defined(SVN_FETCH) #FETCH_DEPENDS+= svn:devel/subversion SVN?= svnlite do-fetch: ${MKDIR} ${WRKDIR} ${SVN} export -r ${FSVN_REV} ${FSVNPATH}/${FSVNDIR} ${WRKDIR}/${DISTNAME} cd ${WRKDIR}; tar cvfy ${DISTDIR}/${DISTNAME}.tar.bz2 ${DISTNAME} .if ${USER} == noxNOTYET scp ${DISTDIR}/${DISTNAME}.tar.bz2 \ nox@freefall.freebsd.org:public_distfiles/ .endif .endif .include Index: head/devel/mingw32-libyaml/Makefile =================================================================== --- head/devel/mingw32-libyaml/Makefile (revision 499896) +++ head/devel/mingw32-libyaml/Makefile (revision 499897) @@ -1,26 +1,27 @@ # Created by: Akinori MUSHA aka knu # $FreeBSD$ PORTNAME= libyaml PORTVERSION= 0.1.6 PORTREVISION= 2 CATEGORIES= devel textproc MASTER_SITES= http://pyyaml.org/download/libyaml/ PKGNAMEPREFIX= mingw32- DISTNAME= yaml-${PORTVERSION} DIST_SUBDIR= repacked MAINTAINER= knu@FreeBSD.org COMMENT= The libyaml library cross-compiled for MinGW32 BUILD_DEPENDS= ${PKGNAMEPREFIX}gcc:devel/${PKGNAMEPREFIX}gcc \ ${LOCALBASE}/mingw32/include/stdlib.h:devel/${PKGNAMEPREFIX}bin-msvcrt GNU_CONFIGURE= yes GNU_CONFIGURE_PREFIX= ${PREFIX}/mingw32 CONFIGURE_ARGS= --host="mingw32" CC= ${PKGNAMEPREFIX}gcc CFLAGS= -O3 # Override CFLAGS for a cross-build +SSP_CFLAGS?= -fstack-protector # XXX -strong isn't supported by GCC < 4.9 USES= libtool .include Index: head/devel/psptoolchain-gcc-stage1/Makefile =================================================================== --- head/devel/psptoolchain-gcc-stage1/Makefile (revision 499896) +++ head/devel/psptoolchain-gcc-stage1/Makefile (revision 499897) @@ -1,73 +1,74 @@ # Created by: Tassilo Philipp # $FreeBSD$ PORTNAME= gcc PORTVERSION= 4.6.2 PORTREVISION?= 5 CATEGORIES= devel MASTER_SITES= GCC/releases/${DISTNAME} PKGNAMEPREFIX= psptoolchain- PKGNAMESUFFIX?= -stage1 MAINTAINER= tphilipp@potion-studios.com COMMENT= PlayStation Portable development toolchain ${PORTNAME} ONLY_FOR_ARCHS= amd64 i386 powerpc64 LIB_DEPENDS= libgmp.so:math/gmp \ libmpfr.so:math/mpfr \ libmpc.so:math/mpc PSP_GCC_STAGE_PREFIX= psp/stage1 BUILD_DEPENDS+= psp-addr2line:devel/psptoolchain-binutils \ psp-ar:devel/psptoolchain-binutils \ psp-as:devel/psptoolchain-binutils \ psp-c++filt:devel/psptoolchain-binutils \ psp-ld:devel/psptoolchain-binutils \ psp-nm:devel/psptoolchain-binutils \ psp-objcopy:devel/psptoolchain-binutils \ psp-objdump:devel/psptoolchain-binutils \ psp-ranlib:devel/psptoolchain-binutils \ psp-readelf:devel/psptoolchain-binutils \ psp-size:devel/psptoolchain-binutils \ psp-strings:devel/psptoolchain-binutils \ psp-strip:devel/psptoolchain-binutils USES= gmake libtool tar:bzip2 MAKE_ENV+= PATH=${LOCALBASE}/${PSP_GCC_STAGE_PREFIX}/bin:${PREFIX}/bin:${PATH} HAS_CONFIGURE= yes CONFIGURE_OUTSOURCE= yes CONFIGURE_ARGS?= --prefix=${PREFIX}/${PSP_GCC_STAGE_PREFIX} \ --target="psp" \ --enable-languages="c" \ --enable-lto \ --with-newlib \ --with-gmp=${LOCALBASE} \ --with-mpfr \ --without-headers \ --disable-libssp \ --disable-nls \ --with-ld=${LOCALBASE}/bin/psp-ld \ --with-as=${LOCALBASE}/bin/psp-as \ --mandir=${PREFIX}/man +SSP_CFLAGS?= -fstack-protector # XXX -strong isn't supported by GCC < 4.9 # Don't install any documentation for psptoolchain's gcc stage 1 - makes no sense. # Disable installation of .info files and libiberty for both stages. post-patch: @${REINPLACE_CMD} -E "s/^(install-data-am:)(.*)install-info-am(.*)/\1 \2 \3/" \ ${PATCH_WRKSRC}/libquadmath/Makefile.in @${REINPLACE_CMD} -E "s/^(install:)(.*)/\1#\2/" ${PATCH_WRKSRC}/libiberty/Makefile.in @${REINPLACE_CMD} -E \ -e "/^ \\$$\(mkinstalldirs\) \\$$\(DESTDIR\)\\$$\((infodir|man7dir)\)/d" \ -e "s/^(install-info:)(.*)/\1#\2/" \ -e "/^ \\$$\(DESTDIR\)\\$$\(man7dir\)\/(fsf-funding|gfdl|gpl)\\$$\(man7ext\)/d" \ ${PATCH_WRKSRC}/gcc/Makefile.in .if ${PKGNAMESUFFIX} == "-stage1" @${REINPLACE_CMD} -E "s/^(install-man:)(.*)/\1#\2/" ${PATCH_WRKSRC}/gcc/Makefile.in .endif PLIST_SUB+= PSP_GCC_STAGE_PREFIX=${PSP_GCC_STAGE_PREFIX} .include Index: head/devel/psptoolchain-newlib/Makefile =================================================================== --- head/devel/psptoolchain-newlib/Makefile (revision 499896) +++ head/devel/psptoolchain-newlib/Makefile (revision 499897) @@ -1,43 +1,44 @@ # Created by: Tassilo Philipp # $FreeBSD$ PORTNAME= newlib PORTVERSION= 1.20.0 PORTREVISION= 2 CATEGORIES= devel MASTER_SITES= ftp://sources.redhat.com/pub/ \ SOURCEWARE/${PORTNAME} PKGNAMEPREFIX= psptoolchain- MAINTAINER= tphilipp@potion-studios.com COMMENT= PlayStation Portable development toolchain ${PORTNAME} PSP_GCC_STAGE_PREFIX= psp/stage1 PSP_SDK_STAGE_PREFIX= psp/stage1 BUILD_DEPENDS+= ${LOCALBASE}/${PSP_SDK_STAGE_PREFIX}/sdk/include/pspsdk.h:devel/psptoolchain-pspsdk-stage1 \ psp-ar:devel/psptoolchain-binutils \ psp-as:devel/psptoolchain-binutils \ psp-ld:devel/psptoolchain-binutils \ ${LOCALBASE}/${PSP_GCC_STAGE_PREFIX}/bin/psp-gcc:devel/psptoolchain-gcc-stage1 USES= gmake makeinfo HAS_CONFIGURE= yes # psp-gcc doesn't need -march=... in CFLAGS (e.g. set by CPUTYPE in make.conf); also need -g on psp for some reason CONFIGURE_ENV= PATH=${LOCALBASE}/${PSP_GCC_STAGE_PREFIX}/bin:${PATH} \ CFLAGS="${CFLAGS:C/(^|[[:space:]])-march=[^[:space:]]*//g} -g" MAKE_ENV= PATH=${LOCALBASE}/${PSP_GCC_STAGE_PREFIX}/bin:${PATH} CONFIGURE_ARGS= --prefix=${PREFIX} --target="psp" +SSP_CFLAGS?= -fstack-protector # XXX -strong isn't supported by GCC < 4.9 # Disable installation of .info files and fix includedir reference. post-patch: @${REINPLACE_CMD} -E 's/^(install.*:.*)install-info(.*)/\1\2/' ${WRKSRC}/etc/Makefile.in @${REINPLACE_CMD} -E 's#(-I\$$\{prefix}/)psp(/sdk/include)#-I${LOCALBASE}/${PSP_SDK_STAGE_PREFIX:S,/,\\/,}\2#' ${WRKSRC}/newlib/configure.host # Rename installed crt0.o as real crt0.o used by PSP code comes with psptoolchain-pspsdk-stage2 # and would overwrite the one from this port. post-install: @${MV} ${STAGEDIR}${PREFIX}/psp/lib/crt0.o ${STAGEDIR}${PREFIX}/psp/lib/crt0.newlib.o .include Index: head/devel/psptoolchain-pspsdk-stage2/Makefile =================================================================== --- head/devel/psptoolchain-pspsdk-stage2/Makefile (revision 499896) +++ head/devel/psptoolchain-pspsdk-stage2/Makefile (revision 499897) @@ -1,25 +1,26 @@ # Created by: Tassilo Philipp # $FreeBSD$ PORTREVISION= 2 PKGNAMESUFFIX= -stage2 MAINTAINER= tphilipp@potion-studios.com COMMENT= PlayStation Portable development toolchain ${PORTNAME} BUILD_DEPENDS= psp-cpp:devel/psptoolchain-gcc-stage2 \ psp-gcc:devel/psptoolchain-gcc-stage2 \ psp-gcov:devel/psptoolchain-gcc-stage2 \ psp-g++:devel/psptoolchain-gcc-stage2 \ psp-ar:devel/psptoolchain-binutils \ ${LOCALBASE}/psp/lib/libc.a:devel/psptoolchain-newlib # psp-gcc doesn't need -march=... in CFLAGS (e.g. set by CPUTYPE in make.conf) CONFIGURE_ENV= CFLAGS="${CFLAGS:C/(^|[[:space:]])-march=[^[:space:]]*//g}" CONFIGURE_ARGS= --prefix=${PREFIX} --with-pspdev="${LOCALBASE}" +SSP_CFLAGS?= -fstack-protector # XXX -strong isn't supported by GCC < 4.9 PLIST= ${.CURDIR}/pkg-plist MASTERDIR= ${.CURDIR}/../psptoolchain-pspsdk-stage1 .include "${MASTERDIR}/Makefile" Index: head/lang/gnu-cobol/Makefile =================================================================== --- head/lang/gnu-cobol/Makefile (revision 499896) +++ head/lang/gnu-cobol/Makefile (revision 499897) @@ -1,41 +1,42 @@ # Created by: ijliao # $FreeBSD$ PORTNAME= gnu-cobol PORTVERSION= 2.2 PORTREVISION= 1 CATEGORIES= lang MASTER_SITES= GNU/gnucobol DISTNAME= gnucobol-${PORTVERSION} MAINTAINER= johans@FreeBSD.org COMMENT= Open-source COBOL compiler LICENSE= GPLv3 LGPL3 LICENSE_COMB= multi LIB_DEPENDS= libgmp.so:math/gmp USES= bdb gmake libtool ncurses tar:xz USE_LDCONFIG= yes GNU_CONFIGURE= yes INFO= gnucobol DATADIR= ${PREFIX}/share/gnucobol INSTALL_TARGET= install-strip +SSP_CFLAGS?= -fstack-protector # XXX -strong fails to build CPPFLAGS+= -I${BDB_INCLUDE_DIR} -I${LOCALBASE}/include LDFLAGS+= -L${LOCALBASE}/lib OPTIONS_DEFINE= NLS OPTIONS_SUB= yes NLS_USES= gettext CONFIGURE_ENABLE=nls post-patch: @${REINPLACE_CMD} -e 's|__gmp_randinit|__gmpz_init|g ; \ s|db-4.[0-9]|${BDB_LIB_NAME}|g ; \ s|-lcurses|-lncurses|g ; \ s|-R$$found_dir|-Wl,-rpath,$$found_dir|g' ${WRKSRC}/configure .include Index: head/lang/mlton/Makefile =================================================================== --- head/lang/mlton/Makefile (revision 499896) +++ head/lang/mlton/Makefile (revision 499897) @@ -1,190 +1,191 @@ # Created by: Stephen Weeks # $FreeBSD$ # Previouly maintained by Jesper Louis Andersen # (jesper.louis.andersen@gmail.com) and Geoffrey Mainland # (mainland@apeiron.net) # # Because MLton is written in SML, it needs an SML compiler to build. # It is easiest to use another (earlier) binary version of MLton as # the SML compiler. So, this Makefile fetches and installs an # alread-built version of MLton, BOOT_DIST, to use for bootstrapping. PORTNAME= mlton PORTVERSION= 20100608 PORTREVISION= 7 CATEGORIES= lang MASTER_SITES= SF http://www.tbrk.org/distfiles/ DISTFILES= ${SRC_DIST} ${BOOT_DIST} EXTRACT_ONLY= ${SRC_DIST} MAINTAINER= beyert@cs.ucr.edu COMMENT= Optimizing Standard ML compiler LIB_DEPENDS= libgmp.so:math/gmp RUN_DEPENDS= bash:shells/bash BUILD_DEPENDS= bash:shells/bash LICENSE_FILE= doc/license/MLton-LICENSE OPTIONS_DEFINE= SMLNJ MINGW32 DOCS SMLNJ_DESC= Bootstrap with SML/NJ (can take >15 hours) MINGW32_DESC= Add the mingw32 target (requires wine) MAKE_JOBS_UNSAFE= yes USES= gmake shebangfix USE_GCC= any .include .if ${PORT_OPTIONS:MDOCS} BUILD_DEPENDS+= gsed:textproc/gsed \ htmldoc:textproc/htmldoc USE_TEX= latex:build .else INSTALL_TARGET= install-no-docs remove-docs ALL_TARGET= all-no-docs .endif SRC_DIST= ${DISTNAME}.src.tgz .if ${PORT_OPTIONS:MSMLNJ} BROKEN= ${DISTNAME}-${PORTVERSION} does not bootstrap properly with smlnj .endif .if ${PORT_OPTIONS:MSMLNJ} BUILD_DEPENDS+= smlnj>=110.65:lang/smlnj BOOT_DIST= MAKE_ENV+= SMLNJ_DEVEL=yes .if ! ${PORT_OPTIONS:MDOCS} ALL_TARGET= smlnj-mlton all-no-docs .else ALL_TARGET= smlnj-mlton all .endif .else BOOT_DIST= ${PORTNAME}-${PORTVERSION}-1.${MACHINE_ARCH}-freebsd${OSRELMAJ}.${BOOT_SUF} .endif .if ${PORT_OPTIONS:MMINGW32} BUILD_DEPENDS+= wine:emulators/wine \ mingw32-gcc:devel/mingw32-gcc \ ${LOCALBASE}/mingw32/lib/libgmp.a:math/mingw32-libgmp RUN_DEPENDS+= mingw32-gcc:devel/mingw32-gcc \ ${LOCALBASE}/mingw32/lib/libgmp.a:math/mingw32-libgmp +SSP_CFLAGS?= -fstack-protector # XXX -strong isn't supported by GCC < 4.9 PLIST_SUB+= MINGW32CROSS="" .else PLIST_SUB+= MINGW32CROSS="@comment " .endif # MINGW32 requires wine, which doesn't have an official amd64 port .if ${PORT_OPTIONS:MSMLNJ} || ${PORT_OPTIONS:MMINGW32} ONLY_FOR_ARCHS= i386 .else ONLY_FOR_ARCHS= i386 amd64 .endif BOOT_WRKSRC= ${WRKDIR}/mlton-bootstrap MAKE_ARGS= DESTDIR='' \ PATH=${WRKSRC}/build/bin:${BOOT_WRKSRC}/bin:${PATH} \ PREFIX=${PREFIX} .if ${ARCH} == "i386" MLTON_ARCH= "x86" .elif ${ARCH} == "amd64" MLTON_ARCH= "x64" .endif BOOT_EXTRACT= --bzip2 BOOT_SUF= tbz post-extract: @${CP} ${FILESDIR}/add-local-cross ${WRKSRC}/bin/ @${CHMOD} 755 ${WRKSRC}/bin/add-local-cross .if ${PORT_OPTIONS:MSMLNJ} @${CP} ${FILESDIR}/upgrade-basis.sml ${WRKSRC}/mlton/ @for f in `ls ${FILESDIR}/ml.* ${FILESDIR}/mlb.*`; do \ ${CP} $$f ${WRKSRC}/mlton/front-end/; \ done @for f in `ls ${FILESDIR}/yacc.*`; do \ ${CP} $$f ${WRKSRC}/mlyacc/src/; \ done .else @${MKDIR} ${BOOT_WRKSRC} @${TAR} xf ${DISTDIR}/${BOOT_DIST} ${BOOT_EXTRACT} -C ${BOOT_WRKSRC} .endif post-patch: @${REINPLACE_CMD} 's/CC := gcc -std=gnu99/CC := ${CC} -std=gnu99/g' \ ${WRKSRC}/runtime/Makefile \ ${BOOT_WRKSRC}/lib/mlton/sml/mlnlffi-lib/Makefile @${REINPLACE_CMD} 's/gcc -v/${CC} -v/g' ${WRKSRC}/runtime/util/Makefile @${REINPLACE_CMD} 's/CC = gcc -std=gnu99/CC = ${CC} -std=gnu99/g' ${WRKSRC}/runtime/util/Makefile .if ${ARCH} == "i386" @${REINPLACE_CMD} 's/ram-slop 0\.7/max-heap 800m/g' ${WRKSRC}/mlton/Makefile .else @${REINPLACE_CMD} 's/ram-slop 0\.7/max-heap 2g/g' ${WRKSRC}/mlton/Makefile .endif .if ! ${PORT_OPTIONS:MSMLNJ} @${REINPLACE_CMD} -e \ "s|/usr/local/lib/mlton|${BOOT_WRKSRC}/lib/mlton|;s|/usr/local|${LOCALBASE}|" \ ${BOOT_WRKSRC}/bin/mlton @${REINPLACE_CMD} -e "s|"$$"dir/../lib/mlton|${BOOT_WRKSRC}/lib/mlton|" \ ${BOOT_WRKSRC}/bin/mlton @${REINPLACE_CMD} -e "s|"$$"dir/../lib|${BOOT_WRKSRC}/lib/mlton|" \ ${WRKSRC}/bin/mlton-script .endif @${REINPLACE_CMD} -e "s|no-mllex|${BOOT_WRKSRC}/bin/mllex|" \ ${WRKSRC}/mlton/front-end/Makefile \ ${WRKSRC}/mlyacc/Makefile @${REINPLACE_CMD} -e "s|no-mlyacc|${BOOT_WRKSRC}/bin/mlyacc|" \ ${WRKSRC}/mlton/front-end/Makefile \ ${WRKSRC}/mlyacc/Makefile @${REINPLACE_CMD} -e "s|! mlton |! ${BOOT_WRKSRC}/bin/mlton |" \ ${WRKSRC}/bin/upgrade-basis @${REINPLACE_CMD} -e \ "s|/usr/local|${LOCALBASE}|" \ ${WRKSRC}/runtime/Makefile \ ${WRKSRC}/runtime/bytecode/Makefile \ ${WRKSRC}/runtime/cenv.h \ ${WRKSRC}/bin/add-cross \ ${WRKSRC}/bin/add-local-cross \ ${WRKSRC}/bin/regression \ ${WRKSRC}/bin/mlton-script \ ${WRKSRC}/doc/guide/PortingMLton \ ${WRKSRC}/doc/guide/SelfCompiling \ ${WRKSRC}/doc/guide/Installation \ ${WRKSRC}/regression/parse.sml @${REINPLACE_CMD} -e \ "s|gcc|${CC}|" \ ${WRKSRC}/bin/add-cross \ ${WRKSRC}/bin/regression \ ${WRKSRC}/lib/mlnlffi-lib/Makefile \ ${WRKSRC}/mlnlffigen/gen-cppcmd \ ${WRKSRC}/mlnlffigen/README \ ${BOOT_WRKSRC}/lib/mlton/sml/mlrisc-lib/c-call/test/Makefile \ ${BOOT_WRKSRC}/lib/mlton/sml/mlrisc-lib/c-call/varargs/interp/Makefile @${REINPLACE_CMD} -e \ "s|'gcc'|'${CC}'|" \ ${WRKSRC}/bin/mlton-script \ ${BOOT_WRKSRC}/bin/mlton .if ! ${PORT_OPTIONS:MSMLNJ} @${REINPLACE_CMD} -e "s|/usr/local|${LOCALBASE}|" \ ${BOOT_WRKSRC}/lib/mlton/include/cenv.h .endif @${RM} ${WRKSRC}/doc/guide/PortingMLton.bak \ ${WRKSRC}/doc/guide/SelfCompiling.bak \ ${WRKSRC}/doc/guide/Installation.bak post-build: @${REINPLACE_CMD} -i '' -e '1s|/usr/bin/perl|${perl_CMD}|' \ ${WRKSRC}/build/lib/sml/mlrisc-lib/cm/makecm \ ${WRKSRC}/build/lib/sml/mlrisc-lib/cm/makeallcm \ ${WRKSRC}/build/lib/sml/mlrisc-lib/Doc/html/mltex2html post-build-MINGW32-on: @${ECHO} Adding mingw32 target... ${WRKSRC}/bin/add-local-cross mingw32 x86 mingw .include Index: head/math/gretl/Makefile =================================================================== --- head/math/gretl/Makefile (revision 499896) +++ head/math/gretl/Makefile (revision 499897) @@ -1,99 +1,100 @@ # Created by: ijliao # $FreeBSD$ PORTNAME= gretl DISTVERSION= 2019a PORTREVISION= 2 CATEGORIES= math finance MASTER_SITES= SF/${PORTNAME}/${PORTNAME}/${DISTVERSIONFULL}/ MAINTAINER= yuri@FreeBSD.org COMMENT= GNU Regression, Econometrics, and Time-series Library LICENSE= GPLv3 LICENSE_FILE= ${WRKSRC}/COPYING LIB_DEPENDS= libcurl.so:ftp/curl \ libfftw3.so:math/fftw3 \ libgmp.so:math/gmp \ libjson-glib-1.0.so:devel/json-glib \ libmpi.so:net/mpich \ libmpfr.so:math/mpfr USES= fortran gmake gnome localbase libtool ncurses pathfix pkgconfig \ readline tar:xz GNU_CONFIGURE= yes USE_LDCONFIG= yes BINARY_ALIAS= make=${GMAKE} ALL_TARGET= # empty +SSP_CFLAGS?= -fstack-protector # XXX -strong crashes mklang on 12.0+ i386 CONFIGURE_ENV= ac_cv_lib_dl_dlopen="" \ LAPACK_LIBS="${LAPACK} ${BLAS}" OPTIONS_DEFINE= ADDONS ATLAS GUI NLS ODBC OPENMP R UNZIP OPTIONS_DEFAULT= ADDONS GUI OPENMP UNZIP OPTIONS_SUB= yes ADDONS_DESC= Build gretl addons ADDONS_CONFIGURE_ENABLE= build-addons ADDONS_VARS= USE_TEX="formats dvipsk:build" ATLAS_DESC= Use ATLAS for BLAS and LAPACK ATLAS_LIB_DEPENDS= libatlas.so:math/atlas ATLAS_LIB_DEPENDS_OFF= libblas.so:math/blas \ liblapack.so:math/lapack ATLAS_VARS= BLAS=-lf77blas LAPACK="-lalapack -lcblas" ATLAS_VARS_OFF= BLAS=-lblas LAPACK=-llapack GUI_DESC= Graphical user interface and plugins GUI_CONFIGURE_ON= --enable-gtk2=yes --enable-gui=yes GUI_CONFIGURE_OFF= --enable-gui=no --enable-xdg=no GUI_VARS= INSTALLS_ICONS=yes GUI_USE= GNOME=cairo,gtksourceview2 GUI_USE_OFF= GNOME=glib20,libxml2 GUI_USES= desktop-file-utils shared-mime-info GUI_BUILD_DEPENDS= gnuplot:math/gnuplot GUI_LIB_DEPENDS= libfreetype.so:print/freetype2 \ libfontconfig.so:x11-fonts/fontconfig GUI_RUN_DEPENDS= gnuplot:math/gnuplot NLS_CONFIGURE_ENABLE= nls NLS_USES= gettext ODBC_CONFIGURE_WITH= odbc ODBC_LIB_DEPENDS= libodbc.so:databases/unixODBC OPENMP_CONFIGURE_ENABLE= openmp OPENMP_LIB_DEPENDS= libomp.so:devel/openmp R_DESC= libR support R_CONFIGURE_WITH= libR R_BROKEN= Doesn't link to R libraries UNZIP_DESC= UnZip compression support via libgsf UNZIP_CONFIGURE_WITH= gsf UNZIP_USE= GNOME=libgsf .if !empty(MACHINE_CPU:Msse2) CONFIGURE_ARGS+= --enable-sse2=yes .else CONFIGURE_ARGS+= --enable-sse2=no .endif post-patch: @${SED} -i '.orig' -E -e '/#include[[:blank:]]+/\ {x; s/.*/#include /; H; x;}' \ ${WRKSRC}/configure \ ${WRKSRC}/plugin/mailer.c @${REINPLACE_CMD} -e 's| DOMAIN| CEPHES_DOMAIN|g' \ ${WRKSRC}/cephes/iv.c regression-test test check: build @cd ${BUILD_WRKSRC} && ${SETENV} ${MAKE_ENV} ${MAKE_CMD} \ ${MAKE_ARGS} check post-install: @${STRIP_CMD} ${STAGEDIR}${PREFIX}/lib/gretl-gtk2/*.so @${RMDIR} ${STAGEDIR}${DATADIR}/doc .include Index: head/math/mingw32-libgmp/Makefile =================================================================== --- head/math/mingw32-libgmp/Makefile (revision 499896) +++ head/math/mingw32-libgmp/Makefile (revision 499897) @@ -1,42 +1,43 @@ # Created by: Timothy Bourke # $FreeBSD$ PORTNAME= libgmp PORTVERSION= 6.0.0 PORTREVISION= 3 CATEGORIES= math devel MASTER_SITES= GNU/gmp PKGNAMEPREFIX= mingw32- DISTNAME= gmp-${DISTVERSION}a MAINTAINER= cyberbotx@cyberbotx.com COMMENT= Library for arbitrary precision arithmetic (MinGW32) BUILD_DEPENDS= ${PKGNAMEPREFIX}gcc:devel/${PKGNAMEPREFIX}gcc \ mingwm10.dll:devel/mingw32-bin-msvcrt WRKSRC= ${WRKDIR}/gmp-${PORTVERSION} USES= libtool makeinfo tar:bzip2 GMP_TARG= ${PKGNAMEPREFIX:S/-$//} GNU_CONFIGURE= yes CC= ${PKGNAMEPREFIX}gcc CXX= ${PKGNAMEPREFIX}c++ CFLAGS+= -I/usr/include +SSP_CFLAGS?= -fstack-protector # XXX -strong isn't supported by GCC < 4.9 CONFIGURE_ENV= MAKEINFO="${MAKEINFO} --no-split" \ PREFIX="${PREFIX}/${GMP_TARG}" \ M4="/usr/bin/m4" CONFIGURE_ARGS= --enable-cxx --host=${GMP_TARG} \ --includedir=${PREFIX}/${GMP_TARG}/include \ --exec_prefix=${PREFIX}/${GMP_TARG} \ --datadir=${PREFIX}/${GMP_TARG}/share \ --libdir=${PREFIX}/${GMP_TARG}/lib CONFIGURE_TARGET= INFO= gmp INFO_PATH= ${GMP_TARG}/info post-extract: @${RM} ${WRKSRC}/doc/gmp.info* .include