diff options
author | netchild <netchild@FreeBSD.org> | 2015-08-10 03:14:13 +0800 |
---|---|---|
committer | netchild <netchild@FreeBSD.org> | 2015-08-10 03:14:13 +0800 |
commit | 8725235f35a03fb0dd1da17304424701f84e15dd (patch) | |
tree | 5205db7c3150c2000d8091bebe7ce6fc273be03c /Mk/bsd.linux-rpm.mk | |
parent | b3c031084f5535608ae04c365e4eea69d5c7ad16 (diff) | |
download | freebsd-ports-gnome-8725235f35a03fb0dd1da17304424701f84e15dd.tar.gz freebsd-ports-gnome-8725235f35a03fb0dd1da17304424701f84e15dd.tar.zst freebsd-ports-gnome-8725235f35a03fb0dd1da17304424701f84e15dd.zip |
Re-commit of
64 bit linuxulator support (not activated by default):
- most of the work was done by Alan Jude
- all errors are mine
- 64bit (may) have rough edges
- I validated
* that the 32bit part doesn't has deinstall regressions (incl. EXP runs by
antoine)
* 29 of 72 64bit ports ports don't have deinstall leftovers (more validation
later, when I dare to activate the 64bit linuxulator in the kernel)
- the infrastructure part looks mature enough to let more test-bunnies get
some experience with the new 64 bit parts
- to use it you shall have no linux ports installed and have to specify
(on your own risk) the following in make.conf before installing the ports:
OVERRIDE_LINUX_BASE_PORT=c6_64
OVERRIDE_LINUX_NONBASE_PORTS=c6_64
This is on top of the exiting c6 linux ports. Given that CentOS 7 is 64bits
only, we decided to have it as an "overlay" instead of new ports.
The 64bit part only installs 64bit executables, the 32bit ports can not be
installed at the same time (if needed we can think of letting the 64bit
overlay install the 32bit parts too, but given the CentOS 7 comment
above...).
Differential Revision: https://reviews.freebsd.org/D174
Submitted by: alanjude
Sponsored by: Essen FreeBSD Hackathon 2015
Reviewed by: xmj, eadler (earlier versions)
Approved by: portmgr (antoine after some EXP-runs)
Diffstat (limited to 'Mk/bsd.linux-rpm.mk')
-rw-r--r-- | Mk/bsd.linux-rpm.mk | 93 |
1 files changed, 36 insertions, 57 deletions
diff --git a/Mk/bsd.linux-rpm.mk b/Mk/bsd.linux-rpm.mk index 1d69d1a1a511..225986e0c35c 100644 --- a/Mk/bsd.linux-rpm.mk +++ b/Mk/bsd.linux-rpm.mk @@ -10,6 +10,8 @@ # LINUX_DIST_VER - Use depends upon the dist-specific presets. # Valid values for "fedora": all version numbers # e.g. 10 for fedora 10 +# Valid values for "centos": all version numbers +# e.g. 6.6 for centos 6.6 # This is used to set MASTER_SITE_{,SRC_}SUBDIR # if it isn't already set. # MASTER_SITE_SRC_SUBDIR @@ -42,26 +44,13 @@ USE_LINUX_PREFIX= yes NO_WRKSUBDIR= yes NO_BUILD= yes -. if ${ARCH} == "amd64" || ${ARCH} == "i386" -. if ${USE_LINUX} == "c6" || ${USE_LINUX} == "yes" # default to CentOS +. if ${USE_LINUX} == "c6" || ${USE_LINUX} == "yes" # default to CentOS # Do not build CentOS 6 ports if overridden by f10 -. if defined(OVERRIDE_LINUX_BASE_PORT) && ${OVERRIDE_LINUX_NONBASE_PORTS} == "f10" -IGNORE= This port requires CentOS ${LINUX_DIST_VER}. Please remove OVERRIDE_LINUX_NONBASE_PORTS=f10 in /etc/make.conf. -. endif -LINUX_RPM_ARCH?= i686 # ?= because of nasty c5 qt ports -. elif ${USE_LINUX} == "f10" -# Do not build Fedora 10 ports unless specifically overridden. -#. if ! defined(OVERRIDE_LINUX_NONBASE_PORTS) || ${OVERRIDE_LINUX_NONBASE_PORTS} != "f10" -#IGNORE= This port requires Fedora 10, yet Fedora 10 is heavily outdated and contains many vulnerable ports. If you really need it, add OVERRIDE_LINUX_NONBASE_PORTS=f10 in /etc/make.conf. -#. endif -LINUX_RPM_ARCH?= i386 # the linuxulator does not yet support amd64 code -. else -LINUX_RPM_ARCH?= ${ARCH} -. endif - -. elif ${ARCH} == "powerpc" -LINUX_RPM_ARCH?= ppc +. if defined(OVERRIDE_LINUX_BASE_PORT) && ${OVERRIDE_LINUX_NONBASE_PORTS} == "f10" +IGNORE= This port requires CentOS ${LINUX_DIST_VER}. Please remove OVERRIDE_LINUX_NONBASE_PORTS=f10 in /etc/make.conf. +. endif . endif + .endif .if defined(_POSTMKINCLUDED) && !defined(Linux_RPM_Post_Include) @@ -77,56 +66,41 @@ LINUX_DIST= centos LINUX_DIST_VER= 6.6 .endif -. if defined(LINUX_DIST) +.if defined(LINUX_DIST) DIST_SUBDIR?= rpm/${LINUX_RPM_ARCH}/${LINUX_DIST}/${LINUX_DIST_VER} -. if ${LINUX_DIST} == "fedora" +. if ${LINUX_DIST} == "fedora" # we do not want to define MASTER_SITES and MASTER_SITE_* if they are already defined # ex.: MASTER_SITES=file:///... -. ifndef MASTER_SITES -MASTER_SITES= ${MASTER_SITE_FEDORA_LINUX} -. if ${LINUX_DIST_VER} == 10 +. ifndef MASTER_SITES +MASTER_SITES= ${MASTER_SITE_FEDORA_LINUX} +. if ${LINUX_DIST_VER} == 10 MASTER_SITE_SUBDIR?= ../releases/${LINUX_DIST_VER}/Everything/${LINUX_RPM_ARCH}/os/Packages \ ../updates/${LINUX_DIST_VER}/${LINUX_RPM_ARCH} MASTER_SITE_SRC_SUBDIR?= ../releases/${LINUX_DIST_VER}/Everything/source/SRPMS \ ../updates/${LINUX_DIST_VER}/SRPMS -. else +. else MASTER_SITE_SUBDIR?= ${LINUX_DIST_VER}/${LINUX_RPM_ARCH}/os/Fedora/RPMS \ updates/${LINUX_DIST_VER}/${LINUX_RPM_ARCH} MASTER_SITE_SRC_SUBDIR?= ${LINUX_DIST_VER}/SRPMS \ updates/${LINUX_DIST_VER}/SRPMS -. endif -. endif -. elif ${LINUX_DIST} == "centos" -MASTER_SITES_SUBDIR= /centos/6/os/i386/Packages/ -. if ${LINUX_DIST_VER} == "5" #needed for Qt... -LINUX_RPM_ARCH= i386 -MASTER_SITES_SUBDIR= /centos/5/os/i386/Packages/ . endif - -. ifndef MASTER_SITES -MASTER_SITES= ${MASTER_SITE_CENTOS_LINUX} -. if ${LINUX_DIST_VER} == "6.6" -. if ! defined(PACKAGE_BUILDING) -MASTER_SITES= http://mirror.centos.org/centos/6/os/i386/Packages/ -MASTER_SITES_SUBDIR= /centos/6/os/i386/Packages/ -. else -MASTER_SITES?= http://vault.centos.org/%SUBDIR%/ -MASTER_SITES_SUBDIR= /${LINUX_DIST_VER}/os/Source/SPackages/ -. endif - -. else -MASTER_SITES= http://vault.centos.org/${LINUX_DIST_VER}/os/i386/Packages/ -. endif -. endif - +. endif +. elif ${LINUX_DIST} == "centos" +MASTER_SITES?= ${MASTER_SITE_CENTOS_LINUX} ${MASTER_SITE_CENTOS_LINUX_UPDATES} +MASTER_SITE_SUBDIR?= centos/${LINUX_DIST_VER}/os/${LINUX_REPO_ARCH}/Packages/ \ + centos/${LINUX_DIST_VER}/updates/${LINUX_REPO_ARCH}/Packages/ +. if ${LINUX_DIST_VER} == "5" #needed for Qt... +LINUX_RPM_ARCH= i386 +MASTER_SITE_SUBDIR= centos/5/os/i386/Packages/ +. endif +. if defined(PACKAGE_BUILDING) +MASTER_SITES+= http://vault.centos.org/%SUBDIR%/:SOURCE +MASTER_SITE_SUBDIR+= ${LINUX_DIST_VER}/os/Source/SPackages/:SOURCE . endif . endif +.endif - -#.if ${USE_LINUX:L} == "yes" #redundant with bsd.port.mk fu -#USE_LINUX= c6 -#.endif PKGNAMEPREFIX?= linux-${USE_LINUX}- # DISTFILES and SRC_DISTFILES assume that there is only one bindist @@ -138,7 +112,7 @@ DISTVERSION= ${PORTVERSION}-${RPMVERSION} DISTNAME?= ${PORTNAME}-${DISTVERSION} DISTFILES?= ${DISTNAME}${EXTRACT_SUFX} BIN_DISTFILES:= ${DISTFILES} -SRC_DISTFILES?= ${DISTNAME}${SRC_SUFX} +SRC_DISTFILES?= ${DISTNAME}${SRC_SUFX}:SOURCE EXTRACT_ONLY?= ${BIN_DISTFILES:C/:[^:]+$//} . if defined(PACKAGE_BUILDING) @@ -177,16 +151,21 @@ linux-rpm-clean-portdocs: . endif . endif +. if ${USE_LINUX} != "f10" +PLIST?= ${MASTERDIR}/pkg-plist.${LINUX_RPM_ARCH} +. endif + . if defined(AUTOMATIC_PLIST) -. if ${USE_LINUX} == "f10" || ${USE_LINUX} == "yes" +. if ${USE_LINUX} == "f10" _LINUX_BASE_SUFFIX= f10 -. elif ${USE_LINUX} == "c6" -USE_LINUX= c6 +. elif ${USE_LINUX} == "c6" || ${USE_LINUX} == "yes" +_LINUX_BASE_SUFFIX= c6 +. elif ${USE_LINUX} == "c6_64 _LINUX_BASE_SUFFIX= c6 . else # other linux_base ports do not provide a pkg-plist file -IGNORE= uses AUTOMATIC_PLIST with an unsupported USE_LINUX, \"${USE_LINUX}\". Supported values are \"yes\", \"f10\" and \"c6\" +IGNORE= uses AUTOMATIC_PLIST with an unsupported USE_LINUX, \"${USE_LINUX}\". Supported values are \"yes\", \"f10\", \"c6\", and \"c6_64\" . endif PLIST?= ${WRKDIR}/.PLIST.linux-rpm |