#!/usr/bin/make -f
|
#!/usr/bin/make -f
|
# Sample debian/rules that uses debhelper.
|
# Sample debian/rules that uses debhelper.
|
# GNU copyright 1997 to 1999 by Joey Hess.
|
# GNU copyright 1997 to 1999 by Joey Hess.
|
|
|
# Uncomment this to turn on verbose mode.
|
# Uncomment this to turn on verbose mode.
|
#export DH_VERBOSE=1
|
#export DH_VERBOSE=1
|
|
|
# This is the debhelper compatability version to use.
|
# This is the debhelper compatability version to use.
|
export DH_COMPAT=3
|
export DH_COMPAT=3
|
|
|
#include version
|
#include version
|
major=$(shell grep '^MAJOR_VERSION' Rules.mak|sed 's/.*=//')
|
major=$(shell grep '^MAJOR_VERSION' Rules.mak|sed 's/.*=//')
|
minor=$(shell grep '^MINOR_VERSION' Rules.mak|sed 's/.*=//')
|
minor=$(shell grep '^MINOR_VERSION' Rules.mak|sed 's/.*=//')
|
version:=$(strip $(major)).$(strip $(minor))
|
version:=$(strip $(major)).$(strip $(minor))
|
|
|
kernel_version=2.4.22
|
kernel_version=2.4.22
|
kernel_source=kernel-source-$(kernel_version)
|
kernel_source=kernel-source-$(kernel_version)
|
|
|
builddir=$(shell pwd)
|
builddir=$(shell pwd)
|
|
|
target=$(DEB_HOST_GNU_CPU)
|
target=$(DEB_HOST_GNU_CPU)
|
|
|
with_shared_libs=y
|
with_shared_libs=y
|
|
|
ifeq ($(with_shared_libs),y)
|
ifeq ($(with_shared_libs),y)
|
shared_libs_true=true
|
shared_libs_true=true
|
else
|
else
|
shared_libs_true=false
|
shared_libs_true=false
|
endif
|
endif
|
|
|
ifneq ($(target),$(DEB_HOST_GNU_CPU))
|
ifneq ($(target),$(DEB_HOST_GNU_CPU))
|
target_suffix=-$(target)
|
target_suffix=-$(target)
|
endif
|
endif
|
|
|
ifneq ($(target),$(DEB_HOST_GNU_CPU))
|
ifneq ($(target),$(DEB_HOST_GNU_CPU))
|
cross_options = --cross="$(target)-linux-"
|
cross_options = --cross="$(target)-linux-"
|
else
|
else
|
cross_options = --cross=""
|
cross_options = --cross=""
|
endif
|
endif
|
|
|
p_dev=uclibc-dev$(target_suffix)
|
p_dev=uclibc-dev$(target_suffix)
|
p_lib=uclibc$(target_suffix)
|
p_lib=uclibc$(target_suffix)
|
|
|
build: build-stamp
|
build: build-stamp
|
build-stamp:
|
build-stamp:
|
dh_testdir
|
dh_testdir
|
|
|
# Brute force method of getting kernel headers
|
# Brute force method of getting kernel headers
|
tar --bzip2 -xf /usr/src/$(kernel_source).tar.bz2 \
|
tar --bzip2 -xf /usr/src/$(kernel_source).tar.bz2 \
|
$(kernel_source)/Makefile $(kernel_source)/include
|
$(kernel_source)/Makefile $(kernel_source)/include
|
|
|
|
|
# Hack to get include/asm-arm/arch directory. This should
|
# Hack to get include/asm-arm/arch directory. This should
|
# stay here, and not move to the top-level Makefile, since
|
# stay here, and not move to the top-level Makefile, since
|
# it adds a link _in the kernel source_, which is almost
|
# it adds a link _in the kernel source_, which is almost
|
# certainly wrong in most situations.
|
# certainly wrong in most situations.
|
#ifeq ($(target),arm)
|
#ifeq ($(target),arm)
|
ln -s arch-sa1100 $(kernel_source)/include/asm-arm/arch
|
ln -s arch-sa1100 $(kernel_source)/include/asm-arm/arch
|
ln -s proc-armo $(kernel_source)/include/asm-arm/proc
|
ln -s proc-armo $(kernel_source)/include/asm-arm/proc
|
#endif
|
#endif
|
|
|
touch $(kernel_source)/include/linux/autoconf.h
|
touch $(kernel_source)/include/linux/autoconf.h
|
|
|
# Various stupid programs use linux/version.h to find the
|
# Various stupid programs use linux/version.h to find the
|
# Linux version.
|
# Linux version.
|
( \
|
( \
|
echo '#define UTS_RELEASE "$(kernel_version)"'; \
|
echo '#define UTS_RELEASE "$(kernel_version)"'; \
|
echo '#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))'; \
|
echo '#define KERNEL_VERSION(a,b,c) (((a) << 16) + ((b) << 8) + (c))'; \
|
echo '#define LINUX_VERSION_CODE KERNEL_VERSION($(shell echo $(kernel_version) | sed s/\\./,/g))'; \
|
echo '#define LINUX_VERSION_CODE KERNEL_VERSION($(shell echo $(kernel_version) | sed s/\\./,/g))'; \
|
) >$(kernel_source)/include/linux/version.h
|
) >$(kernel_source)/include/linux/version.h
|
|
|
cp debian/config .config
|
cp debian/config .config
|
|
|
sed -i -e 's,^.*TARGET_$(target).*,TARGET_$(target)=y,g' \
|
sed -i -e 's,^.*TARGET_$(target).*,TARGET_$(target)=y,g' \
|
.config
|
.config
|
sed -i -e 's,^TARGET_ARCH.*,TARGET_ARCH=\"$(target)\",g' \
|
sed -i -e 's,^TARGET_ARCH.*,TARGET_ARCH=\"$(target)\",g' \
|
.config
|
.config
|
sed -i -e 's,^KERNEL_SOURCE=.*,KERNEL_SOURCE=\"$(builddir)/$(kernel_source)\",g' \
|
sed -i -e 's,^KERNEL_SOURCE=.*,KERNEL_SOURCE=\"$(builddir)/$(kernel_source)\",g' \
|
.config
|
.config
|
sed -i -e 's,^RUNTIME_PREFIX=.*,RUNTIME_PREFIX=\"/\",g' \
|
sed -i -e 's,^RUNTIME_PREFIX=.*,RUNTIME_PREFIX=\"/\",g' \
|
.config
|
.config
|
sed -i -e 's,^DEVEL_PREFIX=.*,DEVEL_PREFIX=\"/usr/\",g' \
|
sed -i -e 's,^DEVEL_PREFIX=.*,DEVEL_PREFIX=\"/usr/\",g' \
|
.config
|
.config
|
sed -i -e 's,^SHARED_LIB_LOADER_PREFIX=.*,SHARED_LIB_LOADER_PREFIX=\"/lib\",g' \
|
sed -i -e 's,^SHARED_LIB_LOADER_PREFIX=.*,SHARED_LIB_LOADER_PREFIX=\"/lib\",g' \
|
.config
|
.config
|
sed -i -e 's,.*UCLIBC_HAS_WCHAR.*,UCLIBC_HAS_WCHAR=y\nUCLIBC_HAS_LOCALE=n,g' \
|
sed -i -e 's,.*UCLIBC_HAS_WCHAR.*,UCLIBC_HAS_WCHAR=y\nUCLIBC_HAS_LOCALE=n,g' \
|
.config
|
.config
|
|
|
ifeq ($(target),arm)
|
ifeq ($(target),arm)
|
sed -i -e 's,.*HAS_FPU.*,HAS_FPU=n\nUCLIBC_HAS_FLOATS=y\nUCLIBC_HAS_SOFT_FLOAT=y,g' .config
|
sed -i -e 's,.*HAS_FPU.*,HAS_FPU=n\nUCLIBC_HAS_FLOATS=y\nUCLIBC_HAS_SOFT_FLOAT=y,g' .config
|
echo CONFIG_GENERIC_ARM=y >>.config
|
echo CONFIG_GENERIC_ARM=y >>.config
|
endif
|
endif
|
ifeq ($(target),i386)
|
ifeq ($(target),i386)
|
echo CONFIG_GENERIC_386=y >>.config
|
echo CONFIG_GENERIC_386=y >>.config
|
endif
|
endif
|
yes '' | make oldconfig
|
yes '' | make oldconfig
|
|
|
mkdir -p lib
|
mkdir -p lib
|
|
|
$(MAKE)
|
$(MAKE)
|
$(MAKE) utils
|
$(MAKE) utils
|
|
|
touch build-stamp
|
touch build-stamp
|
|
|
clean:
|
clean:
|
dh_testdir
|
dh_testdir
|
dh_testroot
|
dh_testroot
|
rm -f build-stamp
|
rm -f build-stamp
|
|
|
rm -rf kernel-source-*
|
rm -rf kernel-source-*
|
|
|
# Add here commands to clean up after the build process.
|
# Add here commands to clean up after the build process.
|
-$(MAKE) distclean
|
-$(MAKE) distclean
|
|
|
-rm -f Config
|
-rm -f Config
|
|
|
dh_clean
|
dh_clean
|
|
|
install: build
|
install: build
|
dh_testdir
|
dh_testdir
|
dh_testroot
|
dh_testroot
|
dh_clean -k
|
dh_clean -k
|
dh_installdirs
|
dh_installdirs
|
|
|
-rm debian/tmp
|
-rm debian/tmp
|
-mkdir debian/tmp
|
-mkdir debian/tmp
|
|
|
# Add here commands to install the package into debian/tmp.
|
# Add here commands to install the package into debian/tmp.
|
$(MAKE) install install_utils PREFIX=`pwd`/debian/tmp
|
$(MAKE) install install_utils PREFIX=`pwd`/debian/tmp
|
|
|
install -d debian/tmp/usr/share/man/man1
|
install -d debian/tmp/usr/share/man/man1
|
install -m 644 debian/ldd.1 \
|
install -m 644 debian/ldd.1 \
|
debian/tmp/usr/share/man/man1/ldd.1
|
debian/tmp/usr/share/man/man1/ldd.1
|
install -m 644 debian/ldconfig.1 \
|
install -m 644 debian/ldconfig.1 \
|
debian/tmp/usr/share/man/man1/ldconfig.1
|
debian/tmp/usr/share/man/man1/ldconfig.1
|
|
|
|
|
# Build architecture-independent files here.
|
# Build architecture-independent files here.
|
binary-indep:
|
binary-indep:
|
|
|
# Build architecture-dependent files here.
|
# Build architecture-dependent files here.
|
binary-arch: build install
|
binary-arch: build install
|
# dh_testversion
|
# dh_testversion
|
dh_testdir
|
dh_testdir
|
dh_testroot
|
dh_testroot
|
|
|
dh_movefiles
|
dh_movefiles
|
# dh_installdebconf
|
# dh_installdebconf
|
dh_installdocs
|
dh_installdocs
|
dh_installexamples
|
dh_installexamples
|
dh_installmenu
|
dh_installmenu
|
# dh_installemacsen
|
# dh_installemacsen
|
# dh_installpam
|
# dh_installpam
|
# dh_installinit
|
# dh_installinit
|
dh_installcron
|
dh_installcron
|
# dh_installmanpages -puclibc
|
# dh_installmanpages -puclibc
|
dh_installinfo
|
dh_installinfo
|
# dh_undocumented
|
# dh_undocumented
|
dh_installchangelogs
|
dh_installchangelogs
|
dh_link
|
dh_link
|
dh_strip
|
dh_strip
|
dh_compress
|
dh_compress
|
dh_fixperms -Xld-uClibc
|
dh_fixperms -Xld-uClibc
|
# You may want to make some executables suid here.
|
# You may want to make some executables suid here.
|
# dh_suidregister
|
# dh_suidregister
|
# dh_makeshlibs
|
# dh_makeshlibs
|
dh_installdeb
|
dh_installdeb
|
# dh_perl
|
# dh_perl
|
dh_shlibdeps --exclude=lib
|
dh_shlibdeps --exclude=lib
|
dh_gencontrol
|
dh_gencontrol
|
dh_md5sums
|
dh_md5sums
|
dh_builddeb
|
dh_builddeb
|
|
|
binary: binary-indep binary-arch
|
binary: binary-indep binary-arch
|
.PHONY: build clean binary-indep binary-arch binary install
|
.PHONY: build clean binary-indep binary-arch binary install
|
|
|