From 8a7a9fddb971bc9b3a51a79890cc00a8dff22f4d Mon Sep 17 00:00:00 2001
From: P. J. McDermott <pjm@nac.net>
Date: Mon, 23 Apr 2012 15:55:41 -0400
Subject: Rewrite 'build' makefile.

---
(limited to 'build')

diff --git a/build b/build
index 6cc5a80..d6fe598 100755
--- a/build
+++ b/build
@@ -1,18 +1,134 @@
 #! /usr/bin/make -f
 
-PKGS = xmlwf xmlwf-doc libexpat.1 libexpat.1-dev libexpat.1-dbg
+PKGS = libc.6.pkg libc.6-dbg.pkg libc.6-dev.pkg \
+       libc-bin.pkg libc-dev-bin.pkg nscd.pkg \
+       locales.pkg zoneinfo.pkg
+       eglibc-doc.pkg \
 
-$(PKGS): expat.buildstamp
+prefix = /usr
+bindir = $(prefix)/bin
+sbindir = $(prefix)/sbin
+libexecdir = $(prefix)/lib
+sysconfdir = /etc
+libdir = /usr/lib
+includedir = $(prefix)/include
+datarootdir = $(prefix)/share
+datadir = $(prefix)/share
+infodir = $(prefix)/share/info
+localedir = $(prefix)/lib/locale
+mandir = $(prefix)/share/man
+docdir = $(prefix)/share/doc
+rootsbindir = /sbin
+rtlddir = /lib
+slibdir = /lib
 
-.SILENT: expat.buildstamp
-expat.buildstamp:
-	cd src && \
-		./configure --prefix=/usr \
-		--build=$${OH_BUILD_ARCH_GNU} --host=$${OH_HOST_ARCH_GNU} && \
-		make && make DESTDIR=$$(pwd)/../dest install
-	oh-strip -gl /usr/lib/libexpat.so.1.6.0
+$(PKGS): eglibc.stamp
+
+.SILENT: eglibc.setup.stamp
+eglibc.setup.stamp:
+	cd src/libc && \
+		ln -s ../ports ports
+	mkdir libcbuild
+	touch eglibc.setup.stamp
+
+.SILENT: eglibc.configure.stamp
+eglibc.configure.stamp: eglibc.setup.stamp
+	cd libcbuild && \
+		rm -f config.cache
+		echo 'libc_cv_forced_unwind=yes' >> config.cache && \
+		echo 'libc_cv_c_cleanup=yes' >> config.cache && \
+		echo 'libc_cv_gnu89_inline=yes' >> config.cache && \
+		echo 'libc_cv_ssp=no' >> config.cache && \
+		rm -f configparams && \
+		echo 'bindir = $(bindir)' >> configparams && \
+		echo 'sbindir = $(sbindir)' >> configparams && \
+		echo 'libexecdir = $(libexecdir)' >> configparams && \
+		echo 'sysconfdir = $(sysconfdir)' >> configparams && \
+		echo 'libdir = $(libdir)' >> configparams && \
+		echo 'includedir = $(includedir)' >> configparams && \
+		echo 'datarootdir = $(datarootdir)' >> configparams && \
+		echo 'datadir = $(datadir)' >> configparams && \
+		echo 'infodir = $(infodir)' >> configparams && \
+		echo 'localedir = $(localedir)' >> configparams && \
+		echo 'mandir = $(mandir)' >> configparams && \
+		echo 'docdir = $(docdir)' >> configparams && \
+		echo 'rootsbindir = $(rootsbindir)' >> configparams && \
+		echo 'rtlddir = $(rtlddir)' >> configparams && \
+		echo 'slibdir = $(slibdir)' >> configparams && \
+		echo "install_root = $$(pwd)/../dest" >> configparams && \
+		if [ -n "$${TOOLS_PREFIX}" ]; then \
+			BINUTILS=--with-binutils=$${TOOLS_PREFIX}/bin; \
+		else \
+			BINUTILS=; \
+		fi && \
+		BUILD_CC=gcc BUILD_CXX=g++ ../src/libc/configure \
+			--prefix=/usr \
+			--build=$${OH_BUILD_ARCH_GNU} --host=$${OH_HOST_ARCH_GNU} \
+			--disable-profile --enable-add-ons \
+			--enable-kernel=3.2.0 \
+			--with-tls --with-__thread --without-cvs \
+			--without-selinux --without-gd \
+			$${BINUTILS} \
+			--with-headers=$${HEADERS_PREFIX}/usr/include \
+			--cache-file=config.cache
+	touch eglibc.configure.stamp
+
+.SILENT: eglibc.build.stamp
+eglibc.build.stamp: eglibc.configure.stamp
+	cd libcbuild && \
+		make -j $${JOBS:-1}
+	touch eglibc.build.stamp
+
+.SILENT: eglibc.install.stamp
+eglibc.install.stamp: eglibc.build.stamp
+	cd libcbuild && \
+		make install_root=$$(pwd)/../dest install
+	rm dest/var/db/Makefile \
+		dest/sbin/sln \
+		dest/usr/bin/makedb \
+		dest/usr/bin/pcprofiledump \
+		dest/usr/bin/xtrace
+	rm dest/usr/lib/*_pic*
+	cp -Rp src/libc/ChangeLog*
+	mkdir -p dest/usr/share/doc/eglibc-doc/libidn && \
+		cp -Rp src/libc/libidn/ChangeLog* \
+			dest/usr/share/doc/eglibc-doc/libidn
+	mkdir -p dest/usr/share/doc/eglibc-doc/localedata && \
+		cp -Rp src/libc/localedata/ChangeLog* \
+			dest/usr/share/doc/eglibc-doc/localedata
+	mkdir -p dest/usr/share/doc/eglibc-doc/nptl && \
+		cp -Rp src/libc/nptl/ChangeLog* \
+			dest/usr/share/doc/eglibc-doc/nptl
+	mkdir -p dest/usr/share/doc/eglibc-doc/nptl_db && \
+		cp -Rp src/libc/nptl_db/ChangeLog* \
+			dest/usr/share/doc/eglibc-doc/nptl_db
+	touch eglibc.install.stamp
+	echo '-------- DONE --------'
+	false
+
+	#mkdir localesbuild
+	#cd localesbuild && \
+	#	CPPFLAGS=-DNOT_IN_libc ../src/localedef/configure \
+	#		--prefix=$$(pwd)/../dest/usr \
+	#		--with-glibc=../src/libc && \
+	#	make && \
+	#	make SUPPORTED-LOCALES='\
+	#		de_DE.UTF-8/UTF-8 de_DE/ISO-8859-1 de_DE@euro/ISO-8859-15 \
+	#		en_HK.UTF-8/UTF-8 en_HK/ISO-8859-1 \
+	#		en_PH.UTF-8/UTF-8 en_PH/ISO-8859-1 \
+	#		en_US.UTF-8/UTF-8 en_US/ISO-8859-1 \
+	#		es_MX.UTF-8/UTF-8 es_MX/ISO-8859-1 \
+	#		fa_IR/UTF-8 \
+	#		fr_FR.UTF-8/UTF-8 fr_FR/ISO-8859-1 fr_FR@euro/ISO-8859-15 \
+	#		it_IT.UTF-8/UTF-8 it_IT/ISO-8859-1 \
+	#		ja_JP.EUC-JP/EUC-JP ja_JP.UTF-8/UTF-8' install-locales
+
+	#oh-strip -gl /usr/bin /usr/lib/*
+
+.SILENT: eglibc.stamp
+eglibc.stamp: eglibc.install.stamp
 	oh-installfiles $(PKGS)
-	oh-installdocs libexpat.1
+	oh-installdocs libc.6
 	oh-gencontrol $(PKGS)
 	oh-buildopk $(PKGS)
-	touch expat.buildstamp
+	touch eglibc.stamp
--
cgit v0.9.1