X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/775919c0574f7d17f0bd69de0b40333883395c3d..f797e078b18c4cc01c0be4db8351ee327d950a38:/openwrt/package/base-files/Makefile diff --git a/openwrt/package/base-files/Makefile b/openwrt/package/base-files/Makefile index c8f8f6719..16169fa28 100644 --- a/openwrt/package/base-files/Makefile +++ b/openwrt/package/base-files/Makefile @@ -3,28 +3,43 @@ include $(TOPDIR)/rules.mk PKG_NAME:=base-files -PKG_RELEASE:=1 +PKG_RELEASE:=6 +PKG_BUILD_DIR:=$(BUILD_DIR)/base-files -IDIR_BASE:=$(BUILD_DIR)/base-files +REV:=$(shell LANG=C svn info | awk '/^Revision:/ { print$$2 }' ) +ifeq ($(REV),) +REV:=0 +endif + +include $(TOPDIR)/package/rules.mk + +IDIR_BASE:=$(PKG_BUILD_DIR)/base-files IPKG_BASE:=$(PACKAGE_DIR)/$(PKG_NAME)_$(PKG_RELEASE)_$(ARCH).ipk -LIBC_VERSION:=${shell cat $(STAGING_DIR)/uclibc_version} -IDIR_LIBC:=$(BUILD_DIR)/uclibc -IPKG_LIBC:=$(PACKAGE_DIR)/uclibc_$(LIBC_VERSION)-$(PKG_RELEASE)_$(ARCH).ipk +UCLIBC_VERSION:=${shell cat $(STAGING_DIR)/uclibc_version} +IDIR_UCLIBC:=$(PKG_BUILD_DIR)/uclibc +IPKG_UCLIBC:=$(PACKAGE_DIR)/uclibc_$(UCLIBC_VERSION)-$(PKG_RELEASE)_$(ARCH).ipk + +LIBGCC_VERSION:=${shell cat $(STAGING_DIR)/gcc_version} +IDIR_LIBGCC:=$(PKG_BUILD_DIR)/libgcc +IPKG_LIBGCC:=$(PACKAGE_DIR)/libgcc_$(LIBGCC_VERSION)-$(PKG_RELEASE)_$(ARCH).ipk + +PACKAGES:=$(IPKG_BASE) $(IPKG_UCLIBC) $(IPKG_LIBGCC) -GCC_VERSION:=${shell cat $(STAGING_DIR)/gcc_version} -IDIR_GCC:=$(BUILD_DIR)/libgcc -IPKG_GCC:=$(PACKAGE_DIR)/libgcc_$(GCC_VERSION)-$(PKG_RELEASE)_$(ARCH).ipk +$(PKG_BUILD_DIR)/.prepared: + mkdir -p $(PKG_BUILD_DIR) $(PACKAGE_DIR) + touch $@ -PACKAGES:=$(IPKG_BASE) $(IPKG_LIBC) $(IPKG_GCC) +$(PKG_BUILD_DIR)/.configured: + touch $@ -$(PACKAGES): $(PACKAGE_DIR) -$(PACKAGE_DIR): - mkdir -p $@ +$(PKG_BUILD_DIR)/.built: + touch $@ $(IPKG_BASE): $(SCRIPT_DIR)/make-ipkg-dir.sh $(IDIR_BASE) ipkg/$(PKG_NAME).control $(PKG_RELEASE) $(ARCH) cp -a ./default/* $(IDIR_BASE) + $(SED) 's,$$R,r$(REV),g' $(IDIR_BASE)/etc/banner mkdir -p $(IDIR_BASE)/jffs mkdir -p $(IDIR_BASE)/dev mkdir -p $(IDIR_BASE)/proc @@ -37,31 +52,34 @@ $(IPKG_BASE): ln -sf /tmp $(IDIR_BASE)/var -find $(IDIR_BASE) -type d -name CVS | xargs rm -rf -find $(IDIR_BASE) -type d -name .svn | xargs rm -rf + -find $(IDIR_BASE) -name '.#*' | xargs rm -f mkdir -p $(IDIR_BASE)/etc -grep \^BR2_SYSCONF $(TOPDIR)/.config > $(IDIR_BASE)/etc/sysconf $(IPKG_BUILD) $(IDIR_BASE) $(PACKAGE_DIR) -$(IPKG_LIBC): - $(SCRIPT_DIR)/make-ipkg-dir.sh $(IDIR_LIBC) ipkg/uclibc.control $(LIBC_VERSION)-$(PKG_RELEASE) $(ARCH) - mkdir -p $(IDIR_LIBC)/lib - cp -a $(STAGING_DIR)/lib/ld-uClibc*.so* $(IDIR_LIBC)/lib/ - for file in c crypt dl m nsl resolv rt uClibc util; do \ - cp -a $(STAGING_DIR)/lib/lib$$file*.so* $(IDIR_LIBC)/lib/; \ +$(IPKG_UCLIBC): + $(SCRIPT_DIR)/make-ipkg-dir.sh $(IDIR_UCLIBC) ipkg/uclibc.control $(UCLIBC_VERSION)-$(PKG_RELEASE) $(ARCH) + mkdir -p $(IDIR_UCLIBC)/lib + for file in ld-uClibc libc libcrypt libdl libm libnsl libresolv librt libuClibc libutil; do \ + cp -fpR $(STAGING_DIR)/lib/$$file.so.* $(IDIR_UCLIBC)/lib/; \ + cp -fpR $(STAGING_DIR)/lib/$$file-$(UCLIBC_VERSION).so $(IDIR_UCLIBC)/lib/; \ done - -$(STRIP) $(IDIR_LIBC)/lib/* - $(IPKG_BUILD) $(IDIR_LIBC) $(PACKAGE_DIR) + -$(STRIP) $(IDIR_UCLIBC)/lib/* + $(IPKG_BUILD) $(IDIR_UCLIBC) $(PACKAGE_DIR) -$(IPKG_GCC): - $(SCRIPT_DIR)/make-ipkg-dir.sh $(IDIR_GCC) ipkg/libgcc.control $(GCC_VERSION)-$(PKG_RELEASE) $(ARCH) - mkdir -p $(IDIR_GCC)/lib - cp -a $(STAGING_DIR)/lib/libgcc*.so* $(IDIR_GCC)/lib/ - -$(STRIP) $(IDIR_GCC)/lib/* - $(IPKG_BUILD) $(IDIR_GCC) $(PACKAGE_DIR) +$(IPKG_LIBGCC): + $(SCRIPT_DIR)/make-ipkg-dir.sh $(IDIR_LIBGCC) ipkg/libgcc.control $(LIBGCC_VERSION)-$(PKG_RELEASE) $(ARCH) + mkdir -p $(IDIR_LIBGCC)/lib + cp -fpR $(STAGING_DIR)/lib/libgcc_s.so.* $(IDIR_LIBGCC)/lib/ + -$(STRIP) $(IDIR_LIBGCC)/lib/* + $(IPKG_BUILD) $(IDIR_LIBGCC) $(PACKAGE_DIR) +package-clean: + rm -f $(PACKAGES) + +clean-targets: package-clean prepare: -compile: $(PACKAGES) -install: compile +compile-targets: $(PACKAGES) +install-targets: compile mkdir -p $(TARGET_DIR) $(IPKG) install $(PACKAGES) -clean: - rm -rf $(IDIR_BASE) $(IDIR_LIBC) $(IDIR_GCC)