Browse Source

Merge branch 'master' of git+ssh://openadk.org/git/openadk

Waldemar Brodkorb 11 years ago
parent
commit
f6060c06d2

+ 1 - 0
package/bcm2835-vc/Makefile

@@ -11,6 +11,7 @@ PKG_DESCR:=		vc tools for raspberry pi (bcm2835)
 PKG_SECTION:=		base
 PKG_SITES:=		http://openadk.org/distfiles/
 
+PKG_LIBC_DEPENDS:=	eglibc glibc
 PKG_SYSTEM_DEPENDS:=	raspberry-pi
 
 PKG_SUBPKGS:=		BCM2835_VC BCM2835_VC_DEV

+ 1 - 5
package/busybox/Makefile

@@ -38,11 +38,7 @@ BB_MAKE_FLAGS:=		V=1 IPKG_ARCH="${CPU_ARCH}" ARCH="${ARCH}" GCC_HONOUR_COPTS=s \
 			HOSTCC="${CC_FOR_BUILD}" HOSTCFLAGS="$(CFLAGS_FOR_BUILD)" \
 			-C ${WRKBUILD} 
 ifneq (${ADK_NATIVE},y)
-ifeq ($(ADK_TARGET_LIB_STATIC_LIBGCC),)
-BB_MAKE_FLAGS+=		CROSS_COMPILE="$(TARGET_CROSS)" EXTRA_LDFLAGS='-static-libgcc'
-else
-BB_MAKE_FLAGS+=		CROSS_COMPILE="$(TARGET_CROSS)"
-endif
+BB_MAKE_FLAGS+=		CROSS_COMPILE="$(TARGET_CROSS)" EXTRA_LDFLAGS="-static-libgcc"
 else
 BB_MAKE_FLAGS+=		EXTRA_LDFLAGS="-static-libgcc"
 endif

+ 0 - 3
package/cfgfs/Makefile

@@ -26,10 +26,7 @@ $(eval $(call PKG_template,CFGFS,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG
 
 CONFIG_STYLE:=		manual
 INSTALL_STYLE:=		manual
-
-ifeq ($(ADK_TARGET_LIB_STATIC_LIBGCC),y)
 TARGET_LDFLAGS+=	-static-libgcc
-endif
 
 do-install:
 	${INSTALL_DIR} ${IDIR_CFGFS}/sbin

+ 6 - 3
package/dropbear/Makefile

@@ -26,10 +26,13 @@ include $(TOPDIR)/mk/package.mk
 $(eval $(call PKG_template,DROPBEAR,$(PKG_NAME),$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 $(eval $(call PKG_template,DBCONVERT,dropbearconvert,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_DBCONVERT},${PKG_SECTION}))
 
-TARGET_LDFLAGS+=	$(ADK_TARGET_ABI_CFLAGS) -static
-ifeq ($(ADK_TARGET_LIB_STATIC_LIBGCC),y)
-TARGET_LDFLAGS+=	-static-libgcc
+TARGET_LDFLAGS+=	$(ADK_TARGET_ABI_CFLAGS)
+
+ifeq ($(ADK_STATIC),y)
+TARGET_LDFLAGS+=	-static
 endif
+
+TARGET_LDFLAGS+=	-static-libgcc
 BUILD_STYLE:=		manual
 INSTALL_STYLE:=		manual
 CONFIGURE_ARGS+=	--disable-pam \

+ 3 - 3
package/gdb/Makefile

@@ -16,9 +16,9 @@ include ${TOPDIR}/mk/package.mk
 
 $(eval $(call PKG_template,GDB,gdb,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION}))
 
-#ifeq ($(ADK_STATIC),y)
-#TARGET_CFLAGS+=         -static
-#endif
+ifeq ($(ADK_STATIC),y)
+TARGET_CFLAGS+=         -static
+endif
 
 TARGET_CFLAGS:=         $(filter-out -flto,$(TARGET_CFLAGS))
 TARGET_CFLAGS+=		${TARGET_CPPFLAGS} -fPIC

+ 2 - 0
package/llvm/Makefile

@@ -42,6 +42,8 @@ do-build:
 do-install:
 	env GCC_HONOUR_COPTS=s ${MAKE} -C ${WRKBUILD}/BuildTools DESTDIR=$(STAGING_TARGET_DIR) install 
 	env GCC_HONOUR_COPTS=s ${MAKE} -C ${WRKBUILD}/BuildTools DESTDIR=$(WRKINST) install 
+	cp ${WRKBUILD}/BuildTools/BuildTools/Release+Asserts/bin/llvm-config \
+		$(STAGING_TARGET_DIR)/usr/bin
 
 llvm-install:
 	$(INSTALL_DIR) $(IDIR_LLVM)/usr/bin

+ 0 - 1
package/musl/Config.in.manual

@@ -4,7 +4,6 @@ config ADK_PACKAGE_MUSL
 	default y if ADK_TARGET_LIB_MUSL && !ADK_TOOLCHAIN_ONLY
 	default n
 	depends on ADK_TARGET_LIB_MUSL
-	select ADK_PACKAGE_LIBGCC
 	help
 	  Embedded C library.
 

+ 3 - 0
package/musl/Makefile

@@ -25,10 +25,13 @@ INSTALL_STYLE:=         manual
 
 # do nothing, musl is already build in toolchain directory
 do-install:
+	${INSTALL_DIR} $(IDIR_MUSL)/usr/bin
 	${INSTALL_DIR} $(IDIR_MUSL)/$(ADK_TARGET_LIBC_PATH)
 	$(CP) $(STAGING_TARGET_DIR)/usr/lib/libc.so $(IDIR_MUSL)/$(ADK_TARGET_LIBC_PATH)
 	(cd $(IDIR_MUSL)/$(ADK_TARGET_LIBC_PATH) && \
 		ln -sf libc.so ld-musl-$(ARCH).so.1)
+	(cd $(IDIR_MUSL)/usr/bin && \
+		ln -sf ../../lib/ld-musl-$(ARCH).so.1 ldd)
 	
 
 musl-dev-install:

+ 5 - 6
package/tzdata/Makefile

@@ -4,17 +4,16 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=		tzdata
-PKG_VERSION:=		2010o
+PKG_VERSION:=		2013d
 PKG_RELEASE:=		1
-PKG_MD5SUM:=		5cae5c56fad81dc29f8fcd933a05768e a7a776a5713831993e814fe0c05f9fd5
+PKG_MD5SUM:=		65b6818162230fc02f86f293376c73df 4616a9560270f180eeb9a08540636890
 PKG_DESCR:=		Timezone data (/usr/share/zoneinfo)
 PKG_SECTION:=		utils
-PKG_URL:=		ftp://elsie.nci.nih.gov/pub/
-PKG_SITES:=		ftp://elsie.nci.nih.gov/pub/
+PKG_URL:=		http://www.iana.org/time-zones/
+PKG_SITES:=		http://www.iana.org/time-zones/repository/releases/
 PKG_NOPARALLEL:=	1
 
-# Note that tzcode does NOT have the same version as tzdata does :[
-DISTFILES:=             ${PKG_NAME}${PKG_VERSION}.tar.gz tzcode2010n.tar.gz
+DISTFILES:=             ${PKG_NAME}${PKG_VERSION}.tar.gz tzcode${PKG_VERSION}.tar.gz
 # both archives do not extract into subdirectories
 WRKDIST=		${WRKDIR}
 

+ 16 - 14
package/tzdata/patches/patch-Makefile

@@ -1,22 +1,24 @@
---- w-tzdata-2010o-1.orig/Makefile	2010-10-12 18:36:50.000000000 +0200
-+++ w-tzdata-2010o-1/Makefile	2011-01-22 22:10:00.358658180 +0100
-@@ -212,13 +212,13 @@ GCC_DEBUG_FLAGS = -Dlint -g -O -fno-comm
+--- w-tzdata-2013d-1.orig/Makefile	2013-07-05 16:38:01.000000000 +0200
++++ w-tzdata-2013d-1/Makefile	2013-08-14 12:58:49.000000000 +0200
+@@ -231,7 +231,7 @@ GCC_DEBUG_FLAGS = -Dlint -g3 -O3 -fno-co
  # before the first Monday in January when a "%V" format is used and January 1
  # falls on a Friday, Saturday, or Sunday.
  
 -CFLAGS=
 +CFLAGS?=
  
- # If you want zic's -s option used when installing, uncomment the next line
- # ZFLAGS=	-s
+ # Linker flags.  Default to $(LFLAGS) for backwards compatibility
+ # to tzcode2012h and earlier.
+@@ -239,7 +239,7 @@ CFLAGS=
+ LDFLAGS=	$(LFLAGS)
  
  zic=		./zic
 -ZIC=		$(zic) $(ZFLAGS)
 +ZIC=		./zic_for_build $(ZFLAGS)
  
  # The name of a Posix-compliant `awk' on your system.
- AWK=		nawk
-@@ -279,7 +279,7 @@ ENCHILADA=	$(DOCS) $(SOURCES) $(DATA) $(
+ AWK=		awk
+@@ -330,7 +330,7 @@ ENCHILADA=	$(COMMON) $(DOCS) $(SOURCES)
  
  SHELL=		/bin/sh
  
@@ -25,11 +27,11 @@
  
  ALL:		all date
  
-@@ -309,6 +309,14 @@ INSTALL:	ALL install date.1
- 		-rm -f $(MANDIR)/man1/date.1
- 		cp date.1 $(MANDIR)/man1/.
+@@ -365,6 +365,14 @@ version.h:
+ 		 echo 'static char const TZVERSION[]="$(VERSION)";' && \
+ 		 echo 'static char const REPORT_BUGS_TO[]="$(BUGEMAIL)";') >$@
  
-+zic_for_build:
++zic_for_build: version.h
 +		$(CC_FOR_BUILD) -c $(CFLAGS_FOR_BUILD) zic.c -o zic_build.o
 +		$(CC_FOR_BUILD) -c $(CFLAGS_FOR_BUILD) localtime.c -o localtime_build.o
 +		$(CC_FOR_BUILD) -c $(CFLAGS_FOR_BUILD) asctime.c -o asctime_build.o
@@ -38,9 +40,9 @@
 +		$(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) -o $@ zic_build.o localtime_build.o asctime_build.o scheck_build.o ialloc_build.o 
 +
  zdump:		$(TZDOBJS)
- 		$(CC) $(CFLAGS) $(LFLAGS) $(TZDOBJS) $(LDLIBS) -o $@
+ 		$(CC) -o $@ $(CFLAGS) $(LDFLAGS) $(TZDOBJS) $(LDLIBS)
  
-@@ -319,10 +327,10 @@ yearistype:	yearistype.sh
+@@ -375,10 +383,10 @@ yearistype:	yearistype.sh
  		cp yearistype.sh yearistype
  		chmod +x yearistype
  
@@ -53,7 +55,7 @@
  		$(ZIC) -y $(YEARISTYPE) -d $(TZDIR) -L leapseconds $(TDATA)
  
  # In earlier versions of this makefile, the other two directories were
-@@ -334,7 +342,7 @@ right_only:	zic leapseconds $(TDATA)
+@@ -390,7 +398,7 @@ right_only:	zic leapseconds $(TDATA)
  # Therefore, the other two directories are now siblings of $(TZDIR).
  # You must replace all of $(TZDIR) to switch from not using leap seconds
  # to using them, or vice versa.

+ 3 - 3
package/tzdata/patches/patch-date_c

@@ -1,7 +1,7 @@
 strchr() is false defined here
---- w-tzdata-2010o-1.orig/date.c	2010-10-12 18:36:51.000000000 +0200
-+++ w-tzdata-2010o-1/date.c	2011-02-28 00:57:57.274000374 +0100
-@@ -69,7 +69,6 @@ extern char *		getlogin();
+--- w-tzdata-2013d-1.orig/date.c	2013-05-28 06:26:18.000000000 +0200
++++ w-tzdata-2013d-1/date.c	2013-08-14 12:54:54.000000000 +0200
+@@ -60,7 +60,6 @@ extern char *		getlogin();
  extern time_t		mktime();
  extern char *		optarg;
  extern int		optind;

+ 0 - 7
target/config/Config.in

@@ -564,9 +564,6 @@ config ADK_musl
 config ADK_libc
 	boolean
 
-config ADK_TARGET_LIB_STATIC_LIBGCC
-	boolean
-
 config ADK_TARGET_LIBC
 	string
 	default "uclibc"  if ADK_uclibc
@@ -584,7 +581,6 @@ config ADK_TARGET_LIB_UCLIBC
 	prompt "uClibc embedded C library"
 	boolean
 	select ADK_uclibc
-	select ADK_TARGET_LIB_STATIC_LIBGCC
 	depends on \
 		   !ADK_LINUX_SPARC64 && \
 		   !ADK_LINUX_PPC64 && \
@@ -597,7 +593,6 @@ config ADK_TARGET_LIB_EGLIBC
 	prompt "Embedded GNU C library"
 	boolean
 	select ADK_eglibc
-	select ADK_TARGET_LIB_STATIC_LIBGCC
 	depends on \
 		ADK_LINUX_ARM || \
 		ADK_LINUX_ARMEB || \
@@ -618,7 +613,6 @@ config ADK_TARGET_LIB_GLIBC
 	prompt "GNU C library"
 	boolean
 	select ADK_glibc
-	select ADK_TARGET_LIB_STATIC_LIBGCC
 	depends on \
 		ADK_LINUX_ARM || \
 		ADK_LINUX_ARMEB || \
@@ -654,7 +648,6 @@ config ADK_TARGET_LIB_LIBC
 	prompt "Native C library"
 	boolean
 	select ADK_libc
-	select ADK_TARGET_LIB_STATIC_LIBGCC
 	depends on ADK_LINUX_NATIVE
 
 endchoice

+ 1 - 1
toolchain/musl/Makefile

@@ -16,7 +16,7 @@ $(WRKBUILD)/.headers:
 	touch $@
 
 $(WRKBUILD)/.compiled:
-	$(MAKE) -C $(WRKBUILD) all
+	$(MAKE) CFLAGS='$(TARGET_CFLAGS)' -C $(WRKBUILD) all
 	touch $@
 
 $(WRKBUILD)/.installed: $(WRKBUILD)/.compiled

+ 23 - 1
tools/adk/pkgmaker.c

@@ -271,7 +271,7 @@ int main() {
 	char *pkg_name, *pkg_depends, *pkg_section, *pkg_descr, *pkg_url;
 	char *pkg_cxx, *pkg_subpkgs, *pkg_cfline, *pkg_dflt, *pkg_multi;
 	char *pkg_need_cxx, *pkg_need_java, *pkgname;
-	char *pkg_host_depends, *pkg_system_depends, *pkg_arch_depends, *pkg_flavours, *pkg_flavours_string, *pkg_choices, *pseudo_name;
+	char *pkg_libc_depends, *pkg_host_depends, *pkg_system_depends, *pkg_arch_depends, *pkg_flavours, *pkg_flavours_string, *pkg_choices, *pseudo_name;
 	char *packages, *pkg_name_u, *pkgs;
 	char *saveptr, *p_ptr, *s_ptr;
 	int result;
@@ -289,6 +289,7 @@ int main() {
 	pkg_arch_depends = NULL;
 	pkg_system_depends = NULL;
 	pkg_host_depends = NULL;
+	pkg_libc_depends = NULL;
 	pkg_cxx = NULL;
 	pkg_dflt = NULL;
 	pkg_cfline = NULL;
@@ -394,6 +395,8 @@ int main() {
 					snprintf(variable, MAXVAR, "PKG_DFLT_%s", pkg_name_u);
 					if ((parse_var(buf, variable, NULL, &pkg_dflt)) == 0)
 						continue;
+					if ((parse_var(buf, "PKG_LIBC_DEPENDS", NULL, &pkg_libc_depends)) == 0)
+						continue;
 					if ((parse_var(buf, "PKG_HOST_DEPENDS", NULL, &pkg_host_depends)) == 0)
 						continue;
 					if ((parse_var(buf, "PKG_ARCH_DEPENDS", NULL, &pkg_arch_depends)) == 0)
@@ -647,6 +650,23 @@ int main() {
 					fprintf(cfg, "\n");
 				}
 
+				/* create package libc dependency information */
+				if (pkg_libc_depends != NULL) {
+					token = strtok(pkg_libc_depends, " ");
+					fprintf(cfg, "\tdepends on ");
+					sp = "";
+					while (token != NULL) {
+						if(strncmp(token, "!", 1) == 0) {
+							fprintf(cfg, "%s!ADK_TARGET_LIB_%s", sp, toupperstr(token));
+							sp = " && ";
+						} else {
+							fprintf(cfg, "%sADK_TARGET_LIB_%s", sp, toupperstr(token));
+							sp = " || ";
+						}
+						token = strtok(NULL, " ");
+					}
+					fprintf(cfg, "\n");
+				}
 				/* create package target architecture dependency information */
 				if (pkg_arch_depends != NULL) {
 					token = strtok(pkg_arch_depends, " ");
@@ -902,6 +922,7 @@ int main() {
 			free(pkg_arch_depends);
 			free(pkg_system_depends);
 			free(pkg_host_depends);
+			free(pkg_libc_depends);
 			free(pkg_cxx);
 			free(pkg_dflt);
 			free(pkg_cfline);
@@ -918,6 +939,7 @@ int main() {
 			pkg_arch_depends = NULL;
 			pkg_system_depends = NULL;
 			pkg_host_depends = NULL;
+			pkg_libc_depends = NULL;
 			pkg_cxx = NULL;
 			pkg_dflt = NULL;
 			pkg_cfline = NULL;