| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238 | #!/usr/bin/make -f# Sample debian/rules that uses debhelper.# GNU copyright 1997 to 1999 by Joey Hess.# Uncomment this to turn on verbose mode.#export DH_VERBOSE=1# This is the debhelper compatability version to use.export DH_COMPAT=1#include versionmajor=$(shell grep '^MAJOR_VERSION' Rules.mak|sed 's/.*=//')minor=$(shell grep '^MINOR_VERSION' Rules.mak|sed 's/.*=//')version:=$(strip $(major)).$(strip $(minor))kernel_source=kernel-source-2.4.18target=$(DEB_HOST_GNU_CPU)#target=armwith_shared_libs=y#ifeq ($(target),powerpc)#with_shared_libs=n#endififeq ($(with_shared_libs),y)shared_libs_true=trueelseshared_libs_true=falseendififneq ($(target),$(DEB_HOST_GNU_CPU))target_suffix=-$(target)endififneq ($(target),mipsel)config_orig = extra/Configs/Config.$(target)elseconfig_orig = extra/Configs/Config.mipsendififneq ($(target),$(DEB_HOST_GNU_CPU))cross_options = --cross="$(target)-linux-"elsecross_options = --cross=""endifp_dev=libuclibc-dev$(target_suffix)p_lib=libuclibc0$(target_suffix)p_gcc=uclibc$(target_suffix)-toolchaindebian/control: debian/control.in debian/rules	sed -e s/_TARGET_/$(target_suffix)/ \	  -e "s/_ARCHS_/arm i386 m68k mips mipsel powerpc sh sparc/" \	  -e "s/_KERNEL_/$(kernel_source)/" \	  debian/control.in >debian/controlbuild: build-stampbuild-stamp: debian/control	dh_testdir	# Brute force method of getting kernel headers	tar --bzip2 -xf /usr/src/$(kernel_source).tar.bz2 \	  $(kernel_source)/include	# Hack to get include/asm-arm/arch directory.  This should	# stay here, and not move to the top-level Makefile, since	# it adds a link _in the kernel source_, which is almost	# certainly wrong in most situations.#ifeq ($(target),arm)	ln -s arch-sa1100 $(kernel_source)/include/asm-arm/arch	ln -s proc-armo $(kernel_source)/include/asm-arm/proc#endif		touch $(kernel_source)/include/linux/autoconf.h	# Various stupid programs use linux/version.h to find the	# Linux version.	( \		echo '#define UTS_RELEASE "2.4.16"' \		echo '#define LINUX_VERSION_CODE 132112' \		echo '#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))' \	) >$(kernel_source)/include/linux/version.h	extra/Configs/uClibc_config_fix.pl \		--arch=$(target) \		$(cross_options) \		--devel_prefix=/usr/$(target)-linux-uclibc \		--kernel_dir=`pwd`/$(kernel_source) \		--large_file=true \		--rpc_support=true \		--c99_math=true \		--threads=true \		--long_long=true \		--float=true \		--shadow=true \		--ldso_path="/lib" \		--shared_support=$(shared_libs_true) \		--file=$(config_orig) \		>Configifeq (yes,no)	echo '#Debian configuration overrides'  >>Configifneq ($(target),$(DEB_HOST_GNU_CPU))	echo 'TARGET_ARCH = $(target)'  >>Config	echo 'CROSS = $(target)-linux-'  >>Configelse	echo 'CROSS = '  >>Configendif	echo 'DOPIC = true'  >>Config	echo 'SYSTEM_DEVEL_PREFIX = /usr'  >>Config	echo 'DEVEL_PREFIX = /usr/$$(TARGET_ARCH)-linux-uclibc'  >>Config	echo 'SHARED_LIB_LOADER_PATH = /lib'  >>Config	#echo 'TARGET_PREFIX = /'  >>Configifeq ($(with_shared_libs),n)	echo 'HAVE_SHARED = false' >>Configelse	echo 'HAVE_SHARED = true' >>Configendif	echo 'KERNEL_SOURCE = '`pwd`/$(kernel_source) >>Config	echo 'HAS_MMU = true' >>Config	echo 'HAS_FLOATING_POINT = true' >>Config	echo 'DO_C99_MATH = true' >>Config	echo 'DODEBUG = false' >>Config	echo 'INCLUDE_THREADS = true' >>Configendif	mkdir -p lib	$(MAKE)	touch build-stampclean: debian/control	dh_testdir	dh_testroot	rm -f build-stamp	rm -f debian/$(p_dev)	rm -rf kernel-source-*	# Add here commands to clean up after the build process.	-$(MAKE) clean	-rm Config	dh_cleaninstall: build debian/control	dh_testdir	dh_testroot	dh_clean -k	dh_installdirs	-rm debian/$(p_dev)	ln -s tmp debian/$(p_dev)	# Add here commands to install the package into debian/tmp.	$(MAKE) install_dev PREFIX=`pwd`/debian/$(p_dev)	$(MAKE) install_runtime PREFIX=`pwd`/debian/$(p_lib)	$(MAKE) install_toolchain PREFIX=`pwd`/debian/$(p_gcc)	$(MAKE) install_utils PREFIX=`pwd`/debian/$(p_gcc)	install -d debian/$(p_gcc)/usr/share/man/man1	install -m 644 debian/uclibc-gcc.1 \	  debian/$(p_gcc)/usr/share/man/man1/$(target)-uclibc-gcc.1	(cd debian/$(p_gcc)/usr/share/man/man1; \	  ln -sf $(target)-uclibc-gcc.1.gz $(target)-uclibc-cc.1.gz; \	  ln -sf $(target)-uclibc-gcc.1.gz $(target)-uclibc-ld.1.gz; \	  for x in addr2line ar as cpp gasp nm objcopy objdump ranlib \	  size strings strip;do \	    ln -sf $$x.1.gz $(target)-uclibc-$$x.1.gz;done)		install -d debian/$(p_lib)/usr/share/man/man1	install -m 644 debian/uclibc-ldd.1 \	  debian/$(p_lib)/usr/share/man/man1/$(target)-uclibc-ldd.1	install -m 644 debian/uclibc-ldconfig.1 \	  debian/$(p_lib)/usr/share/man/man1/$(target)-uclibc-ldconfig.1	install -m 644 debian/uclibc-readelf.1 \	  debian/$(p_lib)/usr/share/man/man1/$(target)-uclibc-readelf.1	(cd debian/$(p_dev); find . -name '.*' -exec rm -f '{}' ';')	(cd debian/$(p_lib); find . -name '.*' -exec rm -f '{}' ';')	(cd debian/$(p_gcc); find . -name '.*' -exec rm -f '{}' ';')ifeq ($(with_shared_libs),y)ifeq ($(target),$(DEB_HOST_GNU_CPU))	mkdir -p debian/$(p_lib)/lib/	ln -sf /usr/$(target)-linux-uclibc/lib/ld-uClibc.so.0 \	  debian/$(p_lib)/lib/ld-uClibc.so.0endifendif# Build architecture-independent files here.binary-indep:# Build architecture-dependent files here.binary-arch: build install#	dh_testversion	dh_testdir	dh_testroot#	dh_installdebconf		dh_installdocs	dh_installexamples	dh_installmenu#	dh_installemacsen#	dh_installpam#	dh_installinit	dh_installcron#	dh_installmanpages -plibuclibc0	dh_installinfo#	dh_undocumented	dh_installchangelogs 	dh_link	cd debian/libuclibc0 && ../fixlinks	cd debian/libuclibc-dev && ../fixlinks	cd debian/uclibc-toolchain && ../fixlinks	dh_strip	dh_compress	dh_fixperms -Xld-uClibc	# You may want to make some executables suid here.#	dh_suidregister#	dh_makeshlibs	dh_installdeb#	dh_perlifeq ($(target),$(DEB_HOST_GNU_CPU))	dh_shlibdeps --exclude=ld_uclibc -ldebian/$(p_lib)/usr/$(target)-linux-uclibc/libelse	dh_shlibdeps --exclude=libendif	dh_gencontrol	dh_md5sums	dh_builddebbinary: binary-indep binary-arch.PHONY: build clean binary-indep binary-arch binary install
 |