Framework: sync with upstream

Taken from: FreeBSD
This commit is contained in:
Franco Fichtner 2022-11-21 10:50:58 +01:00
parent 88748b9745
commit 3e6bab8f81
8 changed files with 95 additions and 49 deletions

9
MOVED
View File

@ -3876,7 +3876,6 @@ java/jdk16|java/openjdk6|2012-12-10|Has expired: Outdated, consider using openjd
java/linux-sun-jre15|java/linux-sun-jre16|2012-12-10|Has expired: EOLed upstream since October 2009
java/linux-sun-jdk15|java/linux-sun-jdk16|2012-12-10|Has expired: EOLed upstream since October 2009
java/jdk15-doc|java/jdk16-doc|2012-12-10|Has expired: EOLed upstream since October 2009
science/py-openbabel||2012-12-11|Merged to science/openbabel
www/moodle2|www/moodle23|2012-12-11|Renamed
deskutils/horde-hermes|deskutils/horde3-hermes|2012-12-12|Rename of old horde apps
deskutils/horde-klutz|deskutils/horde3-klutz|2012-12-12|Rename of old horde apps
@ -17608,3 +17607,11 @@ devel/cppcheck-gui|devel/cppcheck|2022-11-07|GUI is now included in devel/cppche
devel/py-types-termcolor||2022-11-11|No longer needed, type annotations are now available in termcolor module
x11-toolkits/wlroots-devel|x11-toolkits/wlroots|2022-11-11|Out of date: use x11-toolkits/wlroots for now
multimedia/mpv034||2022-11-14|No longer needed
devel/py-types-xxhash||2022-11-15|No longer needed, type annotations are now available in xxhash module
devel/awscli|devel/py-awscli|2022-11-15|Renamed comply with Python Ports Policy and flavored
graphics/sciplot|science/sciplot|2022-11-15|Move to avoid conflict with graphics/SciPlot
x11-wm/hyprland-devel|x11-wm/hyprland|2022-11-16|Updated to the latest stable version
net/rabbitmq-c-devel|net/rabbitmq-c|2022-11-16|Remove obsolete devel port, use net/rabbitmq-c instead
databases/foundationdb-devel|databases/foundationdb|2022-11-16|Remove obsolete devel port, use databases/foundationdb instead
devel/py-pytest4-asyncio||2022-11-19|Has expired: legacy version for pytest4 no longer used by any port
devel/tokamak||2022-11-20|Has expired: Last release in 2008, abandoned upstream, not used, website disappeared

View File

@ -19,6 +19,9 @@
# When creating a new port, the initial list can be built
# using make-use-cabal auxiliary target.
#
# CABAL_REVISION Specifies a Haskell package revision. Set this to an
# integer to pull in revised .cabal file from Hackage.
#
# CABAL_FLAGS List of Cabal flags to be passed verbatim into --flags
# argument of cabal-install utility. Used for both
# cabal configure and cabal build.
@ -120,10 +123,16 @@ _hackage_is_default= yes
_hackage_is_default= no
. endif
MASTER_SITES+= https://hackage.haskell.org/package/${_hackage_group} \
http://hackage.haskell.org/package/${_hackage_group}
. if ${_hackage_is_default} == yes
MASTER_SITES= https://hackage.haskell.org/package/${PORTNAME}-${PORTVERSION}/ \
http://hackage.haskell.org/package/${PORTNAME}-${PORTVERSION}/
DISTFILES+= ${PORTNAME}-${PORTVERSION}${CABAL_EXTRACT_SUFX}
DISTFILES+= ${PORTNAME}-${PORTVERSION}/${PORTNAME}-${PORTVERSION}${CABAL_EXTRACT_SUFX}
. ifdef CABAL_REVISION
DISTFILES+= ${PORTNAME}-${PORTVERSION}/revision/${CABAL_REVISION}.cabal
. endif
. else
_hackage_group= :cabal_mk_hackage
. endif
_USES_extract= 701:cabal-post-extract
@ -136,19 +145,22 @@ BUILD_TARGET?= ${CABAL_EXECUTABLES:S/^/exe:&/}
_use_cabal= ${USE_CABAL:O:u}
. for package in ${_use_cabal}
_PKG_GROUP= ${package:C/[\.-]//g}
_PKG_WITHOUT_REV= ${package:C/_[0-9]+//}
_REV= ${package:C/[^_]*//:S/_//}
MASTER_SITES+= https://hackage.haskell.org/package/:${package:C/[\.-]//g} \
http://hackage.haskell.org/package/:${package:C/[\.-]//g}
DISTFILES+= ${package:C/_[0-9]+//}/${package:C/_[0-9]+//}${CABAL_EXTRACT_SUFX}:${package:C/[\.-]//g}
. if ${package:C/[^_]*//:S/_//} != ""
DISTFILES+= ${package:C/_[0-9]+//}/revision/${package:C/[^_]*//:S/_//}.cabal:${package:C/[\.-]//g}
. endif
_CABAL_EXTRACT_ONLY+= ${package:C/_[0-9]+//}/${package:C/_[0-9]+//}${CABAL_EXTRACT_SUFX}
. for pkg_without_group xgroup in ${package:C/:.*$$//} x${package:S/${package:C/:.*$$//}//:C/^.*://}
. for pkg_name xrev in ${pkg_without_group:C/_[0-9]+//} x${pkg_without_group:C/[^_]*//:S/_//}
. if ${xgroup} == "x"
DISTFILES+= ${pkg_name}/${pkg_name}${CABAL_EXTRACT_SUFX}${_hackage_group}
. if ${xrev} != "x"
DISTFILES+= ${pkg_name}/revision/${xrev:S/^x//}.cabal${_hackage_group}
. endif
. else
DISTFILES+= ${pkg_name}${CABAL_EXTRACT_SUFX}:${xgroup:S/^x//}
. if ${xrev} != "x"
DISTFILES+= ${pkg_name}/revision/${xrev:S/^x//}.cabal:${xgroup:S/^x//}
. endif
. endif # ${xgroup} == "x"
_CABAL_EXTRACT_ONLY+= ${pkg_name}/${pkg_name}${CABAL_EXTRACT_SUFX}
. endfor
. endfor
. endfor
. if !defined(EXTRACT_ONLY)
@ -159,6 +171,11 @@ EXTRACT_ONLY+= ${_CABAL_EXTRACT_ONLY}
. endif
. endif
. if defined(CABAL_REPOSITORIES) && !empty(CABAL_REPOSITORIES)
. for r in ${CABAL_REPOSITORIES}
CABAL2TUPLE_ARGS+= --group=${r} --master-site=${MASTER_SITES:M*\:${r}:[1]:S/:${r}//}
. endfor
. endif
# Auxiliary targets used during port creation/updating.
@ -169,10 +186,10 @@ EXTRACT_ONLY+= ${_CABAL_EXTRACT_ONLY}
cabal-extract: check-cabal
. if ${_hackage_is_default} == no
@${ECHO_MSG} "===> Recursing down to make extract"
@${MAKE} -C ${.CURDIR} extract SKIP_CABAL_EXTRACT=yes
@${MAKE} -C ${.CURDIR} extract SKIP_CABAL_EXTRACT=yes USE_CABAL=
${RM} -rf ${CABAL_HOME}
. endif
@${ECHO_MSG} "===> Fetching Cabal package index into ${CABAL_HOME}/.cabal"
@${ECHO_MSG} "===> Fetching Hackage index into ${CABAL_HOME}/.cabal"
@${SETENV} HOME=${CABAL_HOME} ${CABAL_CMD} update
. if ${_hackage_is_default} == yes
@cd ${WRKDIR} && \
@ -183,13 +200,22 @@ cabal-extract: check-cabal
@cd ${WRKSRC} && ${SETENV} HOME=${CABAL_HOME} ${HPACK_CMD}
. endif
. endif
# Remove Haskell dependencies that come from GH_TUPLE
@${RM} -r ${WRKSRC}/dist-newstyle
. ifdef CABAL_REPOSITORIES
@${ECHO_MSG} "===> Fetching additional Cabal repositories index into ${CABAL_HOME}/.cabal"
@cd ${WRKSRC} && \
${SETENV} HOME=${CABAL_HOME} ${CABAL_CMD} update
. endif
# Create a cookie for cabal-post-patch
@${TOUCH} ${EXTRACT_COOKIE} ${CABAL_COOKIE}
# Calls cabal configure on the Haskell package located in ${WRKSRC}
# Calls cabal build --dry-run on the Haskell package located in ${WRKSRC}
# This is a Cabal way of doing configure step of the building process
# This pulls in all source dependencies, resolves them and generates build plan
cabal-configure: check-cabal
cd ${WRKSRC} && \
${SETENV} ${MAKE_ENV} HOME=${CABAL_HOME} ${CABAL_CMD} configure --disable-benchmarks --disable-tests --flags="${CABAL_FLAGS}" ${CABAL_WITH_ARGS} ${CONFIGURE_ARGS}
${SETENV} ${MAKE_ENV} HOME=${CABAL_HOME} ${CABAL_CMD} build --dry-run --disable-benchmarks --disable-tests --flags="${CABAL_FLAGS}" ${CABAL_WITH_ARGS} ${BUILD_ARGS} ${BUILD_TARGET}
# Calls cabal build on the Haskell package located in ${WRKSRC}
cabal-build: check-cabal
@ -199,7 +225,12 @@ cabal-build: check-cabal
# Generates USE_CABAL= ... line ready to be pasted into the port based on the plan.json file generated by cabal configure.
make-use-cabal: check-cabal2tuple
@${ECHO_MSG} "===> Processing plan.json"
@${_CABAL2TUPLE_CMD} ${WRKSRC} || (${ECHO_CMD} "Did you forget to make cabal-configure ?" ; exit 1)
@${_CABAL2TUPLE_CMD} ${CABAL2TUPLE_ARGS} ${WRKSRC} || (${ECHO_CMD} "Did you forget to make cabal-configure ?" ; exit 1)
. if ${_hackage_is_default} == yes
@if ${GREP} -q 'x-revision' ${WRKSRC}/*.cabal; then \
${ECHO_MSG} "Downloaded .cabal file contains x-revision, make sure to add CABAL_REVISION=" `${GREP} 'x-revision' ${WRKSRC}/*.cabal | ${SED} -e s/x-revision://`; \
fi
. endif
check-cabal:
@if ! type ${CABAL_CMD} > /dev/null 2>&1; then \
@ -216,28 +247,33 @@ check-cabal2tuple:
cabal-post-extract:
. if !defined(SKIP_CABAL_EXTRACT)
# Remove the project file as requested
. if "${CABAL_PROJECT}" == "remove"
# Remove the project file if requested
${RM} ${WRKSRC}/cabal.project
. endif
# Save the original project file so that users can patch them
. if "${CABAL_PROJECT}" == "append"
${MV} ${WRKSRC}/cabal.project ${WRKSRC}/cabal.project.${PORTNAME}
. endif
. ifndef(CABAL_PROJECT)
@${TEST} ! -f ${WRKSRC}/cabal.project || \
(${ECHO_CMD} "cabal.project file is already present in WRKSRC! Set CABAL_PROJECT variable." && false)
. endif
# Copy revised .cabal file if present
. if defined(CABAL_REVISION) && ${_hackage_is_default} == yes
${CP} ${DISTDIR}/${DIST_SUBDIR}/${PORTNAME}-${PORTVERSION}/revision/${CABAL_REVISION}.cabal `find ${WRKSRC} -name '*.cabal' -depth 1`
. endif
# Move extracted dependencies into ${CABAL_DEPSDIR} directory
${MKDIR} ${CABAL_DEPSDIR}
. for package in ${_use_cabal}
. for pkg_without_group in ${package:C/:.*$$//}
. for pkg_name xrev in ${pkg_without_group:C/_[0-9]+//} x${pkg_without_group:C/[^_]*//:S/_//}
# Copy revised .cabal file if present
. if ${package:C/[^_]*//:S/_//} != ""
cp ${DISTDIR}/${DIST_SUBDIR}/${package:C/_[0-9]+//}/revision/${package:C/[^_]*//:S/_//}.cabal `find ${WRKDIR}/${package:C/_[0-9]+//} -name '*.cabal' -depth 1`
. endif
. if ${xrev} != "x"
${CP} ${DISTDIR}/${DIST_SUBDIR}/${pkg_name}/revision/${xrev:S/^x//}.cabal `find ${WRKDIR}/${pkg_name} -name '*.cabal' -depth 1`
. endif
# Move the dependency source itself
cd ${WRKDIR} && \
mv ${package:C/_[0-9]+//} ${CABAL_DEPSDIR}/
${MV} ${pkg_name} ${CABAL_DEPSDIR}/
. endfor
. endfor
. endfor
# Create the cabal-install config
${MKDIR} ${CABAL_HOME}/.cabal
@ -248,18 +284,17 @@ cabal-post-patch:
. if !defined(SKIP_CABAL_EXTRACT)
@${TEST} ! -f ${CABAL_COOKIE} || \
(${ECHO_CMD} "===> Patching done, skipping cabal-post-patch" && false)
# Create our own cabal.project
${ECHO_CMD} "packages:" > ${WRKSRC}/cabal.project
. if "${CABAL_PROJECT}" != "append"
${ECHO_CMD} " ." >> ${WRKSRC}/cabal.project
. endif
# Append our stuff to possibly existing cabal.project.local
${ECHO_CMD} "" >> ${WRKSRC}/cabal.project.local
${ECHO_CMD} "-- added by USES=cabal" >> ${WRKSRC}/cabal.project.local
${ECHO_CMD} "packages:" >> ${WRKSRC}/cabal.project.local
. for package in ${_use_cabal}
${ECHO_CMD} " ${CABAL_DEPS_SUBDIR}/${package:C/_[0-9]+//}" >> ${WRKSRC}/cabal.project
. for pkg_without_group in ${package:C/:.*$$//}
. for pkg_name in ${pkg_without_group:C/_[0-9]+//}
${ECHO_CMD} " ${CABAL_DEPS_SUBDIR}/${pkg_name}" >> ${WRKSRC}/cabal.project.local
. endfor
. endfor
. endfor
# Append the (possibly patched) original cabal.project, if requested
. if "${CABAL_PROJECT}" == "append"
${CAT} ${WRKSRC}/cabal.project.${PORTNAME} >> ${WRKSRC}/cabal.project
. endif
. endif # SKIP_CABAL_EXTRACT && !CABAL_COOKIE
cabal-pre-configure:
@ -271,7 +306,7 @@ cabal-pre-configure:
. if !target(do-build)
do-build:
cd ${WRKSRC} && \
${SETENV} ${MAKE_ENV} HOME=${CABAL_HOME} ${CABAL_CMD} new-build --offline --disable-benchmarks --disable-tests ${CABAL_WITH_ARGS} --flags "${CABAL_FLAGS}" ${BUILD_ARGS} ${BUILD_TARGET}
${SETENV} ${MAKE_ENV} HOME=${CABAL_HOME} ${CABAL_CMD} build --offline --disable-benchmarks --disable-tests ${CABAL_WITH_ARGS} --flags "${CABAL_FLAGS}" ${BUILD_ARGS} ${BUILD_TARGET}
. endif
. if !target(do-install)

View File

@ -97,7 +97,7 @@ WRKSRC_crate_${_crate}= ${WRKDIR}/${_wrksrc}
CARGO_BUILDDEP?= yes
. if ${CARGO_BUILDDEP:tl} == "yes"
BUILD_DEPENDS+= ${RUST_DEFAULT}>=1.64.0:lang/${RUST_DEFAULT}
BUILD_DEPENDS+= ${RUST_DEFAULT}>=1.65.0:lang/${RUST_DEFAULT}
. elif ${CARGO_BUILDDEP:tl} == "any-version"
BUILD_DEPENDS+= ${RUST_DEFAULT}>=0:lang/${RUST_DEFAULT}
. endif

View File

@ -14,7 +14,11 @@ fortran_ARGS= ${FORTRAN_DEFAULT}
. endif
. if ${fortran_ARGS} == gfortran
. if empty(USE_GCC)
_GCC_VER= ${GCC_DEFAULT:S/.//}
. else
_GCC_VER= ${_USE_GCC}
. endif
BUILD_DEPENDS+= gfortran${_GCC_VER}:lang/gcc${_GCC_VER}
RUN_DEPENDS+= gfortran${_GCC_VER}:lang/gcc${_GCC_VER}
F77= gfortran${_GCC_VER}

View File

@ -23,7 +23,7 @@ _QT_MK_INCLUDED= qt.mk
# Qt versions currently supported by the framework.
_QT_SUPPORTED?= 5 6
QT5_VERSION?= 5.15.5
QT6_VERSION?= 6.4.0
QT6_VERSION?= 6.4.1
# We accept the Qt version to be passed by either or all of the three mk files.
. if empty(qt_ARGS) && empty(qmake_ARGS) && empty(qt-dist_ARGS)

View File

@ -42,7 +42,7 @@ COROSYNC_DEFAULT?= 2
#EMACS_DEFAULT?= let the flavor be the default if not explicitly set
# Possible values: 2.5, 3.0, 4.0
FIREBIRD_DEFAULT?= 2.5
# Possible values: flang (experimental), gfortran
# Possible values: gfortran
FORTRAN_DEFAULT?= gfortran
# Possible values: 3.2.2
FPC_DEFAULT?= 3.2.2

View File

@ -61,7 +61,7 @@ MOZILLA_VER?= ${PORTVERSION}
MOZILLA_BIN?= ${PORTNAME}-bin
MOZILLA_EXEC_NAME?=${MOZILLA}
USES+= compiler:c++17-lang cpe gl gmake gnome iconv localbase perl5 pkgconfig \
python:3.6-3.10,build desktop-file-utils
python:3.6+,build desktop-file-utils
CPE_VENDOR?=mozilla
USE_GL= gl
USE_GNOME= cairo gdkpixbuf2 gtk30
@ -76,7 +76,7 @@ BUNDLE_LIBS= yes
BUILD_DEPENDS+= llvm${LLVM_DEFAULT}>0:devel/llvm${LLVM_DEFAULT} \
rust-cbindgen>=0.24.3:devel/rust-cbindgen \
${RUST_DEFAULT}>=1.64.0:lang/${RUST_DEFAULT} \
${RUST_DEFAULT}>=1.65.0:lang/${RUST_DEFAULT} \
node:www/node
LIB_DEPENDS+= libdrm.so:graphics/libdrm
RUN_DEPENDS+= ${LOCALBASE}/lib/libpci.so:devel/libpci

View File

@ -917,7 +917,7 @@ MASTER_SITE_SAVANNAH+= \
. for p in https http
MASTER_SITE_SOURCEFORGE+= ${p}://downloads.sourceforge.net/project/%SUBDIR%/
. for m in excellmedia freefr jaist nchc \
netcologne netix superb-dca2 superb-sea2 ufpr vorboss
netcologne netix ufpr vorboss versaweb
MASTER_SITE_SOURCEFORGE+= ${p}://${m}.dl.sourceforge.net/project/%SUBDIR%/
. endfor
. endfor