uclibc-ng: prevent duplicate compilation
[openadk.git] / package / uclibc-ng / Makefile
blob1b34e33723dbba3056a4077b4b59eb5872e3dc93
1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
4 include $(ADK_TOPDIR)/rules.mk
5 include $(ADK_TOPDIR)/mk/kernel-ver.mk
6 include $(ADK_TOPDIR)/mk/kernel-vars.mk
7 include $(ADK_TOPDIR)/toolchain/uclibc-ng/Makefile.inc
9 PKG_NAME:= uClibc-ng
10 PKG_DESCR:= embedded c library
11 PKG_SECTION:= base/libs
12 PKG_OPTS:= noremove nostaging noscripts
14 PKG_SUBPKGS:= UCLIBC_NG UCLIBC_NG_DEV
15 PKGSD_UCLIBC_NG_DEV:= development files for uclibc-ng
16 PKGSC_UCLIBC_NG_DEV:= devel
18 NO_DISTFILES:= 1
20 include $(ADK_TOPDIR)/mk/package.mk
22 $(eval $(call PKG_template,UCLIBC_NG,uclibc-ng,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS}))
23 $(eval $(call PKG_template,UCLIBC_NG_DEV,uclibc-ng-dev,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_UCLIBC_NG_DEV},${PKGSC_UCLIBC_NG_DEV},${PKG_OPTS}))
25 CONFIG_STYLE:= manual
26 BUILD_STYLE:= manual
27 INSTALL_STYLE:= manual
29 uclibc-ng-install:
30 $(INSTALL_DIR) $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH) $(IDIR_UCLIBC_NG)/etc
31 -$(CP) $(STAGING_TARGET_DIR)/lib/ld-uClibc*.so* $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH)
32 -$(CP) $(STAGING_TARGET_DIR)/lib/libc.so.* $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH)
33 -$(CP) $(STAGING_TARGET_DIR)/lib/libuClibc-*.so $(IDIR_UCLIBC_NG)/$(ADK_TARGET_LIBC_PATH)
34 test -z $(ADK_RUNTIME_TIMEZONE) || \
35 grep $(ADK_RUNTIME_TIMEZONE) ./files/tz.lst | \
36 cut -f 2 > $(IDIR_UCLIBC_NG)/etc/TZ
37 ifeq ($(ADK_TARGET_LIBC_WITH_LOCALE),y)
38 ${INSTALL_DIR} $(IDIR_UCLIBC_NG)/usr/bin
39 $(INSTALL_BIN) $(STAGING_TARGET_DIR)/usr/bin/locale \
40 $(IDIR_UCLIBC_NG)/usr/bin
41 endif
43 uclibc-ng-dev-install:
44 ${INSTALL_DIR} ${IDIR_UCLIBC_NG_DEV}/usr/lib ${IDIR_UCLIBC_NG_DEV}/$(ADK_TARGET_LIBC_PATH)
45 ${CP} ${STAGING_TARGET_DIR}/usr/lib/libc.so ${IDIR_UCLIBC_NG_DEV}/usr/lib
46 ${CP} ${STAGING_TARGET_DIR}/usr/lib/uclibc_nonshared.a ${IDIR_UCLIBC_NG_DEV}/usr/lib
47 ${CP} ${STAGING_TARGET_DIR}/usr/lib/crt*.o ${IDIR_UCLIBC_NG_DEV}/usr/lib
48 ${KERNEL_MAKE_ENV} \
49 $(MAKE) -C $(TOOLCHAIN_BUILD_DIR)/w-linux-$(KERNEL_FILE_VER)-1/linux-$(KERNEL_FILE_VER) \
50 $(KERNEL_MAKE_OPTS) \
51 INSTALL_HDR_PATH=$(IDIR_UCLIBC_NG_DEV)/usr \
52 headers_install
53 $(MAKE) -C $(TOOLCHAIN_BUILD_DIR)/w-$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE)/${PKG_NAME}-${PKG_VERSION} \
54 PREFIX=$(IDIR_UCLIBC_NG_DEV)/ \
55 DEVEL_PREFIX=/usr \
56 RUNTIME_PREFIX=$(IDIR_UCLIBC_NG_DEV)/ \
57 HOSTCC="$(CC_FOR_BUILD)" \
58 CPU_CFLAGS="$(TARGET_CFLAGS)" \
59 install_headers
60 @find $(IDIR_UCLIBC_NG_DEV) -name .install -exec rm {} \;
61 @find $(IDIR_UCLIBC_NG_DEV) -name ..install.cmd -exec rm {} \;
63 include ${ADK_TOPDIR}/mk/pkg-bottom.mk