Well, I am slowly getting through it on RHEL3, too. Managed to compile on
x86_64, i386 and ia64. Main patches are attached.

On Friday 08 July 2005 19:02, Bernard Li wrote:
> glibc-2.3.4-2
> glibc-common-2.3.4-2
> glibc-2.3.4-2
> glibc-kernheaders-2.4-9.1.87
> glibc-devel-2.3.4-2
> glibc-headers-2.3.4-2

I also get the debuginfo stuff generated, I was wrong. Some rpmbuild macros do
this. I disabled the check in the SPEC file for now.

> BTW, if it helps, I was able to rebuild my SRPM on Fedora Core 2.  I
> have tweaked it a bit since, because I realize that after I update zlib
> to 1.2.2, I no longer need to have the -fPIC flag (I guess configure is
> smart enough to figure that out in the updated version).  I have updated
> my SRPM in case you want to try it again...

I'm quite sure you're picking up stuff from FC2 libraries where you actually
did compile packages for. This is what a "lean" distro like RHEL3 is showing.

The patches attached fix most of the problems (I hope). Additionally I updated
to kernel 2.6.10 for ia64 and x86_64. Then I included all the SATA
drivers. This should work now. (The config files are pretty big, I'll post
them separatately).

Unfortunately on RHEL3 doesn't seem to work properly with the 2.6.10 kernel,
so the dependencies are wrong, therefore in the autoinstall script (of OSCAR)
ext3 load fails, because the dependeing modules mbcache and jbd aren't loaded
automatically. Better the Makefile calls the self-compiled depmod here...

Regards,
Erich

--- initrd_source/initrd.rul	2005-06-26 13:44:26.000000000 +0200
+++ /home/focht/changes_sim-3.5.2/initrd.rul	2005-07-08 18:55:05.000000000 +0200
@@ -151,11 +151,18 @@
 	cp -a /lib/ld*   $(INITRD_BUILD_DIR)/lib
 	test ! -d /lib64 || cp -a /lib64/ld* $(INITRD_BUILD_DIR)/lib64
 	# Explicitly include more w/mklibs -L.  -dawild-
+ifeq ($(ARCH),x86_64)
+	( cd $(INITRD_BUILD_DIR) && \
+		$(PYTHON) $(INITRD_DIR)/mklibs -L /lib64:/usr/lib64:/lib:/usr/lib -v -d lib64 ./*bin/* )
+	# copy libnss files as they are not automatically included
+	cp -a /lib64/libnss_dns* $(INITRD_BUILD_DIR)/lib64
+else
 	( cd $(INITRD_BUILD_DIR) && \
 		$(PYTHON) $(INITRD_DIR)/mklibs -L /lib:/usr/lib:/lib64:/usr/lib64 -v -d lib ./*bin/* )
 	# copy libnss files as they are not automatically included
 	cp -a /lib/libnss_dns* $(INITRD_BUILD_DIR)/lib
 endif
+endif
 
 	# Strip 'em. -BEF-
 	strip $(INITRD_BUILD_DIR)/bin/*
--- make.d/lvm.rul	2005-06-26 13:44:21.000000000 +0200
+++ /home/focht/changes_sim-3.5.2/lvm.rul	2005-07-08 18:54:55.000000000 +0200
@@ -9,10 +9,10 @@
 #
 
 
-DEVMAPPER_VERSION	:= 1.00.21
+DEVMAPPER_VERSION	:= 1.01.02
 DEVMAPPER_DIR		:= device-mapper.$(DEVMAPPER_VERSION)
 DEVMAPPER_TARBALL	:= device-mapper.$(DEVMAPPER_VERSION).tgz
-DEVMAPPER_URL		:= ftp://sources.redhat.com/pub/dm/old/device-mapper.1.00.21.tgz
+DEVMAPPER_URL		:= ftp://sources.redhat.com/pub/dm/old/device-mapper.$(DEVMAPPER_VERSION).tgz
 DEVMAPPER_BINARY	:= $(SRC_DIR)/$(DEVMAPPER_DIR)/lib/ioctl/libdevmapper.so
 MKLIBS 				+= $(SRC_DIR)/$(DEVMAPPER_DIR)/lib/ioctl
 
@@ -30,6 +30,7 @@
 	cd $(SRC_DIR)/$(DEVMAPPER_DIR) && \
 		./configure --prefix=/usr --disable-nls --with-optimisation=-Os
 	$(MAKE) -C $(SRC_DIR)/$(DEVMAPPER_DIR)
+	ln -s $(DEVMAPPER_BINARY) $(DEVMAPPER_BINARY).$(basename $(DEVMAPPER_VERSION))
 
 $(SRC_DIR)/$(DEVMAPPER_TARBALL):
 	[ -d $(SRC_DIR) ] || mkdir -p $(SRC_DIR)
--- make.d/kernel.rul	2005-06-26 13:44:21.000000000 +0200
+++ /home/focht/changes_sim-3.5.2/kernel.rul	2005-07-08 18:54:55.000000000 +0200
@@ -17,7 +17,7 @@
 endif
 
 ifeq ($(ARCH),ia64)
-	LINUX_VERSION = 2.6.9
+	LINUX_VERSION = 2.6.10
 	LINUX_URL = http://www.kernel.org/pub/linux/kernel/v2.6/$(LINUX_TARBALL)
 	LINUX_IMAGE = $(LINUX_SRC)/vmlinux.gz
 	LINUX_TARGET = compressed
@@ -41,7 +41,7 @@
 endif
 
 ifeq ($(ARCH),x86_64)
-	LINUX_VERSION = 2.6.7
+	LINUX_VERSION = 2.6.10
 	LINUX_URL = http://www.kernel.org/pub/linux/kernel/v2.6/$(LINUX_TARBALL)
 	LINUX_IMAGE = $(LINUX_SRC)/arch/x86_64/boot/bzImage
 	LINUX_TARGET = bzImage
--- Makefile	2005-06-26 13:44:26.000000000 +0200
+++ /home/focht/changes_sim-3.5.2/Makefile	2005-07-08 19:03:18.000000000 +0200
@@ -144,7 +144,12 @@
 # is userspace 64bit
 USERSPACE64 := 0
 ifeq ($(ARCH),ia64) 
-	USERSPACE64 :=1
+	USERSPACE64 := 1
+endif
+
+USERSPACE64 := 0
+ifeq ($(ARCH),x86_64)
+        USERSPACE64 := 1
 endif
 
 ifneq ($(BUILD_ARCH),)
@@ -565,11 +570,13 @@
 endif
 
 ifeq ($(USERSPACE64),1)
+	TGTDIR=/lib ; \
+	test -d /lib64 && TGTDIR=/lib64 ; \
 	cd $(BOEL_BINARIES_DIR) \
-		&& $(PYTHON) $(TOPDIR)/initrd_source/mklibs -L /lib64:/usr/lib64:$(SRC_DIR)/$(PARTED_DIR)/libparted/.libs:/usr/kerberos/lib:$(SRC_DIR)/$(DISCOVER_DIR)/lib/.libs -v -d lib bin/* sbin/*
+		&& $(PYTHON) $(TOPDIR)/initrd_source/mklibs -L $(SRC_DIR)/$(PARTED_DIR)/libparted/.libs:$(SRC_DIR)/$(DISCOVER_DIR)/lib/.libs:$(SRC_DIR)/$(DEVMAPPER_DIR)/lib/ioctl:$(SRC_DIR)/$(E2FSPROGS_DIR)/lib:/lib64:/usr/lib64:/usr/kerberos/lib64:/lib:/usr/lib:/usr/kerberos/lib -v -d $$TGTDIR bin/* sbin/*
 else
 	cd $(BOEL_BINARIES_DIR) \
-		&& $(PYTHON) $(TOPDIR)/initrd_source/mklibs -L /lib:/usr/lib:$(SRC_DIR)/$(PARTED_DIR)/libparted/.libs:/usr/kerberos/lib:$(SRC_DIR)/$(DISCOVER_DIR)/lib/.libs -v -d lib bin/* sbin/*
+		&& $(PYTHON) $(TOPDIR)/initrd_source/mklibs -L $(SRC_DIR)/$(PARTED_DIR)/libparted/.libs:/usr/kerberos/lib:$(SRC_DIR)/$(DISCOVER_DIR)/lib/.libs:$(SRC_DIR)/$(DEVMAPPER_DIR)/lib/ioctl:$(SRC_DIR)/$(E2FSPROGS_DIR)/lib:/lib:/usr/lib -v -d lib bin/* sbin/*
 endif
 	#
 	# Include other files required by openssh that apparently aren't 
--- make.d/zlib.rul	2005-06-26 13:44:21.000000000 +0200
+++ /home/focht/changes_sim-3.5.2/zlib.rul	2005-07-08 18:54:55.000000000 +0200
@@ -1,4 +1,4 @@
-ZLIB_VERSION := 1.1.4
+ZLIB_VERSION := 1.2.2
 ZLIB_DIR := zlib-$(ZLIB_VERSION)
 ZLIB_TARBALL := zlib-$(ZLIB_VERSION).tar.gz
 ZLIB_URL := http://www.zlib.net/$(ZLIB_TARBALL)
@@ -19,7 +19,8 @@
 	# So, we just do it twice...
 	( cd $(SRC_DIR)/$(ZLIB_DIR) && ./configure)
 	$(MAKE) -C $(SRC_DIR)/$(ZLIB_DIR)
-	( cd $(SRC_DIR)/$(ZLIB_DIR) && ./configure --shared)
+	( cd $(SRC_DIR)/$(ZLIB_DIR) && rm -f *.o)
+	( cd $(SRC_DIR)/$(ZLIB_DIR) && CXXFLAGS="$CXXFLAGS -fPIC" ./configure --shared)
 	$(MAKE) -C $(SRC_DIR)/$(ZLIB_DIR)
 
 # download the zlib tarball

Reply via email to