# Copyright (C) 2007 The Trustees of Princeton University
# Thierry Parmentelat <thierry.parmentelat@inria.fr> INRIA
#
-# supported distros f8, f10, f12, f14, f16, centos5, sl6
+# supported distros f12 f14 f16 f18 f20
+# and debians/ubuntus to a lesser extent
#
# for locating pkgs.py
export PATH=.:$PATH
if [ -f "/etc/redhat-release" ] ; then
distro=$(awk ' { print $1 } ' /etc/redhat-release)
case $distro in Scientific*) distro="SL" ; esac
- else
- echo "build.common.pl_getDistro-unknown"
- exit 1
+ elif [ -f /etc/lsb-release ] ; then
+ . /etc/lsb-release
+ distro=$DISTRIB_CODENAME
+ elif [ -f /etc/debian_version ] ; then
+ case $(cat /etc/debian_version) in
+ 6.*) distro=squeeze ;;
+ 7.*) distro=wheezy ;;
+ # might be that I'm getting 'jessie'sid' just because it's still testing..
+ 8.*|jessie*) distro=jessie ;;
+ *) distro=unknown.debian.in.build.common ;;
+ esac
fi
+ [ -z "$distro" ] && { echo "build.common.pl_getDistro-unknown"; exit 1; }
echo "$distro"
return 0
}
[Ss]L*)
releasename=sl$release
;;
+ squeeze|wheezy|jessie|oneiric|precise|quantal|raring|saucy|trusty|utopic)
+ releasename=$distro
+ ;;
*)
releasename="unknown-name-for-${pl_DISTRO}-please-edit-build.common"
echo 1>&2 "build.common: WARNING - releasename not set for distro=$distro"
# usage: pl_getPackages [-a arch] fcdistro pldistro pkg-file[..s]
function pl_getPackages() { pl_parsePkgs package "$@" ; }
function pl_getGroups() { pl_parsePkgs group "$@" ; }
+function pl_getPips() { pl_parsePkgs pip "$@" ; }
+function pl_getGems() { pl_parsePkgs gem "$@" ; }
##############################
if [ ! -d $configdir ] ; then
if [ -f "${configdir}.svnpath" -o -f "${configdir}.gitpath" ] ; then
echo 1>&2 "Invoking make to extract remote config.${pldistro}"
- make 1>&2 --silent --no-print-directory -C $builddir stage1=true config.${pldistro}
+ # we set PLDISTROTAGS here to /dev/null because when dealing with remote distros
+ # at a very early stage (like searching for devel.pkgs even before the build VM is created)
+ # then make screams because it cannot find a mandatory include file
+ # OTOH this mechanism here is not intended to depend on tags specifically
+ make 1>&2 --no-print-directory -C $builddir stage1=true config.${pldistro} PLDISTROTAGS=/dev/null
fi
fi
# locate it