diff options
-rw-r--r-- | package/uclibc-ng/Config.in.manual | 2 | ||||
-rw-r--r-- | package/uclibc-ng/Makefile | 42 | ||||
-rw-r--r-- | target/config/Config.in.libc | 1 | ||||
-rw-r--r-- | toolchain/uclibc-ng/Makefile | 40 |
4 files changed, 37 insertions, 48 deletions
diff --git a/package/uclibc-ng/Config.in.manual b/package/uclibc-ng/Config.in.manual index 073b0d935..69f6c89bb 100644 --- a/package/uclibc-ng/Config.in.manual +++ b/package/uclibc-ng/Config.in.manual @@ -1,5 +1,5 @@ config ADK_PACKAGE_UCLIBC_NG - bool "uClibc-ng............... embedded C library" + bool depends on ADK_TARGET_LIB_UCLIBC_NG default y if ADK_TARGET_LIB_UCLIBC_NG && !ADK_APPLIANCE_TOOLCHAIN default n diff --git a/package/uclibc-ng/Makefile b/package/uclibc-ng/Makefile index 35590af0c..dd70038bb 100644 --- a/package/uclibc-ng/Makefile +++ b/package/uclibc-ng/Makefile @@ -29,41 +29,12 @@ CONFIG_STYLE:= manual BUILD_STYLE:= manual INSTALL_STYLE:= manual -do-build: -ifeq ($(ADK_PACKAGE_UCLIBC_NG_TEST),y) - PATH='$(HOST_PATH)' $(MAKE) -j1 -C $(TOOLCHAIN_BUILD_DIR)/w-$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE)/${PKG_NAME}-${PKG_VERSION} \ - HOSTCC='$(HOST_CC)' \ - CC='$(TARGET_CC)' \ - PREFIX=$(STAGING_TARGET_DIR) \ - DEVEL_PREFIX=/usr/ \ - DEVEL_PREFIX_LIB=/ \ - RUNTIME_PREFIX=/ \ - UCLIBC_EXTRA_CFLAGS="$(TARGET_CFLAGS)" \ - UCLIBC_EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \ - TEST_INSTALLED_UCLIBC=1 \ - UCLIBC_ONLY=1 \ - VERBOSE=1 \ - test_gen test_compile -endif - -do-install: - ${INSTALL_DIR} $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH) $(IDIR_UCLIBC_NG)/etc +uclibc-ng-install: + $(INSTALL_DIR) $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH) $(IDIR_UCLIBC_NG)/etc + -$(CP) $(STAGING_TARGET_DIR)/uclibc-ng/lib*/* $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH) test -z $(ADK_RUNTIME_TIMEZONE) || \ grep $(ADK_RUNTIME_TIMEZONE) ./files/tz.lst | \ cut -f 2 > $(IDIR_UCLIBC_NG)/etc/TZ -ifneq ($(ADK_TARGET_USE_STATIC_LIBS)$(ADK_TARGET_BINFMT_FLAT),y) - $(CP) $(STAGING_TARGET_DIR)/lib/libc.so.* $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH) - $(CP) $(STAGING_TARGET_DIR)/lib/libuClibc-*.so \ - $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH) - $(CP) $(STAGING_TARGET_DIR)/lib/ld*-uClibc-*.so \ - $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH) - $(CP) $(STAGING_TARGET_DIR)/lib/ld*-uClibc*.so.* $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH) - -for file in libcrypt libdl libm libnsl libresolv libutil libuargp; do \ - $(CP) $(STAGING_TARGET_DIR)/lib/$$file.so* $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH); \ - $(CP) $(STAGING_TARGET_DIR)/lib/$$file-*.so \ - $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH); \ - done -endif ifeq ($(ADK_RUNTIME_ENABLE_LOCALE),y) ${INSTALL_DIR} $(IDIR_UCLIBC_NG)/usr/bin $(INSTALL_BIN) $(STAGING_TARGET_DIR)/usr/bin/locale $(IDIR_UCLIBC_NG)/usr/bin @@ -73,14 +44,7 @@ uclibc-ng-dev-install: ${INSTALL_DIR} ${IDIR_UCLIBC_NG_DEV}/usr/lib ${IDIR_UCLIBC_NG_DEV}/$(ADK_TARGET_LIBC_PATH) ${CP} ${STAGING_TARGET_DIR}/usr/lib/libc.so ${IDIR_UCLIBC_NG_DEV}/usr/lib ${CP} ${STAGING_TARGET_DIR}/usr/lib/uclibc_nonshared.a ${IDIR_UCLIBC_NG_DEV}/usr/lib -ifeq ($(ADK_TARGET_LIB_WITH_THREADS),y) - -${CP} ${STAGING_TARGET_DIR}/usr/lib/libpthread.so ${IDIR_UCLIBC_NG_DEV}/usr/lib - -${CP} ${STAGING_TARGET_DIR}/usr/lib/libpthread_nonshared.a ${IDIR_UCLIBC_NG_DEV}/usr/lib -endif ${CP} ${STAGING_TARGET_DIR}/usr/lib/crt*.o ${IDIR_UCLIBC_NG_DEV}/usr/lib - for file in libcrypt libdl libm libresolv libutil libuargp; do \ - cd $(IDIR_UCLIBC_NG_DEV)/$(ADK_TARGET_LIBC_PATH); ln -sf $$file-$(PKG_VERSION).so $$file.so; \ - done ${KERNEL_MAKE_ENV} \ $(MAKE) -C $(TOOLCHAIN_BUILD_DIR)/w-linux-$(KERNEL_VERSION)/linux-$(KERNEL_FILE_VER) \ $(KERNEL_MAKE_OPTS) \ diff --git a/target/config/Config.in.libc b/target/config/Config.in.libc index a4061d9a1..f3ad60405 100644 --- a/target/config/Config.in.libc +++ b/target/config/Config.in.libc @@ -7,6 +7,7 @@ default ADK_TARGET_LIB_UCLIBC_NG if ADK_TARGET_OS_LINUX config ADK_TARGET_LIB_UCLIBC_NG bool "uClibc-ng embedded C library" + select ADK_PACKAGE_LIBGCC depends on (\ ADK_TARGET_ARCH_ALPHA || \ ADK_TARGET_ARCH_ARC || \ diff --git a/toolchain/uclibc-ng/Makefile b/toolchain/uclibc-ng/Makefile index 192b34daa..0561243ac 100644 --- a/toolchain/uclibc-ng/Makefile +++ b/toolchain/uclibc-ng/Makefile @@ -41,9 +41,9 @@ UCLIBC_MAKEOPTS+= -j${ADK_MAKE_JOBS} endif $(WRKBUILD)/.configured: $(WRKBUILD)/.prepared - $(SED) 's,^CROSS_COMPILE=.*,CROSS_COMPILE=$(TARGET_CROSS),g' $(WRKBUILD)/Rules.mak PATH='$(HOST_PATH)' sed -e 's^KERNEL_HEADERS.*$$KERNEL_HEADERS=\"${STAGING_TARGET_DIR}/usr/include\"' \ $(ADK_TOPDIR)/target/$(ADK_TARGET_ARCH)/uclibc-ng.config >${WRKBUILD}/.config + $(SED) 's^.*\(CROSS_COMPILER_PREFIX\).*^\1=\"$(TARGET_CROSS)\"^' ${WRKBUILD}/.config ifeq ($(ADK_TARGET_ENDIAN),little) $(SED) 's/.*\(ARCH_LITTLE_ENDIAN\).*/\1=y/' ${WRKBUILD}/.config $(SED) 's/.*\(ARCH_WANTS_LITTLE_ENDIAN\).*/\1=y/' ${WRKBUILD}/.config @@ -284,7 +284,7 @@ ifeq ($(ADK_TARGET_ABI_O32),y) $(SED) 's/.*\(CONFIG_MIPS_N64_ABI\).*/# \1 is not set/' ${WRKBUILD}/.config endif endif - echo N|PATH='$(HOST_PATH)' $(MAKE) $(UCLIBC_MAKEOPTS) -C $(WRKBUILD) \ + echo N|PATH='$(HOST_PATH)' $(MAKE) -C $(WRKBUILD) \ HOSTCC="$(HOST_CC)" \ CC='$(TARGET_CC)' \ PREFIX=$(STAGING_TARGET_DIR) \ @@ -300,30 +300,54 @@ endif $(WRKBUILD)/.compiled: $(WRKBUILD)/.configured PATH='$(HOST_PATH)' $(MAKE) $(UCLIBC_MAKEOPTS) -C $(WRKBUILD) \ + ARCH="$(ADK_TARGET_ARCH)" \ + CROSS_COMPILE="$(TARGET_CROSS)" \ HOSTCC="$(HOST_CC)" \ - CC='$(TARGET_CC)' \ PREFIX=$(STAGING_TARGET_DIR) \ DEVEL_PREFIX=/usr/ \ - DEVEL_PREFIX_LIB=/ \ RUNTIME_PREFIX=/ \ UCLIBC_EXTRA_CFLAGS="$(TARGET_CFLAGS)" \ UCLIBC_EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \ VERBOSE=1 \ - all utils + all touch $@ $(WRKBUILD)/.installed: $(WRKBUILD)/.compiled PATH='$(HOST_PATH)' $(MAKE) -C $(WRKBUILD) \ + ARCH="$(ADK_TARGET_ARCH)" \ + CROSS_COMPILE="$(TARGET_CROSS)" \ HOSTCC="$(HOST_CC)" \ - CC='$(TARGET_CC)' \ PREFIX=$(STAGING_TARGET_DIR) \ DEVEL_PREFIX=/usr/ \ - DEVEL_PREFIX_LIB=/ \ RUNTIME_PREFIX=/ \ UCLIBC_EXTRA_CFLAGS="$(TARGET_CFLAGS)" \ UCLIBC_EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \ VERBOSE=1 \ - install_runtime install_dev install_utils + install_runtime install_dev + PATH='$(HOST_PATH)' $(MAKE) -C $(WRKBUILD) \ + ARCH="$(ADK_TARGET_ARCH)" \ + CROSS_COMPILE="$(TARGET_CROSS)" \ + HOSTCC="$(HOST_CC)" \ + PREFIX=$(STAGING_TARGET_DIR)/uclibc-ng \ + DEVEL_PREFIX=/usr/ \ + RUNTIME_PREFIX=/ \ + UCLIBC_EXTRA_CFLAGS="$(TARGET_CFLAGS)" \ + UCLIBC_EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \ + VERBOSE=1 \ + install_runtime + PATH='$(HOST_PATH)' $(MAKE) -C $(WRKBUILD) \ + ARCH="$(ADK_TARGET_ARCH)" \ + CROSS_COMPILE="$(TARGET_CROSS)" \ + HOSTCC="$(HOST_CC)" \ + PREFIX=$(STAGING_TARGET_DIR)/uclibc-ng \ + DEVEL_PREFIX=/usr/ \ + RUNTIME_PREFIX=/ \ + UCLIBC_EXTRA_CFLAGS="$(TARGET_CFLAGS)" \ + UCLIBC_EXTRA_LDFLAGS="$(TARGET_LDFLAGS)" \ + TEST_INSTALLED_UCLIBC=1 \ + UCLIBC_ONLY=1 \ + VERBOSE=1 \ + test_compile test_gen touch $@ include ${ADK_TOPDIR}/mk/toolchain.mk |