diff --git a/Mk/Uses/fpc.mk b/Mk/Uses/fpc.mk index f32b21bf6e64..31b6151aeba4 100644 --- a/Mk/Uses/fpc.mk +++ b/Mk/Uses/fpc.mk @@ -1,75 +1,75 @@ # Support for FPC-based ports. This automatically will install free pascal # compiler and units. # # Feature: fpc # Usage: USES=fpc # Valid ARGS: (none), run # # run - Free pascal compiler and units will be registered also # as run dependencies. # # Example: # # USES+= fpc:run # .if !defined(_INCLUDE_USES_FPC_MK) FPC_Include_MAINTAINER= acm@FreeBSD.org _INCLUDE_USES_FPC_MK= yes . if defined(DEFAULT_FPC_VER) WARNING+= "DEFAULT_FPC_VER is defined, consider using DEFAULT_VERSIONS=fpc=${DEFAULT_FPC_VER} instead" . endif . if ${fpc_ARGS:Nrun} IGNORE= Unknown argument for USES=fpc: ${fpc_ARGS:Nrun} . endif DEFAULT_FPC_VER= ${FPC_DEFAULT} # When adding a version, please keep the comment in # Mk/bsd.default-versions.mk in sync. FPC_VER= ${DEFAULT_FPC_VER} FPC_ARCH= ${ARCH:S/amd64/x86_64/} . if exists(${LOCALBASE}/bin/fpc) FPC_CURRENT_VER!= ${LOCALBASE}/bin/fpc -iV . if ${FPC_CURRENT_VER} != ${FPC_VER} IGNORE= incompatible fpc ${FPC_CURRENT_VER} compiler, please install ${FPC_VER} version . endif . endif . if ${ARCH} == "i386" PPNAME= ppc386 . elif ${ARCH} == "amd64" PPNAME= ppcx64 . elif ${ARCH} == "aarch64" PPNAME= ppca64 . else PPNAME= ppc_not_yet_ported . endif -. if !defined(WANT_FPC_DEVEL) -FPC_DEVELSUFFIX= # -ONLY_FOR_ARCHS= i386 amd64 -ONLY_FOR_ARCHS_REASON= not yet ported to anything other than i386 and amd64 -. else +. if (defined(WANT_FPC_DEVEL) && !empty(WANT_FPC_DEVEL)) || ${ARCH:Maarch64} FPC_DEVELSUFFIX= -devel ONLY_FOR_ARCHS= i386 amd64 aarch64 ONLY_FOR_ARCHS_REASON= not yet ported to anything other than i386, amd64 and aarch64 +. else +FPC_DEVELSUFFIX= # +ONLY_FOR_ARCHS= i386 amd64 +ONLY_FOR_ARCHS_REASON= not yet ported to anything other than i386 and amd64 . endif BUILD_DEPENDS+= ${LOCALBASE}/bin/as:devel/binutils \ ${LOCALBASE}/lib/fpc/${FPC_VER}/${PPNAME}:lang/fpc${FPC_DEVELSUFFIX} . if ${fpc_ARGS:Mrun} RUN_DEPENDS+= ${LOCALBASE}/bin/as:devel/binutils \ ${LOCALBASE}/lib/fpc/${FPC_VER}/${PPNAME}:lang/fpc${FPC_DEVELSUFFIX} . endif BUILDNAME= ${FPC_ARCH}-${OPSYS:tl} UNITSDIR= ${LOCALBASE}/lib/fpc/${FPC_VER}/units/${BUILDNAME} MKINSTDIR= ${LOCALBASE}/lib/fpc/${FPC_VER}/fpmkinst/${BUILDNAME} .endif diff --git a/Mk/Uses/lazarus.mk b/Mk/Uses/lazarus.mk index 4a9776112c59..ca8cf5cf70b9 100644 --- a/Mk/Uses/lazarus.mk +++ b/Mk/Uses/lazarus.mk @@ -1,158 +1,155 @@ # Support for Lazarus-based ports. # # Feature: lazarus # Usage: USES=lazarus # Valid ARGS: (none), gtk2, qt5, qt6, flavors # # (none) - This automatically build lazarus-app with gtk2 interface # # gtk2 - This automatically build lazarus-app with gtk2 interface # # qt5 - This automatically build lazarus-app with qt5 interface # # qt6 - This automatically build lazarus-app with qt6 interface # # flavors - This automatically build lazarus-app with flavors feature # # If the port not requires compile lazarus project files automatically, you can # defined the following: # # NO_LAZBUILD= yes # # Variables for ports: # # LAZARUS_PROJECT_FILES - List of lpi files. It must not be empty # Default: empty # LAZARUS_DIR - Path to lazarus installation directory # Default: ${LOCALBASE}/share/lazarus-${LAZARUS_VER} # LAZBUILD_ARGS - lazbuild extra args. It could be -d most of cases. # See man lazbuild for more information # Default: empty # LAZARUS_NO_FLAVORS - Do NOT build these lazarus flavors. # If LAZARUS_NO_FLAVORS is not define then all # valid lazarus flavors are assumed. # # Example: # # USES+= lazarus:flavors # LAZARUS_NO_FLAVORS=qt5 # .if !defined(_INCLUDE_USES_LAZARUS_MK) LAZARUS_Include_MAINTAINER= acm@FreeBSD.org _INCLUDE_USES_LAZARUS_MK= yes . if defined(DEFAULT_LAZARUS_VER) WARNING+= "DEFAULT_LAZARUS_VER is defined, consider using DEFAULT_VERSIONS=lazarus=${DEFAULT_LAZARUS_VER} instead" . endif . if ${lazarus_ARGS:Ngtk2:Nqt5:Nqt6:Nflavors} IGNORE= Unknown argument for USES=lazarus: ${lazarus_ARGS:Ngtk2:Nqt5:Nqt6:Nflavors} . endif . if !empty(LAZARUS_NO_FLAVORS) . if ${LAZARUS_NO_FLAVORS:Ngtk2:Nqt5:Nqt6} IGNORE= Unknown argument for LAZARUS_NO_FLAVORS: ${LAZARUS_NO_FLAVORS:Ngtk2:Nqt5:Nqt6} . endif . endif DEFAULT_LAZARUS_VER= ${LAZARUS_DEFAULT} DEFAULT_FPC_VER= ${FPC_DEFAULT} # When adding a version, please keep the comment in # Mk/bsd.default-versions.mk in sync. LAZARUS_VER= ${DEFAULT_LAZARUS_VER} FPC_VER= ${DEFAULT_FPC_VER} LAZARUS_ARCH= ${ARCH:S/amd64/x86_64/} LAZARUS_PROJECT_FILES?= # empty LAZARUS_DIR?= ${LOCALBASE}/share/lazarus-${LAZARUS_VER} -ONLY_FOR_ARCHS= i386 amd64 -ONLY_FOR_ARCHS_REASON= not yet ported to anything other than i386 and amd64 - -. if !defined(WANT_FPC_DEVEL) -FPC_DEVELSUFFIX= # -. else +. if (defined(WANT_FPC_DEVEL) && !empty(WANT_FPC_DEVEL)) || ${ARCH:Maarch64} FPC_DEVELSUFFIX= -devel +. else +FPC_DEVELSUFFIX= # . endif BUILDNAME= ${LAZARUS_ARCH}-${OPSYS:tl} LCL_UNITS_DIR= ${LOCALBASE}/share/lazarus-${LAZARUS_VER}/lcl/units/${BUILDNAME} MKINSTDIR= ${LOCALBASE}/lib/fpc/${FPC_VER}/fpmkinst/${BUILDNAME} BUILD_DEPENDS+= ${LOCALBASE}/bin/as:devel/binutils \ ${MKINSTDIR}/utils-lexyacc.fpm:lang/fpc${FPC_DEVELSUFFIX} LAZARUS_FLAVORS= gtk2 qt5 qt6 . if ${lazarus_ARGS:Mflavors} . if defined(LAZARUS_NO_FLAVORS) . for flavor in ${LAZARUS_NO_FLAVORS} FLAVORS:= ${LAZARUS_FLAVORS:N${flavor}} . endfor . else FLAVORS:= ${LAZARUS_FLAVORS} . endif . if empty(FLAVOR) FLAVOR= ${FLAVORS:[1]} . endif . endif LAZARUS_PKGNAMESUFFIX= -${FLAVOR} -. if !defined(WANT_LAZARUS_DEVEL) -LAZARUS_DEVELSUFFIX= # -ONLY_FOR_ARCHS= i386 amd64 -ONLY_FOR_ARCHS_REASON= not yet ported to anything other than i386 and amd64 -. else +. if (defined(WANT_LAZARUS_DEVEL) && !empty(WANT_LAZARUS_DEVEL)) || ${ARCH:Maarch64} LAZARUS_DEVELSUFFIX= -devel ONLY_FOR_ARCHS= i386 amd64 aarch64 +ONLY_FOR_ARCHS_REASON= not yet ported to anything other than i386, amd64 and aarch64 +. else +LAZARUS_DEVELSUFFIX= # +ONLY_FOR_ARCHS= i386 amd64 ONLY_FOR_ARCHS_REASON= not yet ported to anything other than i386 and amd64 . endif . if ${lazarus_ARGS:Mgtk2} || ${FLAVOR} == gtk2 LIB_DEPENDS+= libglib-2.0.so:devel/glib20 \ libgtk-x11-2.0.so:x11-toolkits/gtk20 \ libatk-1.0.so:accessibility/at-spi2-core \ libpango-1.0.so:x11-toolkits/pango \ libgdk_pixbuf-2.0.so:graphics/gdk-pixbuf2 LCL_PLATFORM= gtk2 BUILD_DEPENDS+= ${LCL_UNITS_DIR}/${LCL_PLATFORM}/interfaces.ppu:editors/lazarus${LAZARUS_DEVELSUFFIX} . endif . if ${lazarus_ARGS:Mqt5} || ${FLAVOR} == qt5 LIB_DEPENDS+= libQt5Pas.so:x11-toolkits/qt5pas LCL_PLATFORM= qt5 BUILD_DEPENDS+= ${LCL_UNITS_DIR}/${LCL_PLATFORM}/interfaces.ppu:editors/lazarus-qt5${LAZARUS_DEVELSUFFIX} . endif . if ${lazarus_ARGS:Mqt6} || ${FLAVOR} == qt6 LIB_DEPENDS+= libQt6Pas.so:x11-toolkits/qt6pas LCL_PLATFORM= qt6 BUILD_DEPENDS+= ${LCL_UNITS_DIR}/${LCL_PLATFORM}/interfaces.ppu:editors/lazarus-qt6${LAZARUS_DEVELSUFFIX} . endif LAZBUILD_CMD= ${LOCALBASE}/bin/lazbuild LAZBUILD_ARGS?= # empty _USES_POST+= lazarus .endif # End of _INCLUDE_USES_LAZARUS_MK .if defined(_POSTMKINCLUDED) && !defined(_INCLUDE_USES_LAZARUS_POST_MK) _INCLUDE_USES_LAZARUS_POST_MK= yes . if !defined(NO_LAZBUILD) . if !target(do-build) do-build: . for PROJECT_FILE in ${LAZARUS_PROJECT_FILES} @(cd ${BUILD_WRKSRC}; ${SETENVI} ${WRK_ENV} ${MAKE_ENV} ${LAZBUILD_CMD} \ ${LAZBUILD_ARGS} --ws=${LCL_PLATFORM} --lazarusdir=${LAZARUS_DIR} ${PROJECT_FILE}) . endfor . endif # !target(do-build) . endif .endif # End of _INCLUDE_USES_LAZARUS_POST_MK diff --git a/Mk/bsd.default-versions.mk b/Mk/bsd.default-versions.mk index 65f8d7c6968e..7764508afae2 100644 --- a/Mk/bsd.default-versions.mk +++ b/Mk/bsd.default-versions.mk @@ -1,192 +1,192 @@ # MAINTAINER: ports@FreeBSD.org # # Note: before committing to this file, contact portmgr to arrange for an # experimental ports run. Untested commits may be backed out at portmgr's # discretion. # # Provide default versions for ports with multiple versions selectable # by the user. # # Users who want to override these defaults can easily do so by defining # DEFAULT_VERSIONS in their make.conf as follows: # # DEFAULT_VERSIONS= perl5=5.20 ruby=3.1 .if !defined(_INCLUDE_BSD_DEFAULT_VERSIONS_MK) _INCLUDE_BSD_DEFAULT_VERSIONS_MK= yes LOCALBASE?= /usr/local . for lang in APACHE BDB COROSYNC EBUR128 EMACS FIREBIRD FORTRAN FPC GCC \ GHOSTSCRIPT GL GO GUILE IMAGEMAGICK JAVA LAZARUS LIBRSVG2 LINUX LLVM \ LUA LUAJIT MONO MYSQL NINJA NODEJS OPENLDAP PERL5 PGSQL PHP \ PYCRYPTOGRAPHY PYTHON PYTHON2 RUBY RUST SAMBA SSL TCLTK VARNISH . if defined(${lang}_DEFAULT) ERROR+= "The variable ${lang}_DEFAULT is set and it should only be defined through DEFAULT_VERSIONS+=${lang:tl}=${${lang}_DEFAULT} in /etc/make.conf" . endif #.undef ${lang}_DEFAULT . endfor . for lang in ${DEFAULT_VERSIONS} _l= ${lang:C/=.*//g} ${_l:tu}_DEFAULT= ${lang:C/.*=//g} . endfor # Possible values: 2.4 APACHE_DEFAULT?= 2.4 # Possible values: 5, 18 BDB_DEFAULT?= 5 # Possible values: 2, 3 COROSYNC_DEFAULT?= 3 # Possible values: rust, legacy . if empty(ARCH:Naarch64:Namd64:Narmv7:Ni386:Npowerpc64:Npowerpc64le:Npowerpc:Nriscv64) EBUR128_DEFAULT?= rust . else EBUR128_DEFAULT?= legacy . endif # Possible_values: full canna nox devel_full devel_nox #EMACS_DEFAULT?= let the flavor be the default if not explicitly set # Possible values: 3.0, 4.0 FIREBIRD_DEFAULT?= 3.0 # Possible values: gfortran FORTRAN_DEFAULT?= gfortran # Possible values: 3.2.3, 3.3.1 -. if defined(WANT_FPC_DEVEL) && !empty(WANT_FPC_DEVEL) +. if (defined(WANT_FPC_DEVEL) && !empty(WANT_FPC_DEVEL)) || ${ARCH:Maarch64} FPC_DEFAULT?= 3.3.1 . else FPC_DEFAULT?= 3.2.3 . endif # Possible values: 10, 11, 12, 13, 14, 15 # (Any other version is completely unsupported and not meant for general use.) GCC_DEFAULT?= 13 # Possible values: 10 GHOSTSCRIPT_DEFAULT?= 10 # Possible values: mesa-libs, mesa-devel GL_DEFAULT?= mesa-libs # Possible values: 1.20, 1.21, 1.22, 1.23, 1.24-devel GO_DEFAULT?= 1.21 # Possible values: 1.8, 2.2, 3.0 GUILE_DEFAULT?= 2.2 # Possible versions: 6, 7 # Possible flavors: x11, nox11 # (defaults to x11 when not specified) # Format: version[-flavor] # Examples: 6-nox11, 7 IMAGEMAGICK_DEFAULT?= 7 # Possible values: 8, 11, 17, 18, 19, 20, 21 JAVA_DEFAULT?= 8 # Possible values: 3.4.0, 3.99 -. if defined(WANT_LAZARUS_DEVEL) && !empty(WANT_LAZARUS_DEVEL) +. if (defined(WANT_LAZARUS_DEVEL) && !empty(WANT_LAZARUS_DEVEL)) || ${ARCH:Maarch64} LAZARUS_DEFAULT?= 3.99 . else LAZARUS_DEFAULT?= 3.4.0 . endif # Possible values: rust, legacy . if empty(ARCH:Naarch64:Namd64:Narmv7:Ni386:Npowerpc64:Npowerpc64le:Npowerpc:Nriscv64) LIBRSVG2_DEFAULT?= rust . else LIBRSVG2_DEFAULT?= legacy . endif # Possible values: c7 rl9 LINUX_DEFAULT?= c7 # Possible values: 11, 12, 13, 14, 15, 16, 17, -devel (to be used when non-base compiler is required) LLVM_DEFAULT?= 15 # Possible values: 5.1, 5.2, 5.3, 5.4 LUA_DEFAULT?= 5.4 # Possible values: luajit, luajit-devel, luajit-openresty . if ${ARCH:Mpowerpc64*} LUAJIT_DEFAULT?= luajit-openresty . else LUAJIT_DEFAULT?= luajit-devel . endif # Possible values: 5.10, 5.20, 6.8 MONO_DEFAULT?= 5.20 # Possible values: 8.0, 8.4, 9.0, 10.5m, 10.6m, 10.11m, 11.4m MYSQL_DEFAULT?= 8.0 # Possible values: ninja, samurai NINJA_DEFAULT?= ninja # Possible value: 18, 20, 22, current, lts (Note: current = 22 and lts = 20) NODEJS_DEFAULT?= lts # Possible value: 25, 26 OPENLDAP_DEFAULT?= 26 # Possible values: 5.36, 5.38, 5.40, devel . if !exists(${LOCALBASE}/bin/perl) || (!defined(_PORTS_ENV_CHECK) && \ defined(PACKAGE_BUILDING)) # When changing the default here, make sure the DEPRECATED/EXPIRATION lines in # the older Perl 5 ports are uncommented at the same time. PERL5_DEFAULT?= 5.36 . elif !defined(PERL5_DEFAULT) # There's no need to replace development versions, like "5.23" with "devel" # because 1) nobody is supposed to use it outside of poudriere, and 2) it must # be set manually in /etc/make.conf in the first place, and we're never getting # in here. . if !defined(_PERL5_FROM_BIN) _PERL5_FROM_BIN!= ${LOCALBASE}/bin/perl -e 'printf "%vd\n", $$^V;' . endif _EXPORTED_VARS+= _PERL5_FROM_BIN PERL5_DEFAULT:= ${_PERL5_FROM_BIN:R} . endif # Possible values: 12, 13, 14, 15, 16 PGSQL_DEFAULT?= 16 # Possible values: 8.1, 8.2, 8.3, 8.4 PHP_DEFAULT?= 8.2 # Possible values: rust, legacy . if empty(ARCH:Naarch64:Namd64:Narmv7:Ni386:Npowerpc64:Npowerpc64le:Npowerpc:Nriscv64) PYCRYPTOGRAPHY_DEFAULT?= rust . else PYCRYPTOGRAPHY_DEFAULT?= legacy . endif # Possible values: 3.8, 3.9, 3.10, 3.11 PYTHON_DEFAULT?= 3.11 # Possible values: 2.7 PYTHON2_DEFAULT?= 2.7 # Possible values: 3.1, 3.2, 3.3 RUBY_DEFAULT?= 3.2 # Possible values: rust, rust-nightly RUST_DEFAULT?= rust # Possible values: 4.16, 4.19 SAMBA_DEFAULT?= 4.16 # When updating this, please also update the same list in ssl.mk and the checks # for USES=ssl in qa.sh! # Possible values: base, openssl, openssl111, openssl31, openssl32, openssl33, libressl, libressl-devel . if !defined(SSL_DEFAULT) # If no preference was set, check for an installed base version # but give an installed port preference over it. . if !defined(SSL_DEFAULT) && \ !exists(${DESTDIR}/${LOCALBASE}/lib/libcrypto.so) && \ exists(${DESTDIR}/usr/include/openssl/opensslv.h) SSL_DEFAULT= base . else . if exists(${DESTDIR}/${LOCALBASE}/lib/libcrypto.so) . if defined(PKG_BIN) # find installed port and use it for dependency . if !defined(OPENSSL_INSTALLED) . if defined(DESTDIR) PKGARGS= -c ${DESTDIR} . else PKGARGS= . endif OPENSSL_INSTALLED!= ${PKG_BIN} ${PKGARGS} which -qo ${LOCALBASE}/lib/libcrypto.so || : . endif . if defined(OPENSSL_INSTALLED) && !empty(OPENSSL_INSTALLED) SSL_DEFAULT:= ${OPENSSL_INSTALLED:T} WARNING+= "You have ${OPENSSL_INSTALLED} installed but do not have DEFAULT_VERSIONS+=ssl=${SSL_DEFAULT} set in your make.conf" . endif . else check-makevars:: @${ECHO_MSG} "You have a ${LOCALBASE}/lib/libcrypto.so file installed, but the framework is unable" @${ECHO_MSG} "to determine what port it comes from." @${ECHO_MSG} "Add DEFAULT_VERSIONS+=ssl= to your /etc/make.conf and try again." @${FALSE} . endif . endif . endif # Make sure we have a default in the end SSL_DEFAULT?= base . endif # Possible values: 8.5, 8.6, 8.7 TCLTK_DEFAULT?= 8.6 # Possible values: 6, 7 VARNISH_DEFAULT?= 6 .endif