# Distributed under the GPL v2
# $Id$
+ 12 Feb 2012; Robin H. Johnson <robbat2@gentoo.org> gen_cmdline.sh,
+ gen_compile.sh, gen_determineargs.sh, gen_funcs.sh, genkernel.conf:
+ device-mapper "update". It was merged into LVM2-2.02.67 upstream in 2010.
+ Bug #398467 is wrong for the device-mapper update.
+
09 Feb 2012; Robin H. Johnson <robbat2@gentoo.org> defaults/initrd.scripts,
defaults/linuxrc:
Dogfooding of the /usr mount code with the matching OpenRC change to make the
CMD_DMRAID=`parse_optbool "$*"`
if [ "$CMD_DMRAID" = "1" -a ! -e /usr/include/libdevmapper.h ]
then
- echo 'Error: --dmraid requires device-mapper to be installed'
- echo ' on the host system; try "emerge device-mapper".'
+ echo 'Error: --dmraid requires LVM2 to be installed'
+ echo ' on the host system; try "emerge lvm2".'
exit 1
fi
print_info 2 "CMD_DMRAID: ${CMD_DMRAID}"
CMD_MULTIPATH=`parse_optbool "$*"`
if [ "$CMD_MULTIPATH" = "1" -a ! -e /usr/include/libdevmapper.h ]
then
- echo 'Error: --multipath requires device-mapper to be installed'
- echo ' on the host;system; try "emerge device-mapper".'
+ echo 'Error: --multipath requires LVM2 to be installed'
+ echo ' on the host;system; try "emerge lvm2".'
exit 1
fi
print_info 2 "CMD_MULTIPATH: ${CMD_MULTIPATH}"
}
compile_device_mapper() {
- if [ ! -f "${DEVICE_MAPPER_BINCACHE}" ]
- then
- [ ! -f "${DEVICE_MAPPER_SRCTAR}" ] &&
- gen_die "Could not find device-mapper source tarball: ${DEVICE_MAPPER_SRCTAR}. Please place it there, or place another version, changing /etc/genkernel.conf as necessary!"
- cd "${TEMP}"
- rm -rf "${DEVICE_MAPPER_DIR}"
- /bin/tar -zxpf "${DEVICE_MAPPER_SRCTAR}"
- [ ! -d "${DEVICE_MAPPER_DIR}" ] &&
- gen_die "device-mapper directory ${DEVICE_MAPPER_DIR} invalid"
- cd "${DEVICE_MAPPER_DIR}"
- apply_patches device-mapper ${DEVICE_MAPPER_VER}
- CFLAGS="-fPIC" \
- ./configure --prefix=${TEMP}/device-mapper --enable-static_link \
- --disable-selinux >> ${LOGFILE} 2>&1 ||
- gen_die 'Configuring device-mapper failed!'
- print_info 1 'device-mapper: >> Compiling...'
- compile_generic '' utils
- compile_generic 'install' utils
- print_info 1 ' >> Copying to cache...'
- cd "${TEMP}"
- rm -rf "${TEMP}/device-mapper/man" ||
- gen_die 'Could not remove manual pages!'
- strip "${TEMP}/device-mapper/sbin/dmsetup" ||
- gen_die 'Could not strip dmsetup binary!'
- /bin/tar -jcpf "${DEVICE_MAPPER_BINCACHE}" device-mapper ||
- gen_die 'Could not tar up the device-mapper binary!'
- [ -f "${DEVICE_MAPPER_BINCACHE}" ] ||
- gen_die 'device-mapper cache not created!'
- cd "${TEMP}"
- rm -rf "${DEVICE_MAPPER_DIR}" > /dev/null
- rm -rf "${TEMP}/device-mapper" > /dev/null
- fi
+ compile_lvm
}
compile_e2fsprogs() {
CACHE_DIR=`arch_replace "${CACHE_DIR}"`
BUSYBOX_BINCACHE=`cache_replace "${BUSYBOX_BINCACHE}"`
- DEVICE_MAPPER_BINCACHE=`cache_replace "${DEVICE_MAPPER_BINCACHE}"`
LVM_BINCACHE=`cache_replace "${LVM_BINCACHE}"`
MDADM_BINCACHE=`cache_replace "${MDADM_BINCACHE}"`
DMRAID_BINCACHE=`cache_replace "${DMRAID_BINCACHE}"`
DEFAULT_KERNEL_CONFIG=`arch_replace "${DEFAULT_KERNEL_CONFIG}"`
BUSYBOX_CONFIG=`arch_replace "${BUSYBOX_CONFIG}"`
BUSYBOX_BINCACHE=`arch_replace "${BUSYBOX_BINCACHE}"`
- DEVICE_MAPPER_BINCACHE=`arch_replace "${DEVICE_MAPPER_BINCACHE}"`
LVM_BINCACHE=`arch_replace "${LVM_BINCACHE}"`
MDADM_BINCACHE=`arch_replace "${MDADM_BINCACHE}"`
DMRAID_BINCACHE=`arch_replace "${DMRAID_BINCACHE}"`
}
check_distfiles() {
- for i in $BUSYBOX_SRCTAR $DEVICE_MAPPER_SRCTAR $MULTIPATH_SRCTAR $LVM_SRCTAR $DMRAID_SRCTAR $E2FSPROGS_SRCTAR $ISCSI_SRCTAR $GPG_SRCTAR
+ for i in $BUSYBOX_SRCTAR $MULTIPATH_SRCTAR $LVM_SRCTAR $DMRAID_SRCTAR $E2FSPROGS_SRCTAR $ISCSI_SRCTAR $GPG_SRCTAR
do
if [ ! -f "${i}" ]
then
BUSYBOX_BINCACHE="%%CACHE%%/busybox-${BUSYBOX_VER}-%%ARCH%%.tar.bz2"
#BUSYBOX_APPLETS="[ ash sh mount uname echo cut cat"
-DEVICE_MAPPER_VER="VERSION_DMAP"
-DEVICE_MAPPER_DIR="device-mapper.${DEVICE_MAPPER_VER}"
-DEVICE_MAPPER_SRCTAR="${DISTDIR}/device-mapper.${DEVICE_MAPPER_VER}.tgz"
-DEVICE_MAPPER_BINCACHE="%%CACHE%%/device-mapper-${DEVICE_MAPPER_VER}-%%ARCH%%.tar.bz2"
-
LVM_VER="VERSION_LVM"
LVM_DIR="LVM2.${LVM_VER}"
LVM_SRCTAR="${DISTDIR}/LVM2.${LVM_VER}.tgz"