summaryrefslogtreecommitdiffstats
path: root/perl-install/Makefile
diff options
context:
space:
mode:
Diffstat (limited to 'perl-install/Makefile')
-rw-r--r--perl-install/Makefile42
1 files changed, 27 insertions, 15 deletions
diff --git a/perl-install/Makefile b/perl-install/Makefile
index 342bf3e26..4b01fa5f5 100644
--- a/perl-install/Makefile
+++ b/perl-install/Makefile
@@ -12,6 +12,14 @@ OTHERS = $(OTHERDIRS) $(OTHERFILES)
OTHERDIRS = tools/ddcprobe tools/serial_probe
OTHERFILES = tools/rpcinfo-flushed.c
+USE_PCMCIA := n
+ifeq ($(ARCH),i386)
+USE_PCMCIA := y
+endif
+ifeq ($(ARCH),x86_64)
+USE_PCMCIA := y
+endif
+
.PHONY: all $(DIRS) install clean stage2 full_stage2
all: list_modules.pm TAGS $(DIRS)
@@ -84,22 +92,22 @@ get_needed_files: $(DIRS) mo_files
@if rpm -q XFree86-VGA16 | grep -q 29mdk; then echo "XFree86-VGA16 29mdk is bad, downgrade to 28mdk" ; exit 1 ; fi
-# export PERL_INSTALL_TEST=1 ; strace -f -e trace=file -o '| grep -v "(No such file or directory)" | sed -e "s/[^\"]*\"//" -e "s/\".*//" | grep "^/" | grep -v -e "^/tmp" -e "^/home" -e "^/proc" -e "^/var" -e "^/dev" -e "^/etc" -e "^/usr/lib/rpm" > /tmp/list ' $(PERL) -d install2 < /dev/null
+# export PERL_INSTALL_TEST=1 ; strace -f -e trace=file -o '| grep -v "(No such file or directory)" | sed -e "s/[^\"]*\"//" -e "s/\".*//" | grep "^/" | grep -v -e "^/tmp" -e "^/home" -e "^/proc" -e "^/var" -e "^/dev" -e "^/etc" -e "^/usr/lib/rpm" > $(TMPDIR)/list ' $(PERL) -d install2 < /dev/null
eval `perl -V:version`; \
cat share/list `../tools/specific_arch share/list` | \
perl -pe "s/ARCH/$(ARCH)/g ; s/PERL_VERSION/$$version/g ; s|/LIB/|/$(LIB)/|g " | \
- perl -lpe '@l = glob; !m|\*.*/| || @l == 1 and $$_ = join("\n", @l)' > /tmp/list
- rpm -ql perl-Gtk2 perl-Glib | grep '^/usr/lib/perl5' | grep -v '\.pod$$' >> /tmp/list
+ perl -lpe '@l = glob; !m|\*.*/| || @l == 1 and $$_ = join("\n", @l)' > $(TMPDIR)/list
+ rpm -ql perl-Gtk2 perl-Glib | grep '^/usr/lib/perl5' | grep -v '\.pod$$' >> $(TMPDIR)/list
- @missing=`perl -lne 'print if !-e $$_' /tmp/list`; [ -z "$$missing" ] || { echo "missing or multiple files vvvvvvvvvvvvvvvvvvvvvvvvvv" ; echo "$$missing" ; echo "missing or multiple files ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" ; exit 1; }
+ @missing=`perl -lne 'print if !-e $$_' $(TMPDIR)/list`; [ -z "$$missing" ] || { echo "missing or multiple files vvvvvvvvvvvvvvvvvvvvvvvvvv" ; echo "$$missing" ; echo "missing or multiple files ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^" ; exit 1; }
- find auto -follow -name "*.so" >> /tmp/list
+ find auto -follow -name "*.so" >> $(TMPDIR)/list
- for i in $(LOCALFILES) `cat /tmp/list` ; do \
- ldd $$i 2>/dev/null | grep "=>" | perl -pe 's/.*=> //; s/ .*//; s,^/lib/.*?/,/lib/,' | sort | uniq >> /tmp/list; \
+ for i in $(LOCALFILES) `cat $(TMPDIR)/list` ; do \
+ ldd $$i 2>/dev/null | grep "=>" | perl -pe 's/.*=> //; s/ .*//; s,^/(lib(64)?)/.*?/,/\1/,' | sort | uniq >> $(TMPDIR)/list; \
done
- perl -Mlang -I. -e 'print "$$_\n" foreach lang::console_font_files()' >> /tmp/list
+ perl -Mlang -I. -e 'print "$$_\n" foreach lang::console_font_files()' >> $(TMPDIR)/list
install -d $(DEST)/etc
install -d $(DEST)/etc/sysconfig/network-scripts
@@ -127,7 +135,7 @@ ifeq (i386,$(ARCH))
install -s /sbin/cardmgr $(DEST)/usr/bin
endif
- for i in `cat /tmp/list`; do \
+ for i in `cat $(TMPDIR)/list`; do \
if (echo $$i | grep -q "lib/[^/]*\.so"); then \
install -s $$i $(DEST)/lib; \
elif (echo $$i | grep -q "lib64/[^/]*\.so"); then \
@@ -178,9 +186,10 @@ endif
unneeded=`perl -I. -Mlang -e 'lang::get_unneeded_png_lang_files'`; cd $(DEST)/usr/share; rm -f $$unneeded
cd share ; cp compssUsers compssUsers.* rpmsrate $(ROOTDEST)/Mandrake/base
- clean-rpmsrate $(ROOTDEST)/Mandrake/base/rpmsrate $(ROOTDEST)/Mandrake/RPMS*
+ /usr/bin/clean-rpmsrate $(ROOTDEST)/Mandrake/base/rpmsrate $(ROOTDEST)/Mandrake/RPMS*
for i in ../kernel/modules.description ../kernel/all.modules/modules.cz*; do cp -f $$i $(DEST)/lib/; done
+ rm -f $(DEST)/lib/modules.cz-cdcom.*
$(MAKE) -C share/po install SUDO= NAME=libDrakX LOCALEDIR=$(DEST)/usr/share/locale_special
@@ -188,7 +197,7 @@ endif
# ga and sl are disabled because too few messages are translated
rm -rf $(DEST)/usr/share/locale_special/{ar,fa,ga,sl}
-ifeq (i386,$(ARCH))
+ifeq (y,$(USE_PCMCIA))
cp -a /etc/pcmcia $(DEST)/etc
../tools/patch_pcmcia_config.pl $(DEST)/etc/pcmcia/config ../kernel/all.modules/`cat ../kernel/all.kernels/.main`/modules.dep
endif
@@ -196,16 +205,19 @@ endif
find $(DEST) -name CVS | xargs rm -rf
full_stage2:
- if [ `id -u` = 0 ]; then rm -rf $(DEST); else $(SUDO) rm -rf $(DEST); fi
- mkdir -p $(DEST)
- $(MAKE) get_needed_files
$(MAKE) stage2
+ $(MAKE) mdkinst_stage2
+
+mdkinst_stage2:
+ $(ROOTDEST)/misc/make_mdkinst_stage2 $(DEST) $(ROOTDEST)/Mandrake/base/mdkinst_stage2
stage2:
+ if [ `id -u` = 0 ]; then rm -rf $(DEST); else $(SUDO) rm -rf $(DEST); fi
+ mkdir -p $(DEST)
+ $(MAKE) get_needed_files
$(MAKE) install_pms
find $(DEST)/usr -name "*.pm" | xargs gzip -9f
cd $(DEST)/usr/lib/perl5 ; gunzip 5.*/{PerlIO,Exporter}.pm.gz 5.*/*-linux-thread-multi/{XSLoader,lib}.pm.gz vendor_perl/*/*-linux-thread-multi/PerlIO/gzip.pm.gz
- $(ROOTDEST)/misc/make_mdkinst_stage2 $(DEST) $(ROOTDEST)/Mandrake/base/mdkinst_stage2
# rules to build a test rpm