X-Git-Url: https://git.rohieb.name/openwrt.git/blobdiff_plain/612e00816a1f16bf4e030ce76add10657a2d3f74..3a20851eca28b6332ed13405abfe925b5a43a075:/openwrt/package/base-files/Makefile diff --git a/openwrt/package/base-files/Makefile b/openwrt/package/base-files/Makefile index 16169fa28..8517dcc68 100644 --- a/openwrt/package/base-files/Makefile +++ b/openwrt/package/base-files/Makefile @@ -6,6 +6,11 @@ PKG_NAME:=base-files PKG_RELEASE:=6 PKG_BUILD_DIR:=$(BUILD_DIR)/base-files +BOARD:=$(shell LANG=C grep ^BR2_LINUX_2 $(TOPDIR)/.config|sed -e "s/=y//" \ + -e "s/.*_//"| tr "[:upper:]" "[:lower:]") +KERNEL:=$(shell LANG=C grep ^BR2_LINUX_2 $(TOPDIR)/.config|sed -e "s/=y//" \ + -e "s/BR2_LINUX_//" -e "s/_BRCM//" -e "s/_/./"| tr "[:upper:]" "[:lower:]") + REV:=$(shell LANG=C svn info | awk '/^Revision:/ { print$$2 }' ) ifeq ($(REV),) REV:=0 @@ -24,7 +29,16 @@ 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) +PACKAGES:=$(IPKG_BASE) $(IPKG_UCLIBC) +PACKAGES_INSTALL:=$(IPKG_BASE) $(IPKG_UCLIBC) + +ifeq ($(BR2_PACKAGE_LIBGCC),y) +PACKAGES+=$(IPKG_LIBGCC) +PACKAGES_INSTALL+=$(IPKG_LIBGCC) +endif +ifeq ($(BR2_PACKAGE_LIBGCC),m) +PACKAGES+=$(IPKG_LIBGCC) +endif $(PKG_BUILD_DIR)/.prepared: mkdir -p $(PKG_BUILD_DIR) $(PACKAGE_DIR) @@ -38,31 +52,36 @@ $(PKG_BUILD_DIR)/.built: $(IPKG_BASE): $(SCRIPT_DIR)/make-ipkg-dir.sh $(IDIR_BASE) ipkg/$(PKG_NAME).control $(PKG_RELEASE) $(ARCH) - cp -a ./default/* $(IDIR_BASE) + $(CP) ./default/* $(IDIR_BASE) $(SED) 's,$$R,r$(REV),g' $(IDIR_BASE)/etc/banner - mkdir -p $(IDIR_BASE)/jffs + $(SED) 's,$$S,$(BOARD)-$(KERNEL),g' $(IDIR_BASE)/etc/ipkg.conf mkdir -p $(IDIR_BASE)/dev + mkdir -p $(IDIR_BASE)/etc/crontabs + mkdir -p $(IDIR_BASE)/jffs + mkdir -p $(IDIR_BASE)/lib + mkdir -p $(IDIR_BASE)/mnt mkdir -p $(IDIR_BASE)/proc mkdir -p $(IDIR_BASE)/tmp - mkdir -p $(IDIR_BASE)/lib mkdir -p $(IDIR_BASE)/usr/lib mkdir -p $(IDIR_BASE)/usr/bin + mkdir -p $(IDIR_BASE)/sys + mkdir -p $(IDIR_BASE)/www ln -sf /tmp/resolv.conf $(IDIR_BASE)/etc/resolv.conf - rm -rf $(IDIR_BASE)/var + ln -sf /proc/mounts $(IDIR_BASE)/etc/mtab + rm -f $(IDIR_BASE)/var 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_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/; \ + $(CP) $(STAGING_DIR)/lib/$$file.so.* $(IDIR_UCLIBC)/lib/; \ + $(CP) $(STAGING_DIR)/lib/$$file-$(UCLIBC_VERSION).so $(IDIR_UCLIBC)/lib/; \ done -$(STRIP) $(IDIR_UCLIBC)/lib/* $(IPKG_BUILD) $(IDIR_UCLIBC) $(PACKAGE_DIR) @@ -70,7 +89,7 @@ $(IPKG_UCLIBC): $(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/ + $(CP) $(STAGING_DIR)/lib/libgcc_s.so.* $(IDIR_LIBGCC)/lib/ -$(STRIP) $(IDIR_LIBGCC)/lib/* $(IPKG_BUILD) $(IDIR_LIBGCC) $(PACKAGE_DIR) @@ -82,4 +101,4 @@ prepare: compile-targets: $(PACKAGES) install-targets: compile mkdir -p $(TARGET_DIR) - $(IPKG) install $(PACKAGES) + $(IPKG) install $(PACKAGES_INSTALL)