#!/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 version major=$(shell grep '^MAJOR_VERSION' Rules.mak|sed 's/.*=//') minor=$(shell grep '^MINOR_VERSION' Rules.mak|sed 's/.*=//') version:=$(strip $(major)).$(strip $(minor)) target=$(DEB_HOST_GNU_CPU) #target=powerpc with_shared_libs=y #ifeq ($(target),powerpc) #with_shared_libs=n #endif ifneq ($(target),$(DEB_HOST_GNU_CPU)) target_suffix=-$(target) endif p_dev=libuclibc-dev$(target_suffix) p_lib=libuclibc0$(target_suffix) p_gcc=uclibc$(target_suffix)-toolchain debian/control: debian/control.in debian/rules sed -e s/_TARGET_/$(target_suffix)/ \ -e "s/_ARCHS_/i386 powerpc mipsel sh m68k arm/" \ debian/control.in >debian/control build: build-stamp build-stamp: debian/control dh_testdir # Add here commands to compile the package. cp extra/Configs/Config.$(target) Config echo '#Debian configuration overrides' >>Config ifneq ($(target),$(DEB_HOST_GNU_CPU)) echo 'TARGET_ARCH = $(target)' >>Config echo 'CROSS = $(target)-linux-' >>Config endif 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 = /' >>Config ifeq ($(with_shared_libs),n) echo 'HAVE_SHARED = false' >>Config endif echo 'KERNEL_SOURCE = '`echo /usr/src/kernel-headers-*|sed 's/ .*//'` >>Config $(MAKE) touch build-stamp clean: debian/control dh_testdir dh_testroot rm -f build-stamp rm -f debian/$(p_dev) # Add here commands to clean up after the build process. -$(MAKE) clean dh_clean install: 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_gcc 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 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.0 endif endif # 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_perl ifeq ($(target),$(DEB_HOST_GNU_CPU)) dh_shlibdeps --exclude=ld_uclibc -ldebian/$(p_lib)/usr/$(target)-linux-uclibc/lib else dh_shlibdeps --exclude=lib endif dh_gencontrol dh_md5sums dh_builddeb binary: binary-indep binary-arch .PHONY: build clean binary-indep binary-arch binary install