source: MondoRescue/branches/stable/mindi/install.sh@ 916

Last change on this file since 916 was 916, checked in by Bruno Cornec, 17 years ago

Fixes to support CentOS build
Fixes for build errors reporetd by Andy Wright (mondo_at_eltofts.homelinux.com)

  • Property svn:keywords set to Id
File size: 4.1 KB
Line 
1#!/bin/bash
2#
3# $Id: install.sh 916 2006-11-02 18:47:32Z bruno $
4#
5
6if [ ! -f "mindi" ] ; then
7 echo "Please 'cd' to the directory you have just untarred." >> /dev/stderr
8 exit 1
9fi
10
11if [ "_$PREFIX" != "_" ]; then
12 local=$PREFIX
13 if [ -f /usr/local/sbin/mindi ]; then
14 echo "WARNING: /usr/local/sbin/mindi exists. You should probably remove it !"
15 fi
16 conf=$CONFDIR/mindi
17 echo $PATH | grep /usr/sbin > /dev/null || echo "Warning - your PATH environmental variable is BROKEN. Please add /usr/sbin to your PATH."
18else
19 local=/usr/local
20 if [ -f /usr/sbin/mindi ]; then
21 echo "WARNING: /usr/sbin/mindi exists. You should probably remove the mindi package !"
22 fi
23 conf=$local/etc/mindi
24 echo $PATH | grep $local/sbin > /dev/null || echo "Warning - your PATH environmental variable is BROKEN. Please add $local/sbin to your PATH."
25fi
26
27if uname -a | grep Knoppix > /dev/null || [ -e "/ramdisk/usr" ] ; then
28 local=/ramdisk/usr
29 export PATH=/ramdisk/usr/sbin:/ramdisk/usr/bin:/$PATH
30fi
31
32MINDIVER=`cat VERSION`
33MINDIREV=`cat REVISION`
34echo "mindi ${MINDIVER}-r${MINDIREV} will be installed under $local"
35
36DOCDIR=$local/share/doc/mindi-$MINDIVER
37MANDIR=$local/share/man/man8
38
39ARCH=`/bin/arch`
40echo $ARCH | grep -E '^i[0-9]86$' &> /dev/null && ARCH=i386 && locallib=$local/lib
41echo $ARCH | grep -E '^x86_64$' &> /dev/null && locallib=$local/lib64
42echo $ARCH | grep -E '^ia64$' &> /dev/null && locallib=$local/lib
43export ARCH
44
45echo "Creating target directories ..."
46install -m 755 -d $conf $locallib/mindi $MANDIR $local/sbin $DOCDIR
47
48echo "Copying files ..."
49install -m 644 isolinux.cfg msg-txt sys-disk.raw.gz isolinux-H.cfg syslinux.cfg syslinux-H.cfg dev.tgz $locallib/mindi
50install -m 644 deplist.txt $conf
51
52cp -af rootfs aux-tools $locallib/mindi
53chmod 755 $locallib/mindi/rootfs/sbin/*
54chmod 755 $locallib/mindi/aux-tools/sbin/*
55
56# Substirute variables for init
57perl -pi -e "s~^MINDI_VER=VVV~MINDI_VER=$MINDIVER~ ; s~^MINDI_REV=RRR~MINDI_REV=$MINDIREV~" $locallib/mindi/rootfs/sbin/init
58
59# Substirute variables for mindi
60if [ "$RPMBUILDMINDI" = "true" ]; then
61 sed -e "s~^MINDI_PREFIX=XXX~MINDI_PREFIX=/usr~" -e "s~^MINDI_CONF=YYY~MINDI_CONF=/etc/mindi~" -e "s~^MINDI_VER=VVV~MINDI_VER=$MINDIVER~" -e "s~^MINDI_REV=RRR~MINDI_REV=$MINDIREV~" mindi > $local/sbin/mindi
62else
63 sed -e "s~^MINDI_PREFIX=XXX~MINDI_PREFIX=$local~" -e "s~^MINDI_CONF=YYY~MINDI_CONF=$conf~" -e "s~^MINDI_VER=VVV~MINDI_VER=$MINDIVER~" -e "s~^MINDI_REV=RRR~MINDI_REV=$MINDIREV~" mindi > $local/sbin/mindi
64fi
65chmod 755 $local/sbin/mindi
66install -m 755 parted2fdisk.pl $local/sbin
67install -m 755 analyze-my-lvm $locallib/mindi
68
69install -m 644 mindi.8 $MANDIR
70install -m 644 ChangeLog COPYING README README.busybox README.ia64 README.pxe TODO INSTALL svn.log $DOCDIR
71
72if [ ! -f $locallib/mindi/rootfs/bin/busybox ]; then
73 echo "WARNING: no busybox found, mindi will not work on this arch ($ARCH)"
74fi
75
76# Managing parted2fdisk
77if [ "$ARCH" = "ia64" ] ; then
78 (cd $local/sbin && ln -sf parted2fdisk.pl parted2fdisk)
79 make -f Makefile.parted2fdisk DEST=$locallib/mindi install
80 if [ -f $locallib/mindi/rootfs/sbin/parted2fdisk-$ARCH ]; then
81 echo "Installing parted2fdisk ..."
82 install -s -m 755 $locallib/mindi/rootfs/sbin/parted2fdisk-$ARCH $locallib/mindi/rootfs/sbin/parted2fdisk
83 install -s -m 755 $locallib/mindi/rootfs/sbin/parted2fdisk-$ARCH $local/sbin/parted2fdisk
84 else
85 echo "WARNING: no parted2fdisk found, mindi will not work on this arch ($ARCH)"
86 fi
87else
88 # FHS requires fdisk under /sbin
89 (cd $local/sbin && ln -sf /sbin/fdisk parted2fdisk)
90 echo "Symlinking fdisk to parted2fdisk"
91 ( cd $locallib/mindi/rootfs/sbin && ln -sf fdisk parted2fdisk)
92fi
93# Remove left parted2fdisk
94rm -f $locallib/mindi/rootfs/sbin/parted2fdisk-*
95
96if [ "$RPMBUILDMINDI" != "true" ]; then
97 chown -R root:root $locallib/mindi $conf $DOCDIR
98 chown root:root $local/sbin/mindi $MANDIR/mindi.8 $locallib/mindi/analyze-my-lvm $local/sbin/parted2fdisk.pl
99 if [ "$ARCH" = "ia64" ] ; then
100 chown root:root $local/sbin/parted2fdisk
101 fi
102fi
103
104# Special case for SuSE family where doc is put elsewhere in the RPM
105if [ -e /etc/SuSE-release ]; then
106 rm -rf $DOCDIR
107fi
108
109# Special case for Debian family where doc is put elsewhere in the DEB
110if [ -e /etc/debian_version ]; then
111 rm -rf $DOCDIR
112fi
113
114exit 0
Note: See TracBrowser for help on using the repository browser.