diff options
author | Waldemar Brodkorb <wbx@openadk.org> | 2014-04-02 07:37:27 +0200 |
---|---|---|
committer | Waldemar Brodkorb <wbx@openadk.org> | 2014-04-02 07:37:27 +0200 |
commit | 7236e468162b3af51c0acecad10fbef1838c06ad (patch) | |
tree | 9c8027cf769aaa7ef7f0a6330b34d7666238b920 | |
parent | a691abc857458de0023f5e532feee866af0218ed (diff) | |
parent | 309f13ab6858e1c1639814e210a6c86380ca717b (diff) |
Merge branch 'master' of git+ssh://openadk.org/git/openadk
947 files changed, 18994 insertions, 19931 deletions
diff --git a/.gitignore b/.gitignore index fc81d7882..3ac956900 100644 --- a/.gitignore +++ b/.gitignore @@ -1,22 +1,30 @@ -/config/conf -/config/conf.exe -/config/a.exe -/config/lex.backup -/config/lex.zconf.c -/config/lkc_defs.h -/config/gconf -/config/gconf.exe -/config/mconf -/config/mconf.exe -/config/zconf.hash.c -/config/zconf.output -/config/zconf.tab.c -/config/zconf.tab.h -/tests/master.exp -/tests/adk.exp -/tests/adk.exp.in.tmp +/adk/config/*.o +/adk/config/lxdialog/*.o +/adk/config/conf +/adk/config/conf.exe +/adk/config/a.exe +/adk/config/lex.backup +/adk/config/lex.zconf.c +/adk/config/lkc_defs.h +/adk/config/gconf +/adk/config/gconf.exe +/adk/config/mconf +/adk/config/mconf.exe +/adk/config/zconf.hash.c +/adk/config/zconf.output +/adk/config/zconf.tab.c +/adk/config/zconf.tab.h +/adk/tools/pkgmaker +/adk/tools/depmaker +/adk/tools/pkgrebuild +/adk/tools/depmaker.dSYM/ +/adk/tools/pkgmaker.dSYM/ +/adk/tools/pkgrebuild.dSYM/ +/adk/tests/master.exp +/adk/tests/adk.exp +/adk/tests/adk.exp.in.tmp /prereq.mk -/toolchain_build_*/ +/toolchain_*/ /.ADK_HAVE_DOT_CONFIG /.tmpconfig.h /.prereq_done @@ -32,8 +40,6 @@ /root_*/ /firmware/ /build_*/ -/config/*.o -/config/lxdialog/*.o /make.log /dl /package/Config.in.auto* @@ -41,7 +47,6 @@ /package/*/Config.in /package/*/Config.in.lib /package/*/Config.in.kmod -/tools_build/ /extra/ /.menu /.adkinit @@ -53,3 +58,5 @@ /target/config/Config.in.system /target/config/Config.in.native /target/config/Config.in.arch +/target/config/Config.in.prereq +/target/m68k/aranym.cfg @@ -2,4 +2,4 @@ - qemu-sh4: usb keyboard is broken - qemu-arm: thumb mode with glibc does not boot - qemu-sparc64: ide driver not working, only virtio (but unstable) -- qemu-microblaze: network card emulation fails, little endian works +- qemu-microblaze: ml605 early printk and network card emulation fails, little endian works @@ -33,17 +33,17 @@ config ADK_CHOOSE_TARGET_SYSTEM source "target/config/Config.in" menu "Runtime configuration" -depends on !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_KERNEL && !ADK_CHOOSE_TARGET_SYSTEM +depends on !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_SYSTEM source "target/config/Config.in.runtime" endmenu menu "Package collection" -depends on !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_KERNEL && !ADK_CHOOSE_TARGET_SYSTEM +depends on !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_SYSTEM source "target/packages/Config.in" endmenu menu "Package selection" -depends on !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_KERNEL && !ADK_CHOOSE_TARGET_SYSTEM +depends on !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_SYSTEM config ADK_LEAVE_ETC_ALONE boolean "do not install anything into /etc" @@ -89,55 +89,52 @@ source "package/Config.in.auto.global" source "package/Config.in.auto" endmenu -config ADK_USE_KERNEL_MINICONFIG - boolean - choice prompt "Kernel Version" depends on ADK_TOOLCHAIN_ONLY config ADK_KERNEL_VERSION_TOOLCHAIN - prompt "3.13.6" + prompt "3.13.7" boolean depends on ADK_TOOLCHAIN_ONLY endchoice menu "Kernel configuration" -depends on !ADK_TOOLCHAIN_ONLY && !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_KERNEL && !ADK_CHOOSE_TARGET_SYSTEM && ADK_TARGET_KERNEL_CUSTOMISING +depends on !ADK_TOOLCHAIN_ONLY && !ADK_CHOOSE_TARGET_ARCH && !ADK_CHOOSE_TARGET_SYSTEM && ADK_TARGET_KERNEL_CUSTOMISING choice prompt "Kernel Version" -config ADK_KERNEL_VERSION_3_13_6 - prompt "3.13.6" +config ADK_KERNEL_VERSION_3_13_7 + prompt "3.13.7" boolean -config ADK_KERNEL_VERSION_3_12_13 - prompt "3.12.13" +config ADK_KERNEL_VERSION_3_12_14 + prompt "3.12.14" boolean config ADK_KERNEL_VERSION_3_11_10 prompt "3.11.10" boolean -config ADK_KERNEL_VERSION_3_10_33 - prompt "3.10.33" +config ADK_KERNEL_VERSION_3_10_34 + prompt "3.10.34" boolean -config ADK_KERNEL_VERSION_3_4_82 - prompt "3.4.82" +config ADK_KERNEL_VERSION_3_4_84 + prompt "3.4.84" boolean endchoice config ADK_KERNEL_VERSION string - default "3.13.6" if ADK_KERNEL_VERSION_3_13_6 - default "3.12.13" if ADK_KERNEL_VERSION_3_12_13 + default "3.13.7" if ADK_KERNEL_VERSION_3_13_7 + default "3.12.14" if ADK_KERNEL_VERSION_3_12_14 default "3.11.10" if ADK_KERNEL_VERSION_3_11_10 - default "3.10.33" if ADK_KERNEL_VERSION_3_10_33 - default "3.4.82" if ADK_KERNEL_VERSION_3_4_82 + default "3.10.34" if ADK_KERNEL_VERSION_3_10_34 + default "3.4.84" if ADK_KERNEL_VERSION_3_4_84 help config ADK_KERNEL_COMP_GZIP_RASPBERRY_PI @@ -32,8 +32,7 @@ help: @echo ' kernelconfig - Modify the target kernel configuration' @echo '' @echo 'Cleaning targets:' - @echo ' clean - Remove bin and build_dir directories' - @echo ' cleantarget - Same as "clean", but also remove toolchain for target' + @echo ' clean - Remove firmware and build directories' @echo ' cleandir - Same as "clean", but also remove all built toolchains' @echo ' cleankernel - Remove kernel dir, useful if you changed any kernel patches' @echo ' distclean - Same as "cleandir", but also remove downloaded' @@ -100,10 +99,6 @@ cleandir dirclean: .prereq_done -@${GMAKE_INV} cleandir @-rm -f make.log .prereq_done -cleantarget targetclean: .prereq_done - -@${GMAKE_INV} cleantarget - @-rm -f make.log - cleantoolchain toolchainclean: .prereq_done -@${GMAKE_INV} cleantoolchain @@ -229,6 +224,7 @@ NO_ERROR=0 @echo "_PATH:=$$PATH" >>prereq.mk @echo "PATH:=\$${TOPDIR}/scripts:/usr/sbin:$$PATH" >>prereq.mk @echo "SHELL:=$$(which bash)" >>prereq.mk + @echo "GIT:=$$(which git 2>/dev/null)" >>prereq.mk @env NO_ERROR=${NO_ERROR} BASH="$$(which bash)" \ CC='${CC}' CPPFLAGS='${CPPFLAGS}' \ bash scripts/scan-tools.sh @@ -5,12 +5,12 @@ This is a menu based buildsystem for your home made embedded Linux system. Before you can start you need to install some tools: - bash -- gcc +- gcc or clang +- g++ or clang++ - binutils - GNU make - GNU awk - GNU sed -- findutils (find, xargs) - tar - patch - gzip @@ -1,12 +1,16 @@ -- rework startup, maybe use init.c, start gettys after bootup ready -- more output for initscripts on bootup -- port uuterm -- move tools to package host infrastructure, resolve dependency handling for host tools -- finish miniconfig + cleanup -- qemu-sh serial -- choice qemu with graphic -- x32 musl - hash-style=gnu for non-mips and non-musl +- fix libiberty.a mess +- check gold for mozilla compile +- check for gcc and SSP again +- config.site/config.cache usage for speedup? + http://lists.gnu.org/archive/html/autoconf/2014-03/msg00031.html +- add daemon() function to functions.sh +- add printing of OK/FAIL (optional verbose bootup) +- fixup rework libgcc --export-symbols +- libgcc static? +- static toolchain support +- try Preset Loops per Jiffy for faster bootup via lpj= +- port uuterm - add fb full screen logo - port opkg with gpg signing - restart network (kill wpa_supplicant) @@ -14,7 +18,7 @@ - add grsec kernel patch - microblaze: add cfgfs partition to dts, add partition to spartan dts - evaluate libguestfs for image creation -- check for gcc and SSP again - port w3m +- port msmtp - rutorrent porting - lms perl diff --git a/config/Config.in b/adk/config/Config.in index 9a7778310..9a7778310 100644 --- a/config/Config.in +++ b/adk/config/Config.in diff --git a/config/Kconfig-language.txt b/adk/config/Kconfig-language.txt index c412c2458..c412c2458 100644 --- a/config/Kconfig-language.txt +++ b/adk/config/Kconfig-language.txt diff --git a/config/Makefile b/adk/config/Makefile index 9dc08d3ac..9dc08d3ac 100644 --- a/config/Makefile +++ b/adk/config/Makefile diff --git a/config/Makefile.in b/adk/config/Makefile.in index 0b3ac40a9..0b3ac40a9 100644 --- a/config/Makefile.in +++ b/adk/config/Makefile.in diff --git a/config/check.sh b/adk/config/check.sh index fa59cbf9d..fa59cbf9d 100755 --- a/config/check.sh +++ b/adk/config/check.sh diff --git a/config/conf.c b/adk/config/conf.c index 412656fec..412656fec 100644 --- a/config/conf.c +++ b/adk/config/conf.c diff --git a/config/confdata.c b/adk/config/confdata.c index 4a79c72bb..4a79c72bb 100644 --- a/config/confdata.c +++ b/adk/config/confdata.c diff --git a/config/expr.c b/adk/config/expr.c index 579ece4fa..579ece4fa 100644 --- a/config/expr.c +++ b/adk/config/expr.c diff --git a/config/expr.h b/adk/config/expr.h index 6408fefae..6408fefae 100644 --- a/config/expr.h +++ b/adk/config/expr.h diff --git a/config/gconf.c b/adk/config/gconf.c index 681125e11..681125e11 100644 --- a/config/gconf.c +++ b/adk/config/gconf.c diff --git a/config/gconf.glade b/adk/config/gconf.glade index b1c86c192..b1c86c192 100644 --- a/config/gconf.glade +++ b/adk/config/gconf.glade diff --git a/config/images.c b/adk/config/images.c index d4f84bd4a..d4f84bd4a 100644 --- a/config/images.c +++ b/adk/config/images.c diff --git a/config/kconfig_load.c b/adk/config/kconfig_load.c index dbdcaad82..dbdcaad82 100644 --- a/config/kconfig_load.c +++ b/adk/config/kconfig_load.c diff --git a/config/kxgettext.c b/adk/config/kxgettext.c index 8d9ce22b0..8d9ce22b0 100644 --- a/config/kxgettext.c +++ b/adk/config/kxgettext.c diff --git a/config/lex.zconf.c_shipped b/adk/config/lex.zconf.c_shipped index dc3e81807..dc3e81807 100644 --- a/config/lex.zconf.c_shipped +++ b/adk/config/lex.zconf.c_shipped diff --git a/config/lkc.h b/adk/config/lkc.h index f379b0bf8..f379b0bf8 100644 --- a/config/lkc.h +++ b/adk/config/lkc.h diff --git a/config/lkc_proto.h b/adk/config/lkc_proto.h index 8e6946131..8e6946131 100644 --- a/config/lkc_proto.h +++ b/adk/config/lkc_proto.h diff --git a/config/lxdialog/.gitignore b/adk/config/lxdialog/.gitignore index 90b08ff02..90b08ff02 100644 --- a/config/lxdialog/.gitignore +++ b/adk/config/lxdialog/.gitignore diff --git a/config/lxdialog/BIG.FAT.WARNING b/adk/config/lxdialog/BIG.FAT.WARNING index a8999d82b..a8999d82b 100644 --- a/config/lxdialog/BIG.FAT.WARNING +++ b/adk/config/lxdialog/BIG.FAT.WARNING diff --git a/config/lxdialog/check-lxdialog.sh b/adk/config/lxdialog/check-lxdialog.sh index fcef0f59d..fcef0f59d 100644 --- a/config/lxdialog/check-lxdialog.sh +++ b/adk/config/lxdialog/check-lxdialog.sh diff --git a/config/lxdialog/checklist.c b/adk/config/lxdialog/checklist.c index bcc6f19c3..bcc6f19c3 100644 --- a/config/lxdialog/checklist.c +++ b/adk/config/lxdialog/checklist.c diff --git a/config/lxdialog/dialog.h b/adk/config/lxdialog/dialog.h index b5211fce0..b5211fce0 100644 --- a/config/lxdialog/dialog.h +++ b/adk/config/lxdialog/dialog.h diff --git a/config/lxdialog/inputbox.c b/adk/config/lxdialog/inputbox.c index 616c60138..616c60138 100644 --- a/config/lxdialog/inputbox.c +++ b/adk/config/lxdialog/inputbox.c diff --git a/config/lxdialog/menubox.c b/adk/config/lxdialog/menubox.c index fa9d633f2..fa9d633f2 100644 --- a/config/lxdialog/menubox.c +++ b/adk/config/lxdialog/menubox.c diff --git a/config/lxdialog/textbox.c b/adk/config/lxdialog/textbox.c index c704712d0..c704712d0 100644 --- a/config/lxdialog/textbox.c +++ b/adk/config/lxdialog/textbox.c diff --git a/config/lxdialog/util.c b/adk/config/lxdialog/util.c index f2375ad7e..f2375ad7e 100644 --- a/config/lxdialog/util.c +++ b/adk/config/lxdialog/util.c diff --git a/config/lxdialog/yesno.c b/adk/config/lxdialog/yesno.c index 4e6e8090c..4e6e8090c 100644 --- a/config/lxdialog/yesno.c +++ b/adk/config/lxdialog/yesno.c diff --git a/config/mconf.c b/adk/config/mconf.c index 6aa2c0d88..6aa2c0d88 100644 --- a/config/mconf.c +++ b/adk/config/mconf.c diff --git a/config/menu.c b/adk/config/menu.c index 3e6405ac2..3e6405ac2 100644 --- a/config/menu.c +++ b/adk/config/menu.c diff --git a/config/symbol.c b/adk/config/symbol.c index 18f3e5c33..18f3e5c33 100644 --- a/config/symbol.c +++ b/adk/config/symbol.c diff --git a/config/util.c b/adk/config/util.c index b6b2a46af..b6b2a46af 100644 --- a/config/util.c +++ b/adk/config/util.c diff --git a/config/zconf.gperf b/adk/config/zconf.gperf index 25ef5d01c..25ef5d01c 100644 --- a/config/zconf.gperf +++ b/adk/config/zconf.gperf diff --git a/config/zconf.hash.c_shipped b/adk/config/zconf.hash.c_shipped index 5c73d5133..5c73d5133 100644 --- a/config/zconf.hash.c_shipped +++ b/adk/config/zconf.hash.c_shipped diff --git a/config/zconf.l b/adk/config/zconf.l index 21ff69c9a..21ff69c9a 100644 --- a/config/zconf.l +++ b/adk/config/zconf.l diff --git a/config/zconf.tab.c_shipped b/adk/config/zconf.tab.c_shipped index 3bdcb3a97..3bdcb3a97 100644 --- a/config/zconf.tab.c_shipped +++ b/adk/config/zconf.tab.c_shipped diff --git a/config/zconf.tab.h_shipped b/adk/config/zconf.tab.h_shipped index 1b17df414..1b17df414 100644 --- a/config/zconf.tab.h_shipped +++ b/adk/config/zconf.tab.h_shipped diff --git a/config/zconf.y b/adk/config/zconf.y index b4240c846..b4240c846 100644 --- a/config/zconf.y +++ b/adk/config/zconf.y diff --git a/tests/adk.exp.in b/adk/tests/adk.exp.in index c5a7b8948..c5a7b8948 100644 --- a/tests/adk.exp.in +++ b/adk/tests/adk.exp.in diff --git a/tests/master.exp.in b/adk/tests/master.exp.in index 72d8ab9e6..72d8ab9e6 100644 --- a/tests/master.exp.in +++ b/adk/tests/master.exp.in diff --git a/tools/adk/Makefile b/adk/tools/Makefile index edd559f85..edd559f85 100644 --- a/tools/adk/Makefile +++ b/adk/tools/Makefile diff --git a/tools/adk/depmaker.c b/adk/tools/depmaker.c index e5028003b..9682fb969 100644 --- a/tools/adk/depmaker.c +++ b/adk/tools/depmaker.c @@ -28,6 +28,7 @@ #define MAXPATH 128 static int prefix = 0; +static int hprefix = 0; static int check_symbol(char *symbol) { @@ -64,7 +65,7 @@ static int check_symbol(char *symbol) { } /*@null@*/ -static char *parse_line(char *package, char *pkgvar, char *string, int checksym, int pprefix, int system) { +static char *parse_line(char *package, char *pkgvar, char *string, int checksym, int pprefix, int system, int *prefixp) { char *key, *value, *dep, *key_sym, *pkgdeps; char temp[MAXLINE]; @@ -114,8 +115,8 @@ static char *parse_line(char *package, char *pkgvar, char *string, int checksym, value = strtok(NULL, "=\t"); dep = strtok(value, " "); while (dep != NULL) { - if (prefix == 0) { - prefix = 1; + if (*prefixp == 0) { + *prefixp = 1; if (snprintf(temp, MAXLINE, "%s-compile: %s-compile", package, dep) < 0) perror("Can not create string variable."); } else { @@ -135,7 +136,7 @@ int main() { FILE *pkg; char buf[MAXLINE]; char path[MAXPATH]; - char *string, *pkgvar, *pkgdeps, *tmp, *fpkg, *cpkg, *spkg, *key, *check, *dpkg; + char *string, *pkgvar, *pkgdeps, *hpkgdeps = NULL, *tmp, *fpkg, *cpkg, *spkg, *key, *check, *dpkg; char *stringtmp; int i; @@ -173,6 +174,7 @@ int main() { !(strncmp(pkgdirp->d_name, "glibc", 5) == 0)) { /* print result to stdout */ printf("package-$(ADK_COMPILE_%s) += %s\n", pkgvar, pkgdirp->d_name); + printf("hostpackage-$(ADK_HOST_BUILD_%s) += %s\n", pkgvar, pkgdirp->d_name); } if ((pkgdeps = malloc(MAXLINE)) != NULL) @@ -182,6 +184,7 @@ int main() { exit(EXIT_FAILURE); } prefix = 0; + hprefix = 0; /* generate build dependencies */ while (fgets(buf, MAXLINE, pkg) != NULL) { @@ -197,7 +200,7 @@ int main() { string = strstr(buf, "PKG_BUILDDEP:="); if (string != NULL) { - tmp = parse_line(pkgdirp->d_name, pkgvar, string, 0, 0, 0); + tmp = parse_line(pkgdirp->d_name, pkgvar, string, 0, 0, 0, &prefix); if (tmp != NULL) { strncat(pkgdeps, tmp, strlen(tmp)); } @@ -205,7 +208,7 @@ int main() { string = strstr(buf, "PKG_BUILDDEP+="); if (string != NULL) { - tmp = parse_line(pkgdirp->d_name, pkgvar, string, 0, 0, 0); + tmp = parse_line(pkgdirp->d_name, pkgvar, string, 0, 0, 0, &prefix); if (tmp != NULL) strncat(pkgdeps, tmp, strlen(tmp)); } @@ -219,7 +222,7 @@ int main() { string[strlen(string)-1] = '\0'; key = strtok(string, ":="); dpkg = strdup(key+13); - tmp = parse_line(pkgdirp->d_name, dpkg, stringtmp, 1, 0, 1); + tmp = parse_line(pkgdirp->d_name, dpkg, stringtmp, 1, 0, 1, &prefix); if (tmp != NULL) strncat(pkgdeps, tmp, strlen(tmp)); } @@ -238,7 +241,7 @@ int main() { string = strstr(buf, "PKGFB_"); if (string != NULL) { - tmp = parse_line(pkgdirp->d_name, fpkg, string, 1, 0, 0); + tmp = parse_line(pkgdirp->d_name, fpkg, string, 1, 0, 0, &prefix); if (tmp != NULL) strncat(pkgdeps, tmp, strlen(tmp)); } @@ -255,7 +258,7 @@ int main() { } string = strstr(buf, "PKGCB_"); if (string != NULL) { - tmp = parse_line(pkgdirp->d_name, cpkg, string, 1, 0, 0); + tmp = parse_line(pkgdirp->d_name, cpkg, string, 1, 0, 0, &prefix); if (tmp != NULL) strncat(pkgdeps, tmp, strlen(tmp)); } @@ -273,16 +276,31 @@ int main() { string = strstr(buf, "PKGSB_"); if (string != NULL) { - tmp = parse_line(pkgdirp->d_name, spkg, string, 1, 1, 0); + tmp = parse_line(pkgdirp->d_name, spkg, string, 1, 1, 0, &prefix); if (tmp != NULL) { strncat(pkgdeps, tmp, strlen(tmp)); } } + } else if (strncmp(buf, "HOST_BUILDDEP", 13) == 0) { + asprintf(&string, "%s-host", pkgdirp->d_name); + // check retval; string for NULL + tmp = parse_line(string, NULL, buf, 0, 0, 0, &hprefix); + if (tmp && *tmp) { + asprintf(&string, "%s%s", + hpkgdeps ? hpkgdeps : "", + tmp); + free(hpkgdeps); + hpkgdeps = string; + } } free(tmp); } if (strlen(pkgdeps) != 0) printf("%s\n", pkgdeps); + if (hpkgdeps && *hpkgdeps) + printf("%s\n", hpkgdeps); + free(hpkgdeps); + hpkgdeps = NULL; free(pkgdeps); free(pkgvar); if (fclose(pkg) != 0) diff --git a/tools/adk/pkgmaker.c b/adk/tools/pkgmaker.c index 51d31aa70..51d31aa70 100644 --- a/tools/adk/pkgmaker.c +++ b/adk/tools/pkgmaker.c diff --git a/tools/adk/pkgrebuild.c b/adk/tools/pkgrebuild.c index e7f037ae5..e7f037ae5 100644 --- a/tools/adk/pkgrebuild.c +++ b/adk/tools/pkgrebuild.c diff --git a/tools/adk/sortfile.c b/adk/tools/sortfile.c index 1e9fc9623..1e9fc9623 100644 --- a/tools/adk/sortfile.c +++ b/adk/tools/sortfile.c diff --git a/tools/adk/sortfile.h b/adk/tools/sortfile.h index c54294e69..c54294e69 100644 --- a/tools/adk/sortfile.h +++ b/adk/tools/sortfile.h diff --git a/tools/adk/strmap.c b/adk/tools/strmap.c index f2c660e1f..f2c660e1f 100644 --- a/tools/adk/strmap.c +++ b/adk/tools/strmap.c diff --git a/tools/adk/strmap.h b/adk/tools/strmap.h index 99687b236..99687b236 100644 --- a/tools/adk/strmap.h +++ b/adk/tools/strmap.h diff --git a/docs/Makefile b/docs/Makefile new file mode 100644 index 000000000..1670e0041 --- /dev/null +++ b/docs/Makefile @@ -0,0 +1,24 @@ +TOPDIR=$(pwd) + +all: pdf text html + +pdf: + mkdir .pdf pdf + cp *.txt .pdf + cp images/*.png pdf + a2x -v --dblatex-opts "-P latex.output.revhistory=0" -f pdf -d book -L -D pdf .pdf/manual.txt + +text: + mkdir .text text + cp *.txt .text + cp images/*.png text + a2x -v -f text -d book -L -D text .text/manual.txt + +html: + mkdir .html html + cp *.txt .html + cp images/*.png html + a2x -v --xsltproc-opts "--stringparam toc.section.depth 2" -f xhtml -d book -L -D html .html/manual.txt + +clean: + rm -rf pdf .pdf text .text html .html diff --git a/docs/adding-packages-auto.txt b/docs/adding-packages-auto.txt new file mode 100644 index 000000000..ac52c395f --- /dev/null +++ b/docs/adding-packages-auto.txt @@ -0,0 +1,71 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Infrastructure for autotools-based packages +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +[[auto-package-tutorial]] + +First, let's see how to write a +Makefile+ file for an autotools-based +package, with an example: + +------------------------ +01: # This file is part of the OpenADK project. OpenADK is copyrighted +02: # material, please see the LICENCE file in the top-level directory. +03: +04: include ${TOPDIR}/rules.mk +05: +06: PKG_NAME:= libfoo +07: PKG_VERSION:= 1.0 +08: PKG_RELEASE:= 1 +09: PKG_MD5SUM:= ba526cd8f4403a5d351a9efaa8608fbc +10: PKG_DESCR:= foo library +11: PKG_SECTION:= libs +12: PKG_BUILDDEP:= openssl +13: PKG_DEPENDS:= libopenssl +14: PKG_URL:= http://www.libfoo.org/ +15: PKG_SITES:= http://downloads.libfoo.org/ +16: +17: include ${TOPDIR}/mk/package.mk +18: +19: $(eval $(call PKG_template,LIBFOO,libfoo,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +20: +21: libfoo-install: +22: ${INSTALL_DIR} ${IDIR_LIBFOO}/usr/lib +23: ${CP} ${WRKINST}/usr/lib/libfoo.so* ${IDIR_LIBFOO}/usr/lib +24: +25: include ${TOPDIR}/mk/pkg-bottom.mk + +------------------------ + +The Makefile begins with line 4 with the inclusion of the top level rules.mk +file. After that the Makefile starts on line 6 to 15 with metadata +information: the name of the package (+PKG_NAME+), the version of the package +(+PKG_VERSION+), the release number of the package (+PKG_RELEASE+), which is +used in OpenADK to mark any package updates, the md5 hash of the source archive +(+PKG_MD5SUM+), the short one line description for the package (+PKG_DESCR+), +the package section for the menu configuration system (+PKG_SECTION+), the +package buildtime dependencies (+PKG_BUILDDEP+), the package runtime +dependencies (+PKG_DEPENDS+), the package homepage (+PKG_URL+) and finally the +internet locations at which the tarball can be downloaded from (+PKG_SITES+). +Normally ${PKG_NAME}-${PKG_VERSION}.tar.gz will be downloaded. You can +overwrite the default via the +DISTFILES+ variable. You can add more then one +archive name in +DISTFILES+ via space separated. If you have no source archive +at all, just use the boolean variable +NO_DISTFILES+ and set it to 1. + +On line 17 the +mk/package.mk+ file is included, which contains the PKG_template +function, which is used in line 19. + +On line 21-23 we install the shared library into the package installation +directory, which is used to create the resulting binary package or tar archive +for the target. + +On line 25 we include +mk/pkg-bottom.mk+, which includes common functions used +by the package fetching and building process. + +With the autotools infrastructure, all the steps required to build +and install the packages are already defined, and they generally work +well for most autotools-based packages. However, when required, it is +still possible to customize what is done in any particular step. +By adding a post-operation hook (after extract, patch, configure, +build or install). See xref:hooks[] for details. diff --git a/docs/adding-packages-conclusion.txt b/docs/adding-packages-conclusion.txt new file mode 100644 index 000000000..6ec88e999 --- /dev/null +++ b/docs/adding-packages-conclusion.txt @@ -0,0 +1,13 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Conclusion +~~~~~~~~~~ + +As you can see, adding a software package to OpenADK is simply a +matter of writing a Makefile using an existing template and modifying it +according to the compilation process required by the package. + +If you package software that might be useful for other people, don't +forget to send a patch to the OpenADK developer (see xref:submitting-patches[])! + diff --git a/docs/adding-packages-directory.txt b/docs/adding-packages-directory.txt new file mode 100644 index 000000000..347c39aa6 --- /dev/null +++ b/docs/adding-packages-directory.txt @@ -0,0 +1,57 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +New package +~~~~~~~~~~~ + +First of all, create a directory and Makefile under the +package+ +directory for your software, for example +libfoo+: + +------------ + $ make newpackage PKG=libfoo VER=0.1 +------------ + +This will create a sample Makefile for you, with a lot of comments and +hints. It describes how the package should be downloaded, configured, +built, installed, etc. + +Depending on the package type, the +Makefile+ must be written in a +different way, using two different infrastructures: + +* manual package configuration + +* automatic package configuration using autotools + + +[[dependencies-target-toolchain-options]] +Dependencies on target and toolchain options + +Some packages depend on certain options of the toolchain: mainly the +choice of C library and C++ support. Some packages can only be built on +certain target architectures or for specific target systems. + +These dependencies have to be expressed in the Makefile. The given values +are space separated and can be negated with ! as a prefix. + +* Target architecture +** variable used PKG_ARCH_DEPENDS +** allowed values are: arm, mips, .. see target/arch.lst + +* Target system +** variable used PKG_SYSTEM_DEPENDS +** for allowed values see the output of ./scripts/getsystems + +* Target C library +** variable used PKG_LIBC_DEPENDS +** allowed values are: uclibc glibc musl + +* Host system +** variable used PKG_HOST_DEPENDS +** allowed values are: linux darwin cygwin freebsd netbsd openbsd + +* C++ support +** variable used PKG_NEED_CXX +** Comment string: `C++` + +Further formatting details: see xref:writing-rules-mk[the writing +rules]. diff --git a/docs/adding-packages-hooks.txt b/docs/adding-packages-hooks.txt new file mode 100644 index 000000000..65786fbfc --- /dev/null +++ b/docs/adding-packages-hooks.txt @@ -0,0 +1,31 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[hooks]] +Hooks available in the various build steps +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The infrastructure allow packages to specify hooks. These define further +actions to perform after existing steps. Most hooks aren't really useful for +manual packages, since the +Makefile+ already has full control over the +actions performed in each step of the package construction. + +The following hook targets are available: + +* +post-extract+ +* +post-patch+ +* +pre-configure+ +* +post-configure+ +* +pre-build+ +* +post-build+ +* +pre-install+ +* +post-install+ + +For example, to make some scripts executable after extraction, +add following to your +Makefile+: + +--------------------- +post-extract: + chmod a+x $(WRKBUILD)/build/make/*.sh + chmod a+x $(WRKBUILD)/build/make/*.pl +--------------------- diff --git a/docs/adding-packages-host.txt b/docs/adding-packages-host.txt new file mode 100644 index 000000000..c9eba6d02 --- /dev/null +++ b/docs/adding-packages-host.txt @@ -0,0 +1,86 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Infrastructure for host packages +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +[[host-package-tutorial]] + +First, let's see how to write a +Makefile+ for an host only package, required +by another target package to build, with an example: + +------------------------ +01: # This file is part of the OpenADK project. OpenADK is copyrighted +02: # material, please see the LICENCE file in the top-level directory. +03: +04: include $(TOPDIR)/rules.mk +05: +06: PKG_NAME:= hostfoo +07: PKG_VERSION:= 1.0 +08: PKG_RELEASE:= 1 +09: PKG_MD5SUM:= 291ba57c0acd218da0b0916c280dcbae +10: PKG_DESCR:= hostfoo utility +11: PKG_SECTION:= misc +12: PKG_URL:= http://www.foo.org/ +13: PKG_SITES:= http://download.foo.org/ +14: +15: PKG_CFLINE_HOSTFOO:= depends on ADK_HOST_ONLY +16: +17: include $(TOPDIR)/mk/host.mk +18: include $(TOPDIR)/mk/package.mk +19: +20: $(eval $(call HOST_template,HOSTFOO,hostfoo,$(PKG_VERSION)-${PKG_RELEASE})) +21: +22: HOST_STYLE:= auto +23: +24: include ${TOPDIR}/mk/host-bottom.mk +25: include ${TOPDIR}/mk/pkg-bottom.mk +------------------------ + +The differences to a target package is the inclusion of +mk/host.mk+ in line 17 and ++mk/host-bottom.mk+ in line 24. Furthermore the HOST_template is called instead of +the PKG_template. The last difference is the usage of +PKG_CFLINE_HOSTFOO+ to mark +the package as host only package. + +Following mix between host and target package is possible, too: +------------------------ +01: # This file is part of the OpenADK project. OpenADK is copyrighted +02: # material, please see the LICENCE file in the top-level directory. +03: +04: include ${TOPDIR}/rules.mk +05: +06: PKG_NAME:= foo +07: PKG_VERSION:= 1.0 +08: PKG_RELEASE:= 1 +09: PKG_MD5SUM:= 032a7b7b9f1a6e278ccde73f82cec5c2 +10: PKG_DESCR:= foo tool +11: PKG_SECTION:= lang +12: PKG_BUILDDEP:= foo-host +13: PKG_URL:= http://www.foo.org/ +14: PKG_SITES:= http://download.foo.org/ +15: +16: include ${TOPDIR}/mk/host.mk +17: include ${TOPDIR}/mk/package.mk +18: +19: $(eval $(call HOST_template,FOO,foo,${PKG_VERSION}-${PKG_RELEASE})) +20: $(eval $(call PKG_template,FOO,foo,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +21: +22: HOST_STYLE:= auto +23: +24: foo-install: +25: ${INSTALL_DIR} ${IDIR_FOO}/usr/bin +26: ${INSTALL_BIN} ${WRKINST}/usr/bin/foo ${IDIR_FOO}/usr/bin +27: +28: include ${TOPDIR}/mk/host-bottom.mk +29: include ${TOPDIR}/mk/pkg-bottom.mk +------------------------ + +If you need to rebuild a mixed package, you can do: +------------ + $ make package=<package> hostclean hostpackage clean package +------------ + +If your host package have some dependencies, use following: +------------ + HOST_BUILDDEP:=libbaz-host bar-host +------------ diff --git a/docs/adding-packages-manual.txt b/docs/adding-packages-manual.txt new file mode 100644 index 000000000..b231c19fb --- /dev/null +++ b/docs/adding-packages-manual.txt @@ -0,0 +1,83 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Infrastructure for packages with specific build systems +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +By 'packages with specific build systems' we mean all the packages whose build +system is not the standard one, speak 'autotools'. This typically includes +packages whose build system is based on hand-written Makefiles or shell +scripts. + +[[manual-package-tutorial]] + +------------------------------ +01: # This file is part of the OpenADK project. OpenADK is copyrighted +02: # material, please see the LICENCE file in the top-level directory. +03: +04: include $(TOPDIR)/rules.mk +05: +06: PKG_NAME:= libfoo +07: PKG_VERSION:= 1.0 +08: PKG_RELEASE:= 1 +09: PKG_MD5SUM:= eade38998313c25fd7934719cdf8a2ea +10: PKG_DESCR:= foo library +11: PKG_SECTION:= libs +12: PKG_BUILDDEP:= openssl +13: PKG_DEPENDS:= libopenssl +14: PKG_URL:= http://www.libfoo.org/ +15: PKG_SITES:= http://download.libfoo.org/ +16: +17: include $(TOPDIR)/mk/package.mk +18: +19: $(eval $(call PKG_template,LIBFOO,libfoo,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +20: +21: CONFIG_STYLE:= manual +22: BUILD_STYLE:= manual +23: INSTALL_STYLE:= manual +24: +25: do-configure: +26: ${CP} ./files/config ${WRKBUILD}/.config +27: +28: do-build: +29: ${MAKE} -C ${WRKBUILD} all +30: +31: do-install: +32: ${INSTALL_DIR} ${IDIR_LIBFOO}/usr/lib +33: ${CP} ${WRKBUILD}/libfoo.so* ${IDIR_LIBFOO}/usr/lib +34: +35: include ${TOPDIR}/mk/pkg-bottom.mk +-------------------------------- + +The Makefile begins with line 4 with the inclusion of the top level rules.mk +file. After that the Makefile starts on line 6 to 15 with metadata +information: the name of the package (+PKG_NAME+), the version of the package +(+PKG_VERSION+), the release number of the package (+PKG_RELEASE+), which is +used in OpenADK to mark any package updates, the md5 hash of the source archive +(+PKG_MD5SUM+), the short one line description for the package (+PKG_DESCR+), +the package section for the menu configuration system (+PKG_SECTION+), the +package buildtime dependencies (+PKG_BUILDDEP+), the package runtime +dependencies (+PKG_DEPENDS+), the package homepage (+PKG_URL+) and finally the +internet locations at which the tarball can be downloaded from (+PKG_SITES+). +Normally ${PKG_NAME}-${PKG_VERSION}.tar.gz will be downloaded. You can +overwrite the default via the +DISTFILES+ variable. You can add more then one +archive name in +DISTFILES+ via space separated. If you have no source archive +at all, just use the boolean variable +NO_DISTFILES+ and set it to 1. + +On line 17 the +mk/package.mk+ file is included, which contains the PKG_template +function, which is used in line 19. + +On line 21 to 23 we define that the configuration step, the building and install +steps are manually provided. + +On line 25-26 we implement a manual configuration step of the libfoo package +by copying a manually created config file into the build directory. + +On line 28-29 we start the compilation process via make. + +On line 31-33 we install the shared library into the package installation +directory, which is used to create the resulting binary package or tar archive +for the target. + +On line 35 we include +mk/pkg-bottom.mk+, which includes common functions used +by the package fetching and building process. diff --git a/docs/adding-packages.txt b/docs/adding-packages.txt new file mode 100644 index 000000000..122ae6c3c --- /dev/null +++ b/docs/adding-packages.txt @@ -0,0 +1,25 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[adding-packages]] +Adding new packages to OpenADK +------------------------------ + +This section covers how new packages (userspace libraries or +applications) can be integrated into OpenADK. It also shows how existing +packages are integrated, which is needed for fixing issues or tuning +their configuration. + +include::adding-packages-directory.txt[] + +include::adding-packages-manual.txt[] + +include::adding-packages-auto.txt[] + +include::adding-packages-host.txt[] + +include::adding-packages-hooks.txt[] + +include::adding-packages-conclusion.txt[] + +include::package-reference.txt[] diff --git a/docs/advanced.txt b/docs/advanced.txt new file mode 100644 index 000000000..4ef75e884 --- /dev/null +++ b/docs/advanced.txt @@ -0,0 +1,15 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Advanced usage +-------------- + +include::using-openadk-toolchain.txt[] + +include::ccache-support.txt[] + +include::download-location.txt[] + +include::package-make-target.txt[] + +include::using-openadk-development.txt[] diff --git a/docs/appendix.txt b/docs/appendix.txt new file mode 100644 index 000000000..cf004b461 --- /dev/null +++ b/docs/appendix.txt @@ -0,0 +1,8 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Appendix +======== + +include::network-configuration.txt[] + diff --git a/docs/ccache-support.txt b/docs/ccache-support.txt new file mode 100644 index 000000000..3dfdd1fa2 --- /dev/null +++ b/docs/ccache-support.txt @@ -0,0 +1,21 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[ccache]] +Using +ccache+ in OpenADK +~~~~~~~~~~~~~~~~~~~~~~~~~ + +http://ccache.samba.org[ccache] is a compiler cache. It stores the +object files resulting from each compilation process, and is able to +skip future compilation of the same source file (with same compiler +and same arguments) by using the pre-existing object files. When doing +almost identical builds from scratch a number of times, it can nicely +speed up the build process. + ++ccache+ support is integrated in OpenADK. You just have to enable +Use ccache +to speedup recompilation+ in +Globale settings+. This will automatically build ++ccache+ and use it for every target compilation. + +The cache is located in +$HOME/.ccache+. It is stored outside of OpenADK +directory so that it can be shared by separate OpenADK builds. If you want to +get rid of the cache, simply remove this directory. diff --git a/docs/common-usage.txt b/docs/common-usage.txt new file mode 100644 index 000000000..b08475c4d --- /dev/null +++ b/docs/common-usage.txt @@ -0,0 +1,87 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Daily use +--------- + +Understanding when a full rebuild is necessary +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +OpenADK tries to detect what part of the system should be rebuilt when the +system configuration is changed through +make menuconfig+. In some cases it +automatically rebuilt packages, but sometimes just a warning is printed to the +terminal, that a rebuild is necessary to make the changes an effect. If strange +things are happening, the autodetection might have not worked correctly, then +you should consider to rebuild everything. If you are following development you +should always do a full rebuild after fetching updates via +git pull+. It is +not always required, but if anything fails, you are on your own. +Use following to do a full rebuild without refetching distfiles: + +-------------------- + $ make cleandir && make +-------------------- + +Understanding how to rebuild packages +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +In OpenADK you can rebuild a single package with: +-------------------- + $ make package=<pkgname> clean package +-------------------- + +It will automatically remove all files added to the staging target directory ++target_*+. If you just want to restart compilation process, after making +some fixes in +build_*/w-<pkgname>-<pkgversion>/+, just do: +-------------------- + $ make package=<pkgname> package +-------------------- + +If you are happy with your changes to the package sources, you can automatically +generate a patch, which will be saved in +package/<pkgname>/patches and automatically +applied on the next clean rebuild: +-------------------- + $ make package=<pkgname> update-patches +-------------------- + +The newly created patches will be opened in $EDITOR, so you can some comments to +the top of the file, before the diff. + + +Offline builds +~~~~~~~~~~~~~~ + +If you intend to do an offline build and just want to download +all sources that you previously selected in the configurator +then issue: + +-------------------- + $ make download +-------------------- + +You can now disconnect or copy the content of your +dl+ +directory to the build-host. + +[[env-vars]] + +Environment variables +~~~~~~~~~~~~~~~~~~~~~ + +OpenADK also honors some environment variables, when they are passed +to +make+. + +* +ARCH+, the architecture of the target system +* +SYSTEM+, the target system name +* +LIBC+, the C library for the target system +* +COLLECT+, the package collection, which will be used +* +VERBOSE+, verbose build, when set to 1 + +An example that creates a configuration file for Raspberry PI with all +software packages enabled, but not included in the resulting firmware image: + +-------------------- + $ make ARCH=arm SYSTEM=raspberry-pi LIBC=musl allmodconfig +-------------------- + +This is often used in the development process of a target system, to verify that +all packages are compilable. + diff --git a/docs/configure.txt b/docs/configure.txt new file mode 100644 index 000000000..3fadc1f48 --- /dev/null +++ b/docs/configure.txt @@ -0,0 +1,68 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[toolchain]] + +Cross-compilation toolchain +--------------------------- + +A compilation toolchain is the set of tools that allows you to compile +code for your system. It consists of a compiler (in our case, +gcc+), +binary utils like assembler and linker (in our case, +binutils+) and a +C standard library (either +http://www.gnu.org/software/libc/libc.html[GNU Libc], +http://www.uclibc.org/[uClibc] or +http://www.musl-libc.org/[musl]). + +The system installed on your development station certainly already has +a compilation toolchain that you can use to compile an application +that runs on your system. If you're using a PC, your compilation +toolchain runs on an x86 processor and generates code for an x86 +processor. Under most Linux systems, the compilation toolchain uses +the GNU libc (glibc) as the C standard library. This compilation +toolchain is called the "host compilation toolchain". The machine on +which it is running, and on which you're working, is called the "host +system" footnote:[This terminology differs from what is used by GNU +configure, where the host is the machine on which the application will +run (which is usually the same as target)]. + +The compilation toolchain is provided by your distribution, and +OpenADK has nothing to do with it (other than using it to build a +cross-compilation toolchain and other tools that are run on the +development host). + +As said above, the compilation toolchain that comes with your system +runs on and generates code for the processor in your host system. As +your embedded system has a different processor, you need a +cross-compilation toolchain - a compilation toolchain that runs on +your _host system_ but generates code for your _target system_ (and +target processor). For example, if your host system uses x86 and your +target system uses ARM, the regular compilation toolchain on your host +runs on x86 and generates code for x86, while the cross-compilation +toolchain runs on x86 and generates code for ARM. + +OpenADK provides only one solution for the cross-compilation toolchain. +The versions for binutils, gcc, gdb and libc are fixed. It is a combination +of mostly the latest versions, which are known to work in this combination +and are known to produce usable firmware images. You normally do not need to +know the deep details, it is part of OpenADK policy to keep this part +simple for the user. + +You can only choose between three C libraries: +http://www.uclibc.org[uClibc], the +http://www.gnu.org/software/libc/libc.html[glibc] and +http://www.musl-libc.org[musl]. + +There are some minimal configuration options provided in +Toolchain settings+. +You can enable or disable the building of following components and toolchain +options: + +* GDB (enabled by default) + +* GNU C++ compiler (enabled by default, when disabled + will prevent some packages to show up in the menu selection) + +* Stack Smashing Support (SSP) support for GNU C/C++ Compiler (experimental, some packages will fail to build) + +* Link Time Optimization (LTO) support for GNU C/C++ Compiler (experimental, some packages will fail to build) + diff --git a/docs/contribute.txt b/docs/contribute.txt new file mode 100644 index 000000000..5a8e1fdd8 --- /dev/null +++ b/docs/contribute.txt @@ -0,0 +1,88 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Contributing to OpenADK +======================= + +If you want to contribute to OpenADK, you will need a git view of +the project. Refer to xref:getting-openadk[] to get it. + +Currently a mail to wbx@openadk.org is the central place for contribution. + +[[submitting-patches]] +Submitting patches +------------------ + +When your changes are done, and committed in your local git view, +_rebase_ your development branch on top of the upstream tree before +generating the patch set. To do so, run: + +--------------------- +$ git fetch --all --tags +$ git rebase origin/master +--------------------- + +Here, you are ready to generate then submit your patch set. + +To generate it, run: + +--------------------- +$ git format-patch -M -n -s origin/master +--------------------- + +This will generate patch files automatically adding the +Signed-off-by+ line. + +Once patch files are generated, you can review/edit the commit message +before submitting them using your favorite text editor. + +Lastly, send/submit your patch set to the OpenADK developer: + +--------------------- +$ git send-email --to wbx@openadk.org *.patch +--------------------- + +Note that +git+ should be configured to use your mail account. +To configure +git+, see +man git-send-email+ or google it. + +Make sure posted *patches are not line-wrapped*, otherwise they cannot +easily be applied. In such a case, fix your e-mail client, or better, +use +git send-email+ to send your patches. + +Cover letter +~~~~~~~~~~~~ + +If you want to present the whole patch set in a separate mail, add ++--cover-letter+ to the +git format-patch+ command (see +man +git-format-patch+ for further information). This will generate a +template for an introduction e-mail to your patch series. + +A 'cover letter' may be useful to introduce the changes you propose +in the following cases: + +* large number of commits in the series; + +* deep impact of the changes in the rest of the project; + +* RFC footnote:[RFC: (Request for comments) change proposal]; + +* whenever you feel it will help presenting your work, your choices, + the review process, etc. + +[[reporting-bugs]] +Reporting issues/bugs, get help +------------------------------- + +Try to think as if you were trying to help someone else; in +that case, what would you need? + +Here is a short list of details to provide in such case: + +* host machine (OS/release) +* git version of OpenADK +* target for which the build fails +* package(s) which the build fails +* the command that fails and its output +* the make.log file, generated when make v is used +* any information you think that may be relevant + +Additionally, you can add the +.config+ file. diff --git a/docs/customize-busybox-config.txt b/docs/customize-busybox-config.txt new file mode 100644 index 000000000..dc1c7abaa --- /dev/null +++ b/docs/customize-busybox-config.txt @@ -0,0 +1,20 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[busybox-custom]] +Customizing the Busybox configuration +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +http://www.busybox.net/[Busybox] is very configurable, and you may +want to customize it. You can just configure it via +Package selection+, ++Base System+, +Busybox Configuration+. The menu based busybox configuration +is mostly integrated into OpenADK. There are some options, which are not +available and not supported. If you need to, you can change the defaults +in +package/busybox/config+ and regenerate your OpenADK configuration. + +A change in the busybox configuration will rebuild the busybox package. If you +choose another implementation of f.e. tar, which is provided by default from +busybox, tar in busybox will be deactivated and the package will be +automatically rebuilded, so that your resulting firmware images or archives +will only contain a single tar program. Obviosly just the one you have +selected. diff --git a/docs/customize-kernel-config.txt b/docs/customize-kernel-config.txt new file mode 100644 index 000000000..9adeb7a9d --- /dev/null +++ b/docs/customize-kernel-config.txt @@ -0,0 +1,48 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[kernel-custom]] +Customizing the Linux kernel configuration +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The Linux kernel configuration can be customized using +make menuconfig+. +OpenADK uses a combination of Linux miniconfig feature and user defined +features to generate a valid Linux configuration for your target. +Some features and drivers are not selectable via +make menuconfig+, either +because your choosen target system does not have support for it or the +option is not implemented, yet. OpenADK uses some kind of abstraction +layer between the real full featured and complicated Linux kernel configuration +and you. It is not perfect and does include a lot of manual work in ++target/linux/config+, but it works in a acceptable way. + +If you just want to view the Linux configuration, which is actually +used for your target, you can execute following command: + +--------------- + $ make kernelconfig +--------------- + +Any changes here will get lost and will not be used to generate a kernel for +your target. If you want to change the existing kernel configuration you need +to follow these steps. + +The basic kernel configuration used for your choosen target is concatenated from +following two files: ++target/linux/kernel.config+ and +target/<arch>/kernel/<system>+. + +So if you would like to change any basic stuff, just edit the files and recreate your +firmware via: + +--------------- + $ make +--------------- + +OpenADK automatically recognizes any change and will rebuild the kernel. + +The base kernel configuration for your target generated by OpenADK is normally just enough to +bootup the system with support for your board, serial console, network card and boot medium. +(like a hard disk, sd card or flash partition) + +If you need to enable some new optional drivers or features, which are not available in ++make menuconfig+, you need to dig in +target/linux/config+. There is the abstraction layer +for the real kernel configuration. diff --git a/docs/customize-libc-config.txt b/docs/customize-libc-config.txt new file mode 100644 index 000000000..438e630f8 --- /dev/null +++ b/docs/customize-libc-config.txt @@ -0,0 +1,33 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[libc-custom]] +Customizing the libc configuration +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Just like xref:busybox-custom[BusyBox], http://www.uclibc.org/[uClibc] +offers a lot of configuration options. They allow you to select +various functionalities depending on your needs and limitations. +OpenADK chooses automatically the best configuration regarding +resulting code size, standard conformance, portability and GNU +libc compatibility. + +If you still have the requirements to change the default, regenerate +a new uClibc config from the existing one: + +---------------- + $ tar xvf dl/uClibc-x.y.z.tar.bz2 + $ cd uClibc-x.y.z && patch -p1 <../toolchain/uClibc/patches/uclibc-git*.patch + $ cp ../target/<arch>/uclibc.config .config + $ make menuconfig +---------------- + +Make all required changes. Then copy the newly created uClibc configuration back +and rebuild your targetsystem, including the toolchain components: + +---------------- + $ cp .config ../target/<arch>/uclibc.config + $ cd .. && make cleandir && make +---------------- + +There are no customization options for GNU libc or musl available. diff --git a/docs/customize-outside-adk.txt b/docs/customize-outside-adk.txt new file mode 100644 index 000000000..575defa82 --- /dev/null +++ b/docs/customize-outside-adk.txt @@ -0,0 +1,154 @@ +// -*- mode:doc -*- ; + +[[outside-adk-custom]] +Keeping customizations outside OpenADK +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The OpenADK project recommends and encourages upstreaming to the +official OpenADK version the packages and board support that are +written by developers. However, it is sometimes not possible or +desirable because some of these packages or board support are highly +specific or proprietary. + +In this case, OpenADK users are offered following choice using +here own git repository. + +* Initialize your project + +Personalize your Git environment via: + +--------------------- + $ git config --global user.name "Waldemar Brodkorb" + $ git config --global user.email wbx@openadk.org +--------------------- + +Get the latest version of OpenADK via anonymous git: + +--------------------- + $ git clone --bare git://openadk.org/git/openadk myadk.git +--------------------- + +Use git-daemon to make the repository public to your developers. After that clone your new shared project repository: + +--------------------- + $ git clone git+ssh://myserver.com/git/myadk.git + $ cd myadk +--------------------- + +Configure OpenADK remote git repository: + +--------------------- + $ git remote add openadk git://openadk.org/git/openadk +--------------------- + +* Create your firmware + +Now you can either start with the latest version or use some older version: + +--------------------- + $ git checkout -b stable_1_0 $sha1 +--------------------- +You can find $sha1 via git log. $sha1 is the hash after the keyword “commit”. + +Now build a firmware image for your target and test it. Fix bugs in the build +environment or add new stuff. You can use the “extra” directory to add local +unpackaged binaries and/or configuration files to overwrite packaged stuff. + +Check your uncommitted changes: + +--------------------- + $ git status + $ git diff --cached + $ git diff +--------------------- + +Commit your git-added changes: + +--------------------- + $ git commit +--------------------- +Or just commit all changes: + +--------------------- + $ git commit -a +--------------------- +It is a good style to make a lot of small atomic commits. + +Push your changes back to your git repository. +For new local branches: + +--------------------- + $ git push origin stable_1_0 +--------------------- + +Or in regulary usage via: +--------------------- + $ git push +--------------------- + +* Working together with OpenADK + +You can generate patches from all your changes against the remote master: + +--------------------- + $ git format-patch -s origin +--------------------- + +Send all relevant patches to OpenADK author via eMail. + +Update your master with changes from OpenADK: + +--------------------- + $ git checkout master + $ git pull openadk master +--------------------- + +If you want you can merge all changes to your branch: + +--------------------- + $ git checkout stable_1_0 + $ git merge master +--------------------- + +Or just cherry-pick some of the commits: + +--------------------- + $ git cherry-pick $sha1 +--------------------- + +* Releasing + +Tag your tested stable branch: + +--------------------- + $ git tag -a stable_1.0 +--------------------- +Push your tag to your repository: + +--------------------- + $ git push origin stable_1.0 +--------------------- + +Checkout your tag and build your firmware: + +--------------------- + $ git clone git+ssh://myserver.com/git/myadk.git mytag + $ cd mytag + $ git checkout stable_1.0 +--------------------- + +* Deleting unused branches + +Deleting branches remotely: + +--------------------- + $ git branch -r + $ git push origin :branchname +--------------------- + +Deleting branches locally: + +--------------------- + $ git branch + $ git branch -D branchname +--------------------- diff --git a/docs/customize-rootfs.txt b/docs/customize-rootfs.txt new file mode 100644 index 000000000..b21b82209 --- /dev/null +++ b/docs/customize-rootfs.txt @@ -0,0 +1,23 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[rootfs-custom]] +Customizing the generated target filesystem +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Besides changing one or another configuration through +make menuconfig+, +there are is a way to customize the resulting target filesystem. + +Create a new directory called +extra+ in the top OpenADK directory. +Put there a tree of directories and files that will be copied directly +over the target filesystem (+root_*+) after everything is build, but +before the firmware images or archives are created. + +You can also point to another directory via: +--------------- + $ make extra=/foo/bar +--------------- + +You can start with the example configuration files from +root_*+. +The +extra+ directory will never be deleted by any clean target to avoid +loss of customized configuration data. diff --git a/docs/customize-store.txt b/docs/customize-store.txt new file mode 100644 index 000000000..d0c209273 --- /dev/null +++ b/docs/customize-store.txt @@ -0,0 +1,14 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[customize-store]] +Storing the configuration +~~~~~~~~~~~~~~~~~~~~~~~~~ + +When you have a OpenADK configuration that you are satisfied with and +you want to share it with others, put it under revision control or move +on to a different OpenADK project. + +You just need to copy your .config and extra directory to regenerate your +firmware images on another system. The used config is, if not explicitely disabled, +saved on the target in +/etc/adkconfig.gz+. diff --git a/docs/customize-toolchain.txt b/docs/customize-toolchain.txt new file mode 100644 index 000000000..8a14d4bbb --- /dev/null +++ b/docs/customize-toolchain.txt @@ -0,0 +1,23 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[toolchain-custom]] +Customizing the toolchain +~~~~~~~~~~~~~~~~~~~~~~~~~ + +There is no simple way to change anything for the toolchain. +OpenADK chooses the best combination of the toolchain components to +provide you with a working and recent system. + +If you like to change the version of a component, add patches or like +to change the configure options, you need to dig into the +toolchain+ directory. + +For example to change the version of gcc, you need to change +toolchain/gcc/Makefile.inc+. +Be aware of the fact, that this is used for the +package/gcc/Makefile+ and therefore for +the gcc running on your target. + +OpenADK supports running a cross-compiled toolchain on your target. You can even use OpenADK +buildsystem on your target. There is a package collection called +development+, which does +configure OpenADK to include all required software to use OpenADK on your target. + + diff --git a/docs/customize.txt b/docs/customize.txt new file mode 100644 index 000000000..81fe18e02 --- /dev/null +++ b/docs/customize.txt @@ -0,0 +1,19 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Customization +------------- + +include::customize-rootfs.txt[] + +include::customize-busybox-config.txt[] + +include::customize-libc-config.txt[] + +include::customize-kernel-config.txt[] + +include::customize-toolchain.txt[] + +include::customize-store.txt[] + +include::customize-outside-adk.txt[] diff --git a/docs/debugging-openadk.txt b/docs/debugging-openadk.txt new file mode 100644 index 000000000..ba48b273e --- /dev/null +++ b/docs/debugging-openadk.txt @@ -0,0 +1,29 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[debugging-openadk]] + +Debugging OpenADK +----------------- + +To analyze any build problems, use verbose output: + +---- + $ make v +---- + +To analyze any inter package dependency problems, use make debug output: + +---- + $ make --debug=b +---- + +If you have a problem with a specific package, use following command +to capture the output and send it to the OpenADK developer: + +---- + $ make package=<pkgname> clean package > pkgname.log 2>&1 +---- + + + diff --git a/docs/developer-guide.txt b/docs/developer-guide.txt new file mode 100644 index 000000000..d4975027a --- /dev/null +++ b/docs/developer-guide.txt @@ -0,0 +1,13 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Developer Guidelines +==================== + +include::writing-rules.txt[] + +include::adding-packages.txt[] + +include::patch-policy.txt[] + +include::debugging-openadk.txt[] diff --git a/docs/download-location.txt b/docs/download-location.txt new file mode 100644 index 000000000..50088b57a --- /dev/null +++ b/docs/download-location.txt @@ -0,0 +1,26 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Location of downloaded packages +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The various tarballs that are downloaded by OpenADK are all stored +in +ADK_DL_DIR+, which by default is the +dl+ directory. If you want +to keep a complete version of OpenaDK which is known to be working +with the associated tarballs, you can make a copy of this directory. +This will allow you to regenerate the toolchain and the target +filesystem with exactly the same versions. + +If you maintain several OpenADK trees, it might be better to have a +shared download location. This can be achieved by pointing the ++DL_DIR+ environment variable to a directory. If this is +set, then the value of +ADK_DL_DIR+ in the OpenADK configuration is +overridden. The following line should be added to +<~/.bashrc>+. + +----------------- + $ export DL_DIR=<shared download location> +----------------- + +The download location can also be set in the +.config+ file, with the ++ADK_DL_DIR+ option. Unlike most options in the .config file, this value +is overridden by the +DL_DIR+ environment variable. diff --git a/docs/faq-troubleshooting.txt b/docs/faq-troubleshooting.txt new file mode 100644 index 000000000..84059b2f9 --- /dev/null +++ b/docs/faq-troubleshooting.txt @@ -0,0 +1,58 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Frequently Asked Questions & Troubleshooting +============================================ + +[[faq-no-doc-on-target]] +Why is there no documentation on the target? +-------------------------------------------- + +Because OpenADK mostly targets _small_ or _very small_ target +hardware with limited resource onboard (CPU, ram, mass-storage), it +does not make sense to waste space with the documentation data. + +If you need documentation data on your target anyway, then OpenADK +is not suitable for your purpose, and you should look for a _real +distribution_. + +[[faq-no-locale-on-target]] +Why is there no locale support on the target? +--------------------------------------------- + +OpenADK tries to create a simple and small Linux system, which +has no fancy features enabled. Locale support on a headless system, +like a router is not useful anyway. To avoid bloat, it is a design +decision to not have any locale support. Developers and users +still could add any kind of user interface with internationalization +features. + +[[faq-why-not-visible-package]] +Why are some packages not visible in the OpenADK config menu? +------------------------------------------------------------- + +If a package exists in the OpenADK tree and does not appear in the +config menu, this most likely means that some of the package's +dependencies are not met. + +To know more about the dependencies of a package, search for the +package symbol in the config menu (see xref:make-tips[]). + +Then, you may have to recursively enable several options (which +correspond to the unmet dependencies) to finally be able to select +the package. + +If the package is not visible due to some unmet dependency to another +C library, either consider to switch to another C library or fix the +package so that it works with your configured library. For this you +need to add your C library to PKG_LIBC_DEPENDS in +package/<pkgname>/Makefile+. + +[[faq-no-web-interface]] +Why is there no web based configuration interface available? +------------------------------------------------------------ + +OpenADK provides a basic root filesystem for your embedded device. +If you need a web based configuration interface for your own appliance, +just write one. There are plenty of possibilities. You could use +Lighttpd with PHP or an C++ application server like Tntnet. + diff --git a/docs/getting.txt b/docs/getting.txt new file mode 100644 index 000000000..0902bb6e0 --- /dev/null +++ b/docs/getting.txt @@ -0,0 +1,24 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[getting-openadk]] +Getting OpenADK +--------------- + +OpenADK does not have any releases. We are following the +http://en.wikipedia.org/wiki/Rolling_release[rolling release] +development model. + +To download OpenADK using Git just do: + +--------------------- + $ git clone git://openadk.org/git/openadk +--------------------- + +Or if you prefer HTTP or using Git behind a proxy: + +--------------------- + $ git clone http://git.openadk.org/openadk.git +--------------------- + +Or you can get a http://www.openadk.org/snapshots/[snapshot]. diff --git a/docs/going-further.txt b/docs/going-further.txt new file mode 100644 index 000000000..2cabb62ed --- /dev/null +++ b/docs/going-further.txt @@ -0,0 +1,9 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Going further in OpenADK's innards +==================================== + +include::how-openadk-works.txt[] + +include::advanced.txt[] diff --git a/docs/how-openadk-works.txt b/docs/how-openadk-works.txt new file mode 100644 index 000000000..e86251196 --- /dev/null +++ b/docs/how-openadk-works.txt @@ -0,0 +1,73 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +How OpenADK works +----------------- + +As mentioned above, OpenADK is basically a set of Makefiles that +download, configure, and compile software with the correct options. It +also includes patches for various software packages and the Linux kernel. + +There is basically one Makefile per software package. Makefiles are split into +many different parts. + +* The +toolchain/+ directory contains the Makefiles + and associated files for all software related to the + cross-compilation toolchain: +binutils+, +gcc+, +gdb+, + +kernel-headers+ and +libc+. + +* The +target/+ directory contains the definitions for all the processor + architectures that are supported by OpenADK. +target/linux+ contains + the meta-data for the Linux kernel configuration abstraction layer and + the kernel patches + +* The +package/+ directory contains the Makefiles and + associated files for all user-space tools and libraries that OpenADK can + compile and add to the target root filesystem or to the host directory. There + is one sub-directory per package. + +* The +mk/+ directory contains some globally used Makefiles with + the suffix +.mk+, these are used in all other Makefile via include + +* The +adk/+ directory contains the Makefiles and + associated files for software related to the generation of the + host tools needed for +make menuconfig+ system + +* The +scripts/+ directory contains shell scripts for the creation of + meta-data in OpenADK, install scripts and image creation scripts + +The main Makefile performs the following steps before the configuration +is done: + +* Call the +prereq+ target to check if the host system have all required + software installed. It creates the +prereq.mk+ Makefile. + +* Compile and run the OpenADK tools to generate the meta-data for the menu + based configuration and creates the +package/Depends.mk+ Makefile to handle the + dependencies + +* Starts the menu based configuration system via +make menuconfig+ + +The main Makefile performs the following steps, once the +configuration is done (it is mainly a wrapper for +mk/build.mk+): + +* Create all the output directories: +host_<gnu_host_name>+, +target_<arch>_<libc>+, + +build_<arch>_<libc>+, +pkg_<arch>_<libc>+, etc. + +* Call the +scan-pkgs.sh+ script to find any needed optional host software, needed to compile + software the user has configured + +* Call the +update-sys+ and +update-pkg+ scripts to generate some meta-data for + available systems and package collections + +* Generate the host tools required for different tasks (encrypting passwords, + compressing data, extracting archives, creating images, ..) + +* Generate the cross-compilation toolchain (binutils, gcc, libc, gdb) + +* Compile the Linux kernel + +* Compile all the userspace packages, the boot loader and external kernel modules + +* Generate the firmware images or archives + diff --git a/docs/images/menuconfig-configured.png b/docs/images/menuconfig-configured.png Binary files differnew file mode 100644 index 000000000..cad536cc9 --- /dev/null +++ b/docs/images/menuconfig-configured.png diff --git a/docs/images/menuconfig.png b/docs/images/menuconfig.png Binary files differnew file mode 100644 index 000000000..5624a2982 --- /dev/null +++ b/docs/images/menuconfig.png diff --git a/docs/introduction.txt b/docs/introduction.txt new file mode 100644 index 000000000..3489c9d5f --- /dev/null +++ b/docs/introduction.txt @@ -0,0 +1,32 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +About OpenADK +============= + +OpenADK is a tool that simplifies and automates the process of +building a complete Linux system for an embedded system, using +cross-compilation. ADK stands for appliance development kit. + +In order to achieve this, OpenADK is able to generate a +cross-compilation toolchain, a root filesystem, a Linux kernel image +and a bootloader for your target. + +OpenADK is useful mainly for people working with embedded systems, +but can be used by people playing with emulators (like Qemu, Virtualbox +or Aranym) or small netbooks (like Lemote Yeelong) needing a fast +and small Linux system. + +Embedded systems often use processors that are not the regular x86 +processors everyone is used to having in his PC. They can be PowerPC +processors, MIPS processors, ARM processors, etc. + +OpenADK supports numerous processors and their variants; it also comes +with default configurations for some embedded systems and netbooks. +(Raspberry PI, Sharp Zaurus, Lemote Yeelong, IBM X40 and more) + +OpenADK is not a Linux distribution and there are no releases or binary +packages available. If you need something like that, better switch to +something else. OpenADK builds everything from source. There are only a +few exceptions to this rule (f.e. some bootloaders and firmware files for +wireless network cards). diff --git a/docs/legal-notice.txt b/docs/legal-notice.txt new file mode 100644 index 000000000..6b1546ef0 --- /dev/null +++ b/docs/legal-notice.txt @@ -0,0 +1,51 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[legal-info]] + +Legal notice and licensing +========================== + +Complying with open source licenses +----------------------------------- + +All of the end products of OpenADK (toolchain, root filesystem, kernel, +bootloaders) contain open source software, released under various licenses. + +Using open source software gives you the freedom to build rich embedded +systems, choosing from a wide range of packages, but also imposes some +obligations that you must know and honour. +Some licenses require you to publish the license text in the documentation of +your product. Others require you to redistribute the source code of the +software to those that receive your product. + +The exact requirements of each license are documented in each package, and +it is your responsibility (or that of your legal office) to comply with those +requirements. + +Complying with the OpenADK license +---------------------------------- + +OpenADK itself is an open source software, released under the +http://www.gnu.org/licenses/old-licenses/gpl-2.0.html[GNU General Public +License, version 2] or (at your option) any later version. +However, being a build system, it is not normally part of the end product: +if you develop the root filesystem, kernel, bootloader or toolchain for a +device, the code of OpenADK is only present on the development machine, not +in the device storage. + +Nevertheless, the general view of the OpenADK developer is that you should +release the OpenADK source code along with the source code of other packages +when releasing a product that contains GPL-licensed software. +This is because the +http://www.gnu.org/licenses/old-licenses/gpl-2.0.html[GNU GPL] +defines the "'complete source code'" for an executable work as "'all the +source code for all modules it contains, plus any associated interface +definition files, plus the scripts used to control compilation and installation +of the executable'". +OpenADK is part of the 'scripts used to control compilation and +installation of the executable', and as such it is considered part of the +material that must be redistributed. + +Keep in mind that this is only the OpenADK developer opinion, and you +should consult your legal department or lawyer in case of any doubt. diff --git a/docs/make-tips.txt b/docs/make-tips.txt new file mode 100644 index 000000000..dcfbe22e0 --- /dev/null +++ b/docs/make-tips.txt @@ -0,0 +1,94 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[make-tips]] +'make' tips +----------- + +This is a collection of tips that help you make the most of OpenADK. + +.Configuration searches: + +The +make menuconfig+ command offer a search tool. +The search tool is called by pressing +/+; +The result of the search shows the help message of the matching items. + +.Display all commands executed by make: + +-------------------- + $ make v +-------------------- + +or + +-------------------- + $ make VERBOSE=1 <target> +-------------------- + +.Display all available targets: + +-------------------- + $ make help +-------------------- + +.Cleaning: + +There are different cleaning targets available. If a full clean is +necessary, you normally will get a message from OpenADK. +To delete all build products (including build directories, target, host +and pkg trees, the firmware and the toolchain for all targets): + +-------------------- + $ make cleandir +-------------------- + +If you even want to clean any downloaded source and your +configuration +.config+: + +-------------------- + $ make distclean +-------------------- + +If you only want to clean the kernel build, because you added or +removed some patch, just do: + +-------------------- + $ make cleankernel +-------------------- + +This is automatically triggered if you change the kernel version in +your configuration. + +If you just want to clean all packages and wants to rebuild the firmware, +(the toolchain is not deleted) just use: + +-------------------- + $ make clean +-------------------- + +.Resetting OpenADK for a new target: + +You can either delete the configuration and start from scratch: + +-------------------- + $ rm .config* + $ make menuconfig +-------------------- + +Or you can save your existing configuration and switch to a new +one with: + +-------------------- + $ make switch +-------------------- + +Afterwards you can switch back to your old configuration, you just +need to remember, which architecture and system you had configured: + +-------------------- + $ make switch ARCH=<arch> SYSTEM=<system> +-------------------- + +OpenADK is designed to have multiple architectures and embedded system +combinations configured and build without a need to rebuild everything +from scratch. There is no limit, you just need to have enough disk space. diff --git a/docs/manual.txt b/docs/manual.txt new file mode 100644 index 000000000..38700e45c --- /dev/null +++ b/docs/manual.txt @@ -0,0 +1,33 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +The OpenADK user manual +======================= +:toc: + +OpenADK usage and documentation by Waldemar Brodkorb. + +(based on the buildroot manual by Thomas Petazzoni. Contributions from Karsten Kruse, Ned Ludd, Martin Herren and others. +See http://www.buildroot.net for the original text). + +:leveloffset: 1 + +include::introduction.txt[] + +include::starting-up.txt[] + +include::working-with.txt[] + +include::faq-troubleshooting.txt[] + +include::running-openadk.txt[] + +include::going-further.txt[] + +include::developer-guide.txt[] + +include::legal-notice.txt[] + +include::contribute.txt[] + +include::appendix.txt[] diff --git a/docs/network-configuration.txt b/docs/network-configuration.txt new file mode 100644 index 000000000..ea869c0bc --- /dev/null +++ b/docs/network-configuration.txt @@ -0,0 +1,182 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[network-configuration]] +Network configuration +~~~~~~~~~~~~~~~~~~~~~ + +loopback devices +^^^^^^^^^^^^^^^^ + +Example for loopback device configuration: + +--------------------- +auto lo +iface lo inet loopback +--------------------- + +static network configuration +^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Example for an ethernet network card: + +--------------------- +auto eth0 +iface eth0 inet static + address 192.168.1.1 + netmask 255.255.255.0 + broadcast + + gateway 192.168.1.254 +--------------------- + +The DNS resolver must be manually configured in /etc/resolv.conf. +The plus for the broadcast value, will calculate the correct broadcast address for the network. + +dynamic network configuration +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Example for an ethernet network card: + +--------------------- +auto eth0 +iface eth0 inet dhcp +--------------------- + +bridge configuration +^^^^^^^^^^^^^^^^^^^^ + +Example for a network bridge with two ethernet network interfaces and an ip address: + +--------------------- +auto br0 +iface br0 inet static + address 192.168.99.1 + netmask 255.255.255.0 + broadcast + + bridge-ports eth0 eth1 +--------------------- + +Just a bridge without an ip address: +--------------------- +auto br0 +iface br0 inet manual + bridge-ports eth0 eth1 +--------------------- + +You need to install either Busybox brctl applet or the bridge-utils package. The required kernel modules will be automatically selected. + +VLAN network interfaces +^^^^^^^^^^^^^^^^^^^^^^^ + +Example configuration of a network interface with VLAN ID 8 without any ip configuration: + +--------------------- +auto eth0.8 +iface eth0.8 inet manual +--------------------- + +You need to install Busybox vconfig applet. The required kernel modules will be automatically selected. + +PPP over Ethernet +^^^^^^^^^^^^^^^^^ + +Typical DSL configuration: + +--------------------- +auto ppp0 +iface ppp0 inet ppp + use-template pppoe + provider isp + ppp-mtu 1412 + ppp-username foo + ppp-password bar + ppp-device eth1 +--------------------- + +The provider can be used as argument for "pon" and "poff" commands. +You need to install the ppp and ppp-mod-pppoe package. The required kernel modules will be automatically selected. + +wireless client configuration +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +Example wireless client configuration, secured with WPA2: + +--------------------- +auto wlan0 +iface wlan0 inet dhcp + wireless-ssid myap + wireless-channel 11 + wireless-mode sta + wireless-security wpa2 + wireless-passphrase xxxxxx +--------------------- + +You need to install iw and wpa_supplicant packages. For older wireless drivers you +need to install wireless-tools instead of iw and use the following variable to choose the right tools: + +--------------------- +wireless-extension 1 +--------------------- + +wireless accesspoint configuration +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +To configure an access point use following example: + +--------------------- +auto wlan0 +iface wlan0 inet static + address 192.168.40.10 + netmask 255.255.255.0 + broadcast + + wireless-ssid myap + wireless-channel 8 + wireless-mode ap + wireless-security wpa2 + wireless-passphrase xxxxxx +--------------------- + +You need to install hostapd and iw/wireless-tools packages. + +hso umts modem +^^^^^^^^^^^^^^ + +If you have a HSO UMTS modem, you can use following to configure internet access: +--------------------- +auto hso0 +iface hso0 inet manual + pin 1234 + apn your.apn +--------------------- + +ATM configuration +^^^^^^^^^^^^^^^^^ + +For example a configuration on a Linksys AG241 router with integrated DSL modem, +you can configure two ATM devices to distinguish between Internet and IPTV traffic: + +--------------------- +auto eth0.1 +iface eth0.1 inet manual + +auto eth0.8 +iface eth0.8 inet manual + +auto nas0 +iface nas0 inet manual + +auto nas1 +iface nas1 inet manual + atm-vpi 1 + atm-vci 34 + +auto br0 +iface br0 inet manual + bridge-ports eth0.1 nas0 + +auto br1 +iface br1 inet manual + bridge-ports eth0.8 nas1 +--------------------- + +More network setups can be implemented on request. diff --git a/docs/package-make-target.txt b/docs/package-make-target.txt new file mode 100644 index 000000000..13c498062 --- /dev/null +++ b/docs/package-make-target.txt @@ -0,0 +1,52 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[pkg-build-steps]] + +Package-specific _make_ targets +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Running +make package=<package> package+ builds and installs that particular package. +Be aware of the fact, that no build dependencies are resolved using this method! + +For packages relying on the OpenADK infrastructure, there are +numerous special make targets that can be called independently like +this: + +------------ + $ make package=<package> <target> +------------ + +The package build targets are (in the order they are executed): + +[width="90%",cols="^1,4",options="header"] +|=================================================== +| command/target | Description + +| +fetch+ | Fetch the source + +| +extract+ | Put the source in the package build directory + +| +patch+ | Apply the patches, if any + +| +configure+ | Run the configure commands, if any + +| +build+ | Run the compilation commands + +| +fake+ | Run the installation of the package into a fake directory + +| +package+ | Create a package or tar archive of the package files + +|=================================================== + +Additionally, there are some other useful make targets: + +[width="90%",cols="^1,4",options="header"] +|=================================================== +| command/target | Description + +| +clean+ | Remove the whole package build directory + +| +host-package+ | Build and install the host binaries and libraries + +|=================================================== diff --git a/docs/package-reference.txt b/docs/package-reference.txt new file mode 100644 index 000000000..36d2e28b4 --- /dev/null +++ b/docs/package-reference.txt @@ -0,0 +1,135 @@ +[[package-reference]] + ++package+ Reference +~~~~~~~~~~~~~~~~~~~ + +The list of variables that can be set in a +Makefile+ to give metadata +information is: + +* +PKG_NAME+, mandatory, must contain the name of the package. + +* +PKG_VERSION+, mandatory, must contain the version of the package. + +* +PKG_RELEASE+, mandatory, must contain the OpenADK specific release of the package. + +* +PKG_MD5SUM+, mandatory, must contain the MD5 hash of the package, will be used + to check if a download of a package is complete. + +* +PKG_SECTION+, mandatory, must contain the OpenADK specific section, see package/section.lst. + +* +PKG_RELEASE+, mandatory, must contain an one line summary of the package description. + +* +PKG_URL+, optional, may contain the url to the homepage of the package + +* +PKG_SITES+, mandatory, must contain the download url for the package, multiple entries + with space separated, are allowed. Only HTTP/HTTPS or FTP URLS are allowed. + A backup site (http://www.openadk.org/distfiles) is always used, if the package site is + not available. There is no direct support for cvs/svn/git/hg/bzr repositories, because + building OpenADK behind a HTTP proxy should be working without any configuration hassle. + There are also some predefined mirror sites in +mk/mirrors.mk+, + which can be used. + Example: PKG_SITES:= +${MASTER_SITE_GNU:=foo/}+ + +* +DISTFILES+ optional, may contain the name of the tarball of + the package. If +DISTFILES+ is not specified, it defaults to +PKG_NAME-PKG_VERSION.tar.gz+. + Example: DISTFILES= +${PKG_NAME}${PKG_VERSION}.tar.xz+ + +* +NO_DISTFILES+ optional, may be set to 1, to disable fetching of any archives. + Provide the source code for the package in +package/<pkgname>/src+, which will be + automatically copied to the WRKBUILD/WRKSRC directory. + +* +PKG_BUILDDEP+ optional, lists the build time dependencies (in terms of package + directory name, see +package/+) that are required for the current target package to + compile. These dependencies are guaranteed to be compiled and + installed before the configuration of the current package starts. + +* +PKG_DEPENDS+ optional, lists the runtime dependencies that are required to + run the software package on the target. It conatins a list of package names, + which might be different to the package directory name. See what is used + in PKG_template, to find out the package name used here. + +* +PKG_NOPARALLEL+ optional, may be set to 1, to disable parallel building of the + package via make -jn, n=4 is default, but can be changed in +Global Settings+ in the + menu based configuration. + +* +PKG_OPTS+ optional, may be set to following values: + +dev+ create a development package automatically, containing header files and +.pc+ files. + Only useful for library packages, when you want to compile on the target. + +devonly+ only creates a development package with header files, normally not needed on + the target. + +noscripts+ do not automatically install *-config and other build related scripts into + +STAGING_TARGET_DIR/scripts+, required for automake/autoconf package + +noremove+ do not automatically remove package files from +STAGING_TARGET_DIR+ + +* +PKG_NEED_CXX+ optional, package need C++ compiler + +* +PKG_CXX+ optional, package can use either `uClibc++` or `libstdc++` + +The recommended way to define these variables is to use the following +syntax: + +---------------------- +PKG_VERSION:= 2.11 +---------------------- + +Or for lines longer than 80 characters use: +---------------------- +PKG_DEPENDS:= foo bar baz +PKG_DEPENDS+= muh maeh +---------------------- + + +The variables that define what should be performed at the +different steps of the configure, build and install process. + +* +CONFIG_STYLE+ either manual, auto or minimal + +* +CONFIGURE_ARGS+ add --enable-foo/--disable-foo to configure + +* +CONFIGURE_ENV+ add additional environment variables to configure step + +* +HOST_STYLE+ either manual or auto + +* +HOST_CONFIGURE_ARGS+ add --enable-foo/--disable-foo to host configure + +* +HOST_CONFIGURE_ENV+ add additional environment variables to the host configure step + +* +AUTOTOOL_STYLE+ either autoreconf, autoconf or bootstrap + +* +BUILD_STYLE+ either manual or auto + +* +MAKE_ENV+ add additional variables to build step + +* +MAKE_FLAGS+ add additinal make flags to build step + +* +FAKE_FLAGS+ add additional make flags to fake install step + +* +XAKE_FLAGS+ add additional make flags to build and fake install step + +* +INSTALL_STYLE+ either manual or auto + +* +CONFIGURE_PROG+ overwrite default configure programm + +* +MAKE_FILE+ overwrite default Makefile + +* +ALL_TARGET+ overwrite default build target + +* +INSTALL_TARGET+ overwrite default install target + +The variables to add or overwrite preprocessor, compiler and linker flags: + +* +TARGET_CPPFLAGS+ flags for the preprocessor + +* +TARGET_CFLAGS+ flags for the compiler + +* +TARGET_LDFLAGS+ flags for the linker + +* +TARGET_CXXFLAGS+ flags for the C++ compiler + +* +CPPFLAGS_FOR_BUILD+ flags used for host preprocessing + +* +CFLAGS_FOR_BUILD+ flags used for host compiling + +* +LDFLAGS_FOR_BUILD+ flags used for host linking + + diff --git a/docs/patch-policy.txt b/docs/patch-policy.txt new file mode 100644 index 000000000..e948661cf --- /dev/null +++ b/docs/patch-policy.txt @@ -0,0 +1,90 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[patch-policy]] + +Patching a package +------------------ + +While integrating a new package or updating an existing one, it may be +necessary to patch the source of the software to get it cross-built within +OpenADK. OpenADK offers an infrastructure to automatically handle this during +the builds. Patches are provided within OpenADK, in the package directory; +these typically aim to fix cross-compilation, libc support, portability issues +or other things. + +Normally the patches are autogenerated via: +------------ + $ make package=<package> update-patches +------------ + +Otherwise they are manually generated via: +------------ + $ diff -Nur <pkgname>-<pkgversion>.orig <pkgname>-<pkgversion> > package/<pkgname>/patches/xxx-description.patch +------------ + +The string +xxx+ should be substituted by a number starting with 001. The +patches will be applied in numeric order. You should either use the automatic +patch generation or the manual patch creation for a package. Mixed usage is not +supported. + +Format and licensing of the package patches +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Patches are released under the same license as the software that is +modified. + +A message explaining what the patch does, and why it is needed, should +be added in the header commentary of the patch. +At the end, the patch should look like: + +--------------- +add C++ support test + +--- configure.ac.orig ++++ configure.ac +@@ -40,2 +40,12 @@ + +AC_PROG_MAKE_SET ++ ++AC_CACHE_CHECK([whether the C++ compiler works], ++ [rw_cv_prog_cxx_works], ++ [AC_LANG_PUSH([C++]) ++ AC_LINK_IFELSE([AC_LANG_PROGRAM([], [])], ++ [rw_cv_prog_cxx_works=yes], ++ [rw_cv_prog_cxx_works=no]) ++ AC_LANG_POP([C++])]) ++ ++AM_CONDITIONAL([CXX_WORKS], [test "x$rw_cv_prog_cxx_works" = "xyes"]) +--------------- + +Integrating patches found on the Web +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +When integrating a patch of which you are not the author, you have to +add a few things in the header of the patch itself. + +Depending on whether the patch has been obtained from the project +repository itself, or from somewhere on the web, add one of the +following tags: + +--------------- +Backported from: <some commit id> +--------------- + +or + +--------------- +Fetch from: <some url> +--------------- + +It is also sensible to add a few words about any changes to the patch +that may have been necessary. + +Upstreaming patches +~~~~~~~~~~~~~~~~~~~ + +OpenADK tries to avoid any patches to the source code. If a patch could +not be avoided, it should be tried to make the patch of a good quality to +get it upstream. OpenADK tries to report any found issues and try to send +in any upstream compatible patches. diff --git a/docs/prerequisite.txt b/docs/prerequisite.txt new file mode 100644 index 000000000..d7ffcc544 --- /dev/null +++ b/docs/prerequisite.txt @@ -0,0 +1,51 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[requirement]] +System requirements +------------------- + +OpenADK is designed to run on Linux systems. But there is basic +support to run on MacOS X Maverick, Windows 7 with Cygwin, OpenBSD, +NetBSD and FreeBSD. Main development happens on Debian/GNU Linux 7 +and MacOS X Maverick. The other host platforms are occasionally +tested. + +OpenADK detects the host system and displays only the software +packages, which are known to be cross-compilable on the used host. +For example OpenJDK7 is only cross-compilable on a Linux host. + +OpenADK needs some software to be already installed on the host +system; here is the list of the mandatory packages, +package names may vary between host systems. + +* Build tools: + +** +bash+ +** +binutils+ +** +C compiler (gcc or clang)+ +** `C++ compiler (g++ or clang++)` +** +GNU sed+ +** +GNU awk+ +** +GNU make+ +** +patch+ +** +gzip+ +** +perl+ +** +tar+ +** +wget+ +** +ncurses5 development files+ +** +zlib development files+ +** +libc development files+ + +There is a check for the required versions of these tools in advance, +though. To re-issue the checks, use +make prereq+. + +For some packages there are some optional packages required. OpenADK +will check for the required tools in advance, when a specific package is +choosen. For example XBMC needs java installed on the host system. +OpenADK tries to avoid any optional required host tools and will try to +build them when needed. + +For some host systems you can try to use ./scripts/adkprepare.sh to +install all required software. You need to run the script as root, it +will use the package management of your host to install the software. diff --git a/docs/qemu.txt b/docs/qemu.txt new file mode 100644 index 000000000..976490bf3 --- /dev/null +++ b/docs/qemu.txt @@ -0,0 +1 @@ +user,hostfwd=tcp::2222-:22 diff --git a/docs/running-openadk.txt b/docs/running-openadk.txt new file mode 100644 index 000000000..c4ae0fa72 --- /dev/null +++ b/docs/running-openadk.txt @@ -0,0 +1,178 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Running OpenADK created Linux firmware +====================================== + +Bootloader +~~~~~~~~~~~ + +The Bootloader is used to initialize the machine and load the Linux kernel. +A list of popular Bootloaders can be found on http://elinux.org/Bootloader. +OpenADK provides the Bootloader if necessary for a target system. +You can find them in +make menuconfg+ under +Packages/Bootloader+. +Some Bootloaders require the Linux kernel in a special format (SREC, ELF, ..), +compressed or with a special header. This will be automatically done by +OpenADK in +target/<arch>/Makefile+ while creating the firmware archives or +images. + +Linux kernel +~~~~~~~~~~~~ + +The kernel is a program that constitutes the central core of a computer +operating system. It has complete control over everything that occurs in the +system. The Bootloader can provide some basic runtime configuration +parameters via the kernel commandline feature. + +The Linux kernel in OpenADK is intended to be very small in size and will +be by default compressed with xz compression algorithm, if available for +the target system. You can configure the compression algorithm used for the +compression of the Linux kernel and if choosen the initramfs filesystem in ++make menuconfig+. In +Kernel configuration+ you have the choice between +dfferent kernel versions. The latest version will be automatically used. +There you can choose any needed addon drivers or any supported runtime +and debugging features. + +The kernel expands itself on boot, if compressed, and then initialize the +hardware. The additional kernel modules are loaded later by a init script. +The kernel will autoamtically mount the virtual filesystem /dev as devtmpfs +and then will execute +/sbin/init+ in userspace. + +init system +~~~~~~~~~~~ + +The _init_ program is the first userspace program started by the kernel (it +carries the PID number 1), and is responsible for starting the userspace +services and programs (for example: web server, graphical applications, other +network servers, etc.). + +OpenADK uses *Busybox* init. Amongst many programs, Busybox has an +implementation of a basic +init+ program, which is sufficient for most embedded +systems. The Busybox +init+ program will read the +/etc/inittab+ file at boot +to know what to do. The syntax of this file can be found in +http://git.busybox.net/busybox/tree/examples/inittab (note that Busybox ++inittab+ syntax is special: do not use a random +inittab+ documentation from +the Internet to learn about Busybox +inittab+). The default +inittab+ in +OpenADK is generated while producing the +base-files+ package. The main job +the default inittab does is to start the +/etc/init.d/rcS+ shell script, and +start one or more +getty+ programs (which provides a login prompt). + +/dev management +~~~~~~~~~~~~~~~ + +On a Linux system, the +/dev+ directory contains special files, called +_device files_, that allow userspace applications to access the +hardware devices managed by the Linux kernel. Without these _device +files_, your userspace applications would not be able to use the +hardware devices, even if they are properly recognized by the Linux +kernel. + +OpenADK uses *dynamic device nodes using devtmpfs and mdev*. This method relies +on the _devtmpfs_ virtual filesystem in the kernel, which is enabled by default +for all OpenADK generated kernels, and adds the +mdev+ userspace utility on top +of it. +mdev+ is a program part of Busybox that the kernel will call every time +a device is added or removed. Thanks to the +/etc/mdev.conf+ configuration +file, +mdev+ can be configured to for example, set specific permissions or +ownership on a device file, call a script or application whenever a device +appears or disappear, etc. Basically, it allows _userspace_ to react on device +addition and removal events. +mdev+ is also important if you have devices that +require a firmware, as it will be responsible for pushing the firmware contents +to the kernel. +mdev+ is a lightweight implementation (with fewer features) of ++udev+. For more details about +mdev+ and the syntax of its configuration file, +see http://git.busybox.net/busybox/tree/docs/mdev.txt. + +initscripts +~~~~~~~~~~~ + +The /etc/init.d/rcS script will execute all shell scripts in /etc/init.d in +order with the parameter +autostart+. The order is identified by the +#INIT+ +comment in the script. All scripts are sourcing the +/etc/rc.conf+ file to +determine if a service should be started on boot and which flags if any are +used for the service. By default all services except syslog and ssh are +disabled. Most scripts provided by OpenADK via ++package/<pkgname>/files/<pkgname>.init+ are like: + +--------------------- +#!/bin/sh +#PKG foo +#INIT 60 + +. /etc/rc.conf + +case $1 in +autostop) ;; +autostart) + test x"${foo:-NO}" = x"NO" && exit 0 + exec sh $0 start + ;; +start) + /usr/sbin/foo $foo_flags + ;; +stop) + kill $(pgrep -f /usr/sbin/foo ) + ;; +restart) + sh $0 stop + sh $0 start + ;; +*) + echo "usage: $0 (start|stop|restart)" + exit 1 +esac +exit $? +--------------------- + +cfgfs - configuration file system +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The cfgfs application for the OpenADK system uses a special small partition on +the block device of your embedded system (f.e. flash, sd card, compact flash +or hard disk). Only changes made to /etc on your embedded system are saved in a +compressed form (using LZO1 compression algorithm) in this partition. There is +no Linux filesystem on this partition. The embedded system initialization +process will setup /etc correctly on boot up, when cfgfs application is found. +After making any changes to /etc, which should survive a reboot of the embedded +system must be written to the cfgfs partition via “cfgfs commit”. Trying to +reboot, shutdown or halt an embedded system with unsaved changes will generate +an error, which can be circumvented. Updates to /etc via the ipkg package +manager will be reported. + +--------------------- +cfgfs +Configuration Filesystem Utility (cfgfs), Version 1.09 +Syntax: + /sbin/cfgfs commit [-f] + /sbin/cfgfs erase + /sbin/cfgfs setup [-N] + /sbin/cfgfs status [-rq] + /sbin/cfgfs { dump | restore } [<filename>] +--------------------- + +network configuration +~~~~~~~~~~~~~~~~~~~~~ + +On bootup +/etc/network/interfaces+ is used to find out which network configuration +should be used. The default is to use DHCP (via busybox +udhcpc+) on the first found +ethernet device to configure the network. See network configuration for detailed syntax +of +/etc/network/interfaces+. It is similar to Debian network configuration and uses ++ifupdown+ from +busybox+. + +See Appendix xref:network-configuration[] + +getting a shell on the system +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +There are two method available to get a shell on your embedded system created with +OpenADK. You can either login locally via serial console or graphical console or you +can login remotely via secure shell. + +In both cases the default user is +root+ and the default password is ++linux123+. *You should always change the default password!!* You can do this +either via +passwd+ on the system or you can preconfigure a password via +make +menuconfig+ under +Runtime configuration+. + +The default shell used in OpenADK is +mksh+ from http://www.mirbsd.org/mksh/. +You can change the shell in +make menuconfig+ under +Runtime configuration+. Be +aware of the fact that the bootup process might use some +mksh+ features to +speedup the system start. When you change the shell for system +/bin/sh+ the +slower startup is used as a fallback. diff --git a/docs/runtime-debugging.txt b/docs/runtime-debugging.txt new file mode 100644 index 000000000..5147883f9 --- /dev/null +++ b/docs/runtime-debugging.txt @@ -0,0 +1,22 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +[[runtime-debugging]] + +Details on debugging your newly created firmware +------------------------------------------------ + +strace +~~~~~~ + +gdbserver +~~~~~~~~~ + +gdb +~~~ + +kernel module debugging +~~~~~~~~~~~~~~~~~~~~~~~ + +kernel debugging +~~~~~~~~~~~~~~~~ diff --git a/docs/starting-up.txt b/docs/starting-up.txt new file mode 100644 index 000000000..7326f60c7 --- /dev/null +++ b/docs/starting-up.txt @@ -0,0 +1,12 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Starting up +=========== + +include::prerequisite.txt[] + +include::getting.txt[] + +include::using.txt[] + diff --git a/docs/using-openadk-development.txt b/docs/using-openadk-development.txt new file mode 100644 index 000000000..d7d31fbad --- /dev/null +++ b/docs/using-openadk-development.txt @@ -0,0 +1,62 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Using OpenADK during development +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +The normal operation of OpenADK is to download a tarball, extract it, +configure, compile and install the software component found inside this +tarball. The source code is extracted in ++build_<system>_<arch>_<libc>/w-<package>-<version>+, which is a +temporary directory: whenever +make clean+ or one of the other clean +targets are used, this directory is entirely removed, and recreated at +the next +make+ invocation. + +This behavior is well-suited when OpenADK is used mainly as an +integration tool, to build and integrate all the components of an +embedded Linux system. However, if one uses OpenADK during the +development of certain components of the system, this behavior is not +very convenient: one would instead like to make a small change to the +source code of one package, and be able to quickly rebuild the system +with OpenADK. + +Following workflow might help to integrate your own changes, while +developing a new package or board support. + +Make changes directly in +build_<system>_<arch>_<libc>/w-<package>-<version>+ +and recompile the package with: + +------------ + $ make package=<package> package +------------ + +When you are happy with the change, generate a patch: +------------ + $ make package=<package> update-patches +------------ + +For the linux kernel just change the code in ++build_<system>_<arch>_<libc>/linux, remove the .config +and call make again: + +------------ + $ rm build_<system>_<arch>_<libc>/linux/.config + $ make +------------ + +There is no update-patches target for the kernel, you need +to extract the kernel source from your download dir, make +a copy of the source tree, add your changes and create a +patch manually: + +------------ + $ tar xvf dl/linux-x.y.z.tar.xz + $ cp -a linux-x.y.z linux-x.y.z.orig + $ diff -Nur linux-x.y.z.orig linux-x.y.z > target/linux/patches/x.y.z/mykernel.patch + $ make cleankernel + $ make +------------ + +The same method can be used for toolchain components and _must_ +be used for busybox, because it contains patches, which are not +generated via +make update-patches+. diff --git a/docs/using-openadk-toolchain.txt b/docs/using-openadk-toolchain.txt new file mode 100644 index 000000000..6994d9abc --- /dev/null +++ b/docs/using-openadk-toolchain.txt @@ -0,0 +1,19 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Using the generated toolchain outside OpenADK +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +You may want to compile, for your target, your own programs or other software +that are not packaged in OpenADK. In order to do this you can use the toolchain +that was generated by OpenADK. + +The toolchain generated by OpenADK is located by default in ++toolchain_<gnu_host_name>/+. The simplest way to use it is to add ++toolchain_<gnu_host_name>/usr/bin/+ to your PATH environment variable and then to use ++<arch>-<vendor>-linux-<libcsuffix>-gcc+, ++<arch>-<vendor>-linux-<libcsuffix>-objdump+, etc. + +It is possible to relocate the toolchain, you just need to put ++target_<arch>_<libc>_<libcsuffix>+ into the same directory as ++toolchain_<gnu_host_name>/+. diff --git a/docs/using.txt b/docs/using.txt new file mode 100644 index 000000000..45ea3f20c --- /dev/null +++ b/docs/using.txt @@ -0,0 +1,102 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Using OpenADK +------------- + +OpenADK has a nice configuration tool similar to the one you can +find in the http://www.kernel.org/[Linux kernel] or in +http://www.busybox.net/[Busybox]. Note that you can *and should build +everything as a normal user*. There is no need to be root to configure +and use OpenADK. The first step is to run the configuration +assistant: + +-------------------- + $ make menuconfig +-------------------- + +For each menu entry in the configuration tool, you can find associated +help that describes the purpose of the entry. + +image::menuconfig.png[] + +First of all you need to choose your target architecture, your target +system, your target C library, your target firmware type and your target +package format. After that you can select individual packages and kernel +settings or just use one of the predefined package collections. When you +are ready exit and save. You can always redefine the configuration +using +make menuconfig+. + +image::menuconfig-configured.png[] + +Once everything is configured, the configuration tool generates a ++.config+ file that contains the description of your configuration. It +will be used by the Makefiles to do what's needed. + +Let's go: + +-------------------- + $ make +-------------------- + +You *should never* use +make -jN+ with OpenADK: it does not support 'top-level +parallel make'. Instead, use the +ADK_MAKE_JOBS+ option in +Global settings+ to +tell OpenADK to run each package compilation with +make -jN+. + +The `make` command will generally perform the following steps: + +* download source files (as required); +* configure, build and install required host tools; +* configure, build and install the cross-compiling toolchain; +* build a kernel image, if selected; +* build/install selected target packages; +* build a bootloader, if selected; +* create a root filesystem in selected format. + +OpenADK output is stored in several subdirectories: + +* +firmware/+ where all the images and packages are stored. + +* +build_<system>_<arch>_<libc>/+ where all the components except for the cross-compilation toolchain are built. The directory contains one subdirectory for each of these components. + +* +target_<arch>_<libc>/+ which contains a hierarchy similar to a root filesystem + hierarchy. This directory contains the installation of the + cross-compilation toolchain and all the userspace packages selected + for the target. However, this directory is 'not' intended to be + the root filesystem for the target: it contains a lot of development + files, unstripped binaries and libraries that make it far too big + for an embedded system. These development files are used to compile + libraries and applications for the target that depend on other + libraries. + +* +root_<system>_<arch>_<libc>/+ which contains the complete root filesystem for + the target. One exception, it doesn't have the correct + permissions (e.g. setuid for the busybox binary) for some files. + Therefore, this directory *should not be used on your target*. + Instead, you should use one of the images or archives built in the + +firmware/+ directory. If you need an + extracted image of the root filesystem for booting over NFS, then + use the tarball image generated in +firmware/+ and extract it as + root. Compared to +build_*/+, +target_*/+ contains only the files and + libraries needed to run the selected target applications: the + development files are (exception: if any dev packages are selected) + not present, the binaries are stripped. + +* +host_<gnu_host_name>/+ contains the installation of tools compiled for the host + that are needed for the proper execution of OpenADK + +* +toolchain_<gnu_host_name>/+ contains just the cross-compilation toolchain. + Can be used together with +target_<arch>_<libc>/+ for other projects. Toolchain + is relocatable. + +* +toolchain_build_<arch>_<libc>/+ contains the build directories for the various + components of the cross-compilation toolchain. + +* +pkg_<system>_<arch>_<libc>/+ contains stamp files and file lists for the various components. + +The command, +make menuconfig+ and +make+, are the +basic ones that allow to easily and quickly generate images fitting +your needs, with all the supports and applications you enabled. + +More details about the "make" command usage are given in +xref:make-tips[]. diff --git a/docs/working-with.txt b/docs/working-with.txt new file mode 100644 index 000000000..9e101d28f --- /dev/null +++ b/docs/working-with.txt @@ -0,0 +1,25 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Working with OpenADK +==================== + +This section explains how you can customize OpenADK to fit your +needs. + +include::configure.txt[] + +include::make-tips.txt[] + +include::customize.txt[] + +include::common-usage.txt[] + +Hacking OpenADK +--------------- + +If OpenADK does not yet fit all your requirements, you may be +interested in hacking it to add: + +* new packages: refer to the xref:adding-packages[Developer guide] + diff --git a/docs/writing-rules.txt b/docs/writing-rules.txt new file mode 100644 index 000000000..22f6547ad --- /dev/null +++ b/docs/writing-rules.txt @@ -0,0 +1,91 @@ +// -*- mode:doc; -*- +// vim: set syntax=asciidoc: + +Coding style +------------ + +Overall, these coding style rules are here to help you to add new files in +OpenADK or refactor existing ones. + +[[writing-rules-config-in]] + ++Config.in+ +~~~~~~~~~~~ + ++Config.in+ files contain entries for almost anything configurable in +OpenADK. Mostly all Config.in files for packages are autogenerated and +should not be manually edited. The following rules apply for the top level +Config.in, for the files in target/config and target/linux/config. + +An entry has the following pattern: + +--------------------- +config ADK_TARGET_FOO + bool "foo" + depends on ADK_PACKAGE_LIBBAZ + select BR2_PACKAGE_LIBBAR + help + This is a comment that explains what foo is. + + http://foo.org/foo/ +--------------------- + +* The +bool+, +depends on+, +select+ and +help+ lines are indented + with one tab. + +* The help text itself should be indented with one tab and two + spaces. + +The +Config.in+ files are the input for the configuration tool +used in OpenADK, which is the regular _Kconfig_. For further +details about the _Kconfig_ language, refer to +http://kernel.org/doc/Documentation/kbuild/kconfig-language.txt[]. + +[[writing-rules-mk]] + ++Makefile+ +~~~~~~~~~~ + +* Header: The file starts with a license header. ++ +--------------------- +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. +--------------------- ++ +* Assignment: use +=+ followed by two tabs: ++ +--------------------- +PKG_VERSION:= 1.0 +PKG_BUILDDEP+= libfoo +--------------------- ++ + +* Indentation: use tab only: ++ +--------------------- +libfoo-install: + $(CP) $(WRKINST)/usr/lib/libfoo*.so* \ + $(IDIR_LIBFOO)/usr/lib +--------------------- ++ + +* Optional dependency: + +** Prefer multi-line syntax. +--------------------- +ifeq ($(ADK_PACKAGE_LIBFOO_WITH_PYTHON),y) +CONFIGURE_ARGS+= --with-python-support +else +CONFIGURE_ARGS+= --without-python-support +endif +--------------------- + +Documentation +~~~~~~~~~~~~~ + +The documentation uses the +http://www.methods.co.nz/asciidoc/[asciidoc] format. + +For further details about the http://www.methods.co.nz/asciidoc/[asciidoc] +syntax, refer to http://www.methods.co.nz/asciidoc/userguide.html[]. diff --git a/mk/build.mk b/mk/build.mk index c4371f477..78079bea9 100644 --- a/mk/build.mk +++ b/mk/build.mk @@ -9,7 +9,7 @@ $(error your umask is not 022) endif CONFIG_CONFIG_IN = Config.in -CONFIG = config +CONFIG = adk/config DEFCONFIG= ADK_DEBUG=n \ ADK_STATIC=n \ ADK_WGET_TIMEOUT=180 \ @@ -41,8 +41,6 @@ DEFCONFIG= ADK_DEBUG=n \ ADK_PKG_TEST=n \ ADK_PKG_MPDBOX=n \ ADK_PKG_DEVELOPMENT=n \ - ADK_PKG_CONSOLE=n \ - ADK_PKG_TEST=n \ ADK_TOOLCHAIN_GCC_USE_SSP=n \ ADK_TOOLCHAIN_GCC_USE_LTO=n \ BUSYBOX_IFPLUGD=n \ @@ -81,6 +79,7 @@ DEFCONFIG= ADK_DEBUG=n \ BUSYBOX_FEATURE_VI_REGEX_SEARCH=n \ ADK_KERNEL_RT2X00_DEBUG=n \ ADK_KERNEL_ATH5K_DEBUG=n \ + ADK_KERNEL_BUG=n \ ADK_KERNEL_DEBUG_WITH_KGDB=n noconfig_targets:= menuconfig \ @@ -94,13 +93,13 @@ POSTCONFIG= -@\ if [ -f .adkinit ];then rm .adkinit;\ else \ if [ -f .config.old ];then \ - $(TOPDIR)/host_$(GNU_HOST_NAME)/usr/bin/pkgrebuild;\ + $(TOPDIR)/adk/tools/pkgrebuild;\ rebuild=0; \ if [ "$$(grep ^BUSYBOX .config|md5sum)" != "$$(grep ^BUSYBOX .config.old|md5sum)" ];then \ touch .rebuild.busybox;\ rebuild=1;\ fi; \ - for i in ADK_RUNTIME_PASSWORD ADK_RUNTIME_TMPFS_SIZE ADK_RUNTIME_HOSTNAME ADK_TARGET_ROOTFS ADK_RUNTIME_CONSOLE ADK_TARGET_QEMU_MICROBLAZE_MODEL;do \ + for i in ADK_RUNTIME_PASSWORD ADK_RUNTIME_TMPFS_SIZE ADK_RUNTIME_HOSTNAME ADK_TARGET_ROOTFS ADK_RUNTIME_CONSOLE ADK_RUNTIME_GETTY ADK_RUNTIME_SHELL;do \ if [ "$$(grep ^$$i .config|md5sum)" != "$$(grep ^$$i .config.old|md5sum)" ];then \ touch .rebuild.base-files;\ rebuild=1;\ @@ -122,7 +121,7 @@ POSTCONFIG= -@\ make kernelclean;\ fi; \ if [ "$$(grep ^ADK_LINUX_ARM_WITH_THUMB .config|md5sum)" != "$$(grep ^ADK_LINUX_ARM_WITH_THUMB .config.old|md5sum)" ];then \ - echo "You should make cleantarget, after changing thumb mode";\ + echo "You should make cleandir, after changing thumb mode";\ fi; \ if [ $$rebuild -eq 1 ];then \ cp .config .config.old;\ @@ -140,27 +139,26 @@ include $(TOPDIR)/rules.mk all: world -${TOPDIR}/package/Depends.mk: ${TOPDIR}/.config $(wildcard ${TOPDIR}/package/*/Makefile) - $(STAGING_HOST_DIR)/usr/bin/depmaker > ${TOPDIR}/package/Depends.mk +${TOPDIR}/package/Depends.mk: ${TOPDIR}/.config $(wildcard ${TOPDIR}/package/*/Makefile) $(TOPDIR)/adk/tools/depmaker + $(TOPDIR)/adk/tools/depmaker > ${TOPDIR}/package/Depends.mk .NOTPARALLEL: -.PHONY: all world clean cleantarget cleandir cleantoolchain distclean image_clean +.PHONY: all world clean cleandir cleantoolchain distclean image_clean world: - mkdir -p $(DL_DIR) $(BUILD_DIR) $(TARGET_DIR) $(FW_DIR) \ - $(PACKAGE_DIR) $(TOOLS_BUILD_DIR) $(STAGING_HOST_DIR)/usr/bin \ - $(TOOLCHAIN_BUILD_DIR) $(STAGING_PKG_DIR)/stamps + mkdir -p $(DL_DIR) $(HOST_BUILD_DIR) $(BUILD_DIR) $(TARGET_DIR) $(FW_DIR) \ + $(STAGING_HOST_DIR) $(TOOLCHAIN_BUILD_DIR) $(STAGING_PKG_DIR)/stamps ${BASH} ${TOPDIR}/scripts/scan-pkgs.sh ${BASH} ${TOPDIR}/scripts/update-sys ${BASH} ${TOPDIR}/scripts/update-pkg ifeq ($(ADK_TOOLCHAIN),y) ifeq ($(ADK_TOOLCHAIN_ONLY),y) - $(MAKE) -f mk/build.mk tools/install toolchain/fixup package/compile + $(MAKE) -f mk/build.mk package/hostcompile toolchain/fixup package/compile else - $(MAKE) -f mk/build.mk tools/install toolchain/fixup package/compile root_clean package/install + $(MAKE) -f mk/build.mk package/hostcompile toolchain/fixup package/compile root_clean package/install endif else - $(MAKE) -f mk/build.mk tools/install toolchain/fixup target/config-prepare target/compile package/compile root_clean package/install target/install package_index + $(MAKE) -f mk/build.mk package/hostcompile toolchain/fixup target/config-prepare target/compile package/compile root_clean package/install target/install package_index endif package_index: @@ -171,7 +169,11 @@ endif ${STAGING_TARGET_DIR} ${STAGING_TARGET_DIR}/etc ${STAGING_HOST_DIR}: mkdir -p ${STAGING_TARGET_DIR}/{bin,etc,lib,usr/bin,usr/include,usr/lib/pkgconfig} \ - ${STAGING_HOST_DIR}/{bin,lib,usr/bin,usr/lib,usr/include} + ${STAGING_HOST_DIR}/{usr/bin,usr/lib,usr/include} + for i in lib64 lib32 libx32;do \ + cd ${STAGING_TARGET_DIR}/; ln -sf lib $$i; \ + cd ${STAGING_TARGET_DIR}/usr; ln -sf lib $$i; \ + done ${STAGING_TARGET_DIR}/etc/ipkg.conf: ${STAGING_TARGET_DIR}/etc ifeq ($(ADK_TARGET_PACKAGE_IPKG),y) @@ -188,9 +190,6 @@ target/%: toolchain/%: ${STAGING_TARGET_DIR} $(MAKE) -C toolchain $(patsubst toolchain/%,%,$@) -tools/%: - $(MAKE) -C tools $(patsubst tools/%,%,$@) - image: $(MAKE) -C target image @@ -215,16 +214,11 @@ switch: fi \ fi -ifeq (${ADK_TARGET_KERNEL64},y) -KERNEL_CFG:=kernel64.config -else -KERNEL_CFG:=kernel.config -endif - kernelconfig: - cp $(TOPDIR)/target/$(ADK_TARGET_ARCH)/${KERNEL_CFG} $(BUILD_DIR)/linux/.config - ${KERNEL_MAKE_ENV} ${MAKE} ARCH=$(ARCH) ${KERNEL_MAKE_OPTS} -C $(BUILD_DIR)/linux menuconfig - cp $(BUILD_DIR)/linux/.config $(TOPDIR)/target/$(ADK_TARGET_ARCH)/${KERNEL_CFG} + ${KERNEL_MAKE_ENV} ${MAKE} \ + ARCH=$(ARCH) \ + ${KERNEL_MAKE_OPTS} \ + -C $(BUILD_DIR)/linux menuconfig # create a new package from package/.template newpackage: @@ -268,7 +262,7 @@ cleandir: @$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE) rm -rf $(BUILD_DIR_PFX) $(FW_DIR_PFX) $(TARGET_DIR_PFX) \ ${TOPDIR}/package/pkglist.d ${TOPDIR}/package/pkgconfigs.d - rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_HOST_DIR_PFX) $(TOOLS_BUILD_DIR) + rm -rf $(TOOLCHAIN_DIR_PFX) $(STAGING_HOST_DIR_PFX) rm -rf $(STAGING_TARGET_DIR_PFX) $(STAGING_PKG_DIR_PFX) rm -f .menu .tmpconfig.h .rebuild* ${TOPDIR}/package/Depends.mk ${TOPDIR}/prereq.mk @@ -276,23 +270,16 @@ cleantoolchain: @$(TRACE) cleantoolchain @rm -rf $(BUILD_DIR_PFX) $(TARGET_DIR_PFX) \ ${TOPDIR}/package/pkglist.d ${TOPDIR}/package/pkgconfigs.d - @rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_HOST_DIR_PFX) $(TOOLS_BUILD_DIR) + @rm -rf $(TOOLCHAIN_DIR_PFX) $(STAGING_HOST_DIR_PFX) @rm -rf $(STAGING_TARGET_DIR_PFX) $(STAGING_PKG_DIR_PFX) @rm -f .menu .tmpconfig.h .rebuild* ${TOPDIR}/package/Depends.mk -cleantarget: - @$(TRACE) cleantarget - @$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE) - rm -rf $(BUILD_DIR) $(FW_DIR) $(TARGET_DIR) - rm -rf $(TOOLCHAIN_BUILD_DIR) $(STAGING_HOST_DIR) $(STAGING_TARGET_DIR) $(STAGING_PKG_DIR) - rm -f .tmpconfig.h all.config .defconfig - distclean: @$(TRACE) distclean @$(MAKE) -C $(CONFIG) clean $(MAKE_TRACE) - @rm -rf $(BUILD_DIR_PFX) $(FW_DIR_PFX) $(TARGET_DIR_PFX) $(DISTDIR) \ + @rm -rf $(BUILD_DIR_PFX) $(FW_DIR_PFX) $(TARGET_DIR_PFX) $(DL_DIR) \ ${TOPDIR}/package/pkglist.d ${TOPDIR}/package/pkgconfigs.d - @rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_HOST_DIR_PFX) $(TOOLS_BUILD_DIR) + @rm -rf $(TOOLCHAIN_DIR_PFX) $(STAGING_HOST_DIR_PFX) @rm -rf $(STAGING_TARGET_DIR_PFX) $(STAGING_PKG_DIR_PFX) @rm -f .adkinit .config* .defconfig .tmpconfig.h all.config ${TOPDIR}/prereq.mk \ .menu ${TOPDIR}/package/Depends.mk .ADK_HAVE_DOT_CONFIG .rebuild.* @@ -370,12 +357,6 @@ endif |sed -e "s#^config \(.*\)#\1=y#" \ >> $(TOPDIR)/.defconfig; \ fi - @if [ ! -z "$(PKG)" ];then \ - grep "^config" target/config/Config.in \ - |grep -i "$(PKG)" \ - |sed -e "s#^config \(.*\)#\1=y#" \ - >> $(TOPDIR)/.defconfig; \ - fi @if [ ! -z "$(LIBC)" ];then \ grep "^config" target/config/Config.in \ |grep -i "$(LIBC)" \ @@ -434,12 +415,6 @@ endif |sed -e "s#^config \(.*\)#\1=y#" \ >> $(TOPDIR)/all.config; \ fi - @if [ ! -z "$(PKG)" ];then \ - grep "^config" target/config/Config.in \ - |grep -i "$(PKG)" \ - |sed -e "s#^config \(.*\)#\1=y#" \ - >> $(TOPDIR)/all.config; \ - fi @if [ ! -z "$(LIBC)" ];then \ grep "^config" target/config/Config.in \ |grep -i "$(LIBC)" \ @@ -475,9 +450,9 @@ _mconfig2: ${CONFIG}/conf modconfig .menu distclean: @$(MAKE) -C $(CONFIG) clean - @rm -rf $(BUILD_DIR_PFX) $(FW_DIR_PFX) $(TARGET_DIR_PFX) $(DISTDIR) \ + @rm -rf $(BUILD_DIR_PFX) $(FW_DIR_PFX) $(TARGET_DIR_PFX) $(DL_DIR) \ ${TOPDIR}/package/pkglist.d ${TOPDIR}/package/pkgconfigs.d - @rm -rf $(TOOLCHAIN_BUILD_DIR_PFX) $(STAGING_TARGET_DIR_PFX) $(TOOLS_BUILD_DIR) + @rm -rf $(TOOLCHAIN_DIR_PFX) $(STAGING_TARGET_DIR_PFX) @rm -rf $(STAGING_HOST_DIR_PFX) $(STAGING_TARGET_DIR_PFX) $(STAGING_PKG_DIR_PFX) @rm -f .adkinit .config* .defconfig .tmpconfig.h all.config ${TOPDIR}/prereq.mk \ .menu .rebuild.* ${TOPDIR}/package/Depends.mk .ADK_HAVE_DOT_CONFIG @@ -487,7 +462,7 @@ endif # ! ifeq ($(strip $(ADK_HAVE_DOT_CONFIG)),y) # build all target architecture and libc combinations (toolchain only) bulktoolchain: - if [ -z "$(LIBC)" ];then \ + @if [ -z "$(LIBC)" ];then \ libc="glibc uclibc musl"; \ else \ libc="$(LIBC)"; \ @@ -497,43 +472,48 @@ bulktoolchain: mkdir -p ${TOPDIR}/firmware; \ ( \ echo === building $$arch $$libc toolchain-$$arch on $$(date); \ - tarch=$$(echo $$arch|sed -e "s#el##" -e "s#eb##" -e "s#mips64.*#mips#"); \ - if [ -f ${TOPDIR}/firmware/toolchain_$${arch}_$${libc}.tar.xz ];then exit;fi; \ + tarch=$$(echo $$arch|sed -e "s#sh4.*#sh#" -e "s#el##" -e "s#eb##" -e "s#mips64.*#mips#" -e "s#hf##" -e "s#x86_64.*#x86_64#" ); \ + carch=$$(echo $$arch|sed -e "s#hf##" -e "s#mips64n.*#mips64#" -e "s#mips64el.*#mips64el#" -e 's#x86$$#i686#' -e "s#x86_64.*#x86_64#" ); \ $(GMAKE) prereq && \ $(GMAKE) ARCH=$$tarch SYSTEM=toolchain-$$arch LIBC=$$libc defconfig; \ + tabi=$$(grep ^ADK_TARGET_ABI= .config|cut -d \" -f 2);\ + if [ $$arch = "armhf" ];then arch=arm; else arch=$$arch;fi; \ + if [ -z $$tabi ];then abi="";else abi=_$$tabi;fi; \ + if [ -f ${TOPDIR}/firmware/toolchain_$${carch}_$${libc}$${abi}.tar.xz ];then exit;fi; \ $(GMAKE) VERBOSE=1 all; if [ $$? -ne 0 ]; then touch .exit; break;fi; \ - tar -cvJf ${TOPDIR}/firmware/toolchain_$${arch}_$${libc}.tar.xz host_* target_$${arch}_$${libc}*; \ + tar -cvJf ${TOPDIR}/firmware/toolchain_$${carch}_$${libc}$${abi}.tar.xz toolchain_${GNU_HOST_NAME} target_$${carch}_$${libc}$${abi}; \ $(GMAKE) cleantoolchain; \ rm .config; \ - ) 2>&1 | tee $(TOPDIR)/firmware/toolchain_$${arch}_$${libc}_build.log; \ + ) 2>&1 | tee -a $(TOPDIR)/firmware/toolchain_build.log; \ if [ -f .exit ];then break;fi \ done <${TOPDIR}/target/tarch.lst ;\ if [ -f .exit ];then echo "Bulk build failed!"; rm .exit; exit 1;fi \ done test-framework: - if [ -z "$(LIBC)" ];then \ + @if [ -z "$(LIBC)" ];then \ libc="glibc uclibc musl"; \ else \ libc="$(LIBC)"; \ fi; \ for libc in $$libc;do \ ( \ - for arch in arm microblaze microblazeel mips mipsel mips64 mips64el ppc ppc64 sh4 sh4eb sparc sparc64 i686 x86_64;do \ - tarch=$$(echo $$arch|sed -e "s#el##" -e "s#eb##" -e "s#mips64.*#mips#" -e "s#i686#x86#" -e "s#sh4#sh#"); \ + mkdir -p $(TOPDIR)/firmware/; \ + for arch in $$(grep -v m68k target/tarch.lst|xargs);do \ + tarch=$$(echo $$arch|sed -e "s#el##" -e "s#eb##" -e "s#mips64.*#mips#" -e "s#i686#x86#" -e "s#sh4#sh#" -e "s#hf##" -e "s#x86_64.*#x86_64#"); \ + arch=$$(echo $$arch|sed -e 's#x86$$#i686#'); \ echo === building qemu-$$arch for $$libc with $$tarch on $$(date); \ - $(GMAKE) prereq && \ - $(GMAKE) ARCH=$$tarch SYSTEM=qemu-$$arch LIBC=$$libc FS=archive COLLECTION=test defconfig; \ + $(GMAKE) ARCH=$$tarch SYSTEM=qemu-$$arch LIBC=$$libc FS=initramfsarchive COLLECTION=test defconfig; \ $(GMAKE) VERBOSE=1 all; if [ $$? -ne 0 ]; then touch .exit; exit 1;fi; \ tabi=$$(grep ^ADK_TARGET_ABI= .config|cut -d \" -f 2);\ if [ -z $$tabi ];then abi="";else abi=_$$tabi;fi; \ + qarch=$$(echo $$arch|sed -e "s#armhf#arm#" -e 's#mips64n.*$$#mips64#' -e 's#mips64eln.*$$#mips64el#' -e "s#x86_64.*#x86_64#"); \ + cp -a root_qemu_$${qarch}_$${libc}$${abi} root; \ + mkdir -p $(TOPDIR)/firmware/qemu/$$arch; \ + tar cJvf $(TOPDIR)/firmware/qemu/$$arch/root.tar.xz root; \ if [ -d root ];then rm -rf root;fi; \ - echo cp -a root_qemu_$${arch}_$${libc}$${abi} root; \ - cp -a root_qemu_$${arch}_$${libc}$${abi} root; \ - mkdir -p $(TOPDIR)/firmware/qemu/$$tarch; \ - tar cJvf $(TOPDIR)/firmware/qemu/$$tarch/root.tar.xz root; \ - cp $(TOPDIR)/firmware/qemu_$${arch}_$${libc}$${abi}/qemu-$${arch}-archive-kernel \ - $(TOPDIR)/firmware/qemu/$$tarch/kernel; \ + cp $(TOPDIR)/firmware/qemu_$${qarch}_$${libc}$${abi}/qemu-$${qarch}-initramfsarchive-kernel \ + $(TOPDIR)/firmware/qemu/$$arch/kernel; \ rm .config; \ done; \ ) 2>&1 | tee $(TOPDIR)/firmware/test-framework-build.log; \ @@ -543,14 +523,13 @@ test-framework: release: for libc in uclibc glibc musl;do \ - mkdir -p $(TOPDIR)/firmware/$(SYSTEM)_$(ARCH)_$$libc; \ ( \ echo === building $$libc on $$(date); \ $(GMAKE) prereq && \ $(GMAKE) ARCH=$(ARCH) SYSTEM=$(SYSTEM) LIBC=$$libc FS=archive allmodconfig; \ $(GMAKE) VERBOSE=1 all; if [ $$? -ne 0 ]; then touch .exit; exit 1;fi; \ rm .config; \ - ) 2>&1 | tee $(TOPDIR)/firmware/$(SYSTEM)_$(ARCH)_$$libc/build.log; \ + ) 2>&1 | tee $(TOPDIR)/firmware/release-build.log; \ if [ -f .exit ];then echo "Bulk build failed!"; break;fi \ done if [ -f .exit ];then rm .exit;exit 1;fi @@ -561,14 +540,14 @@ bulk: while read arch; do \ systems=$$(./scripts/getsystems $$arch|grep -v toolchain); \ for system in $$systems;do \ - mkdir -p $(TOPDIR)/firmware/$${system}_$${arch}_$$libc; \ + mkdir -p $(TOPDIR)/firmware; \ ( \ echo === building $$arch $$system $$libc on $$(date); \ $(GMAKE) prereq && \ $(GMAKE) ARCH=$$arch SYSTEM=$$system LIBC=$$libc FS=archive defconfig; \ $(GMAKE) VERBOSE=1 all; if [ $$? -ne 0 ]; then touch .exit; exit 1;fi; \ rm .config; \ - ) 2>&1 | tee $(TOPDIR)/firmware/$${system}_$${arch}_$$libc/build.log; \ + ) 2>&1 | tee $(TOPDIR)/firmware/bulkbuild.log; \ if [ -f .exit ]; then break;fi \ done; \ if [ -f .exit ]; then break;fi \ @@ -581,14 +560,14 @@ bulkall: while read arch; do \ systems=$$(./scripts/getsystems $$arch| grep -v toolchain); \ for system in $$systems;do \ - mkdir -p $(TOPDIR)/firmware/$${system}_$${arch}_$$libc; \ + mkdir -p $(TOPDIR)/firmware; \ ( \ echo === building $$arch $$system $$libc on $$(date); \ $(GMAKE) prereq && \ $(GMAKE) ARCH=$$arch SYSTEM=$$system LIBC=$$libc FS=archive allconfig; \ $(GMAKE) VERBOSE=1 all; if [ $$? -ne 0 ]; then touch .exit; exit 1;fi; \ rm .config; \ - ) 2>&1 | tee $(TOPDIR)/firmware/$${system}_$${arch}_$$libc/build.log; \ + ) 2>&1 | tee $(TOPDIR)/firmware/bulkallbuild.log; \ if [ -f .exit ]; then break;fi \ done; \ if [ -f .exit ]; then break;fi \ @@ -601,15 +580,15 @@ bulkallmod: while read arch; do \ systems=$$(./scripts/getsystems $$arch| grep -v toolchain); \ for system in $$systems;do \ - mkdir -p $(TOPDIR)/firmware/$${system}_$${arch}_$$libc; \ + mkdir -p $(TOPDIR)/firmware; \ ( \ echo === building $$arch $$system $$libc on $$(date); \ $(GMAKE) prereq && \ $(GMAKE) ARCH=$$arch SYSTEM=$$system LIBC=$$libc FS=archive allmodconfig; \ $(GMAKE) VERBOSE=1 all; if [ $$? -ne 0 ]; then echo $$system-$$libc >.exit; exit 1;fi; \ - $(GMAKE) cleantarget; \ + $(GMAKE) clean; \ rm .config; \ - ) 2>&1 | tee $(TOPDIR)/firmware/$${system}_$${arch}_$$libc/build.log; \ + ) 2>&1 | tee $(TOPDIR)/firmware/bulkallmodbuild.log; \ if [ -f .exit ]; then break;fi \ done; \ if [ -f .exit ]; then break;fi \ @@ -617,45 +596,42 @@ bulkallmod: if [ -f .exit ];then echo "Bulk build failed!"; cat .exit;rm .exit; exit 1;fi \ done -$(TOPDIR)/host_$(GNU_HOST_NAME)/usr/bin/pkgmaker: $(TOPDIR)/tools/adk/pkgmaker.c $(TOPDIR)/tools/adk/sortfile.c $(TOPDIR)/tools/adk/strmap.c - @mkdir -p host_$(GNU_HOST_NAME)/usr/bin - @$(CC_FOR_BUILD) -g -o $@ tools/adk/pkgmaker.c tools/adk/sortfile.c tools/adk/strmap.c +$(TOPDIR)/adk/tools/pkgmaker: $(TOPDIR)/adk/tools/pkgmaker.c $(TOPDIR)/adk/tools/sortfile.c $(TOPDIR)/adk/tools/strmap.c + @$(CC_FOR_BUILD) -g -o $@ adk/tools/pkgmaker.c adk/tools/sortfile.c adk/tools/strmap.c -$(TOPDIR)/host_$(GNU_HOST_NAME)/usr/bin/pkgrebuild: $(TOPDIR)/tools/adk/pkgrebuild.c $(TOPDIR)/tools/adk/strmap.c - @$(CC_FOR_BUILD) -g -o $@ tools/adk/pkgrebuild.c tools/adk/strmap.c +$(TOPDIR)/adk/tools/pkgrebuild: $(TOPDIR)/adk/tools/pkgrebuild.c $(TOPDIR)/adk/tools/strmap.c + @$(CC_FOR_BUILD) -g -o $@ adk/tools/pkgrebuild.c adk/tools/strmap.c -package/Config.in.auto menu .menu: $(wildcard ${TOPDIR}/package/*/Makefile) $(TOPDIR)/host_$(GNU_HOST_NAME)/usr/bin/pkgmaker $(TOPDIR)/host_$(GNU_HOST_NAME)/usr/bin/pkgrebuild +package/Config.in.auto menu .menu: $(wildcard ${TOPDIR}/package/*/Makefile) $(TOPDIR)/adk/tools/pkgmaker $(TOPDIR)/adk/tools/pkgrebuild @echo "Generating menu structure ..." - @$(TOPDIR)/host_$(GNU_HOST_NAME)/usr/bin/pkgmaker + @$(TOPDIR)/adk/tools/pkgmaker @:>.menu -$(TOPDIR)/host_$(GNU_HOST_NAME)/usr/bin/depmaker: $(TOPDIR)/tools/adk/depmaker.c - @mkdir -p host_$(GNU_HOST_NAME)/usr/bin - $(CC_FOR_BUILD) -g -o $@ $(TOPDIR)/tools/adk/depmaker.c +$(TOPDIR)/adk/tools/depmaker: $(TOPDIR)/adk/tools/depmaker.c + $(CC_FOR_BUILD) -g -o $@ $(TOPDIR)/adk/tools/depmaker.c -dep: $(TOPDIR)/host_$(GNU_HOST_NAME)/usr/bin/depmaker +dep: $(TOPDIR)/adk/tools/depmaker @echo "Generating dependencies ..." - @$(TOPDIR)/host_$(GNU_HOST_NAME)/usr/bin/depmaker > ${TOPDIR}/package/Depends.mk + @$(TOPDIR)/adk/tools/depmaker > ${TOPDIR}/package/Depends.mk .PHONY: menu dep include $(TOPDIR)/toolchain/gcc/Makefile.inc check-dejagnu: - @-rm tests/adk.exp tests/master.exp >/dev/null 2>&1 - @sed -e "s#@ADK_TARGET_IP@#$(ADK_TARGET_IP)#" tests/adk.exp.in > \ - tests/adk.exp.in.tmp - @sed -e "s#@ADK_TARGET_PORT@#$(ADK_TARGET_PORT)#" tests/adk.exp.in.tmp > \ - tests/adk.exp - @sed -e "s#@TOPDIR@#$(TOPDIR)#" tests/master.exp.in > \ - tests/master.exp + @-rm adk/tests/adk.exp adk/tests/master.exp >/dev/null 2>&1 + @sed -e "s#@ADK_TARGET_IP@#$(ADK_TARGET_IP)#" \ + -e "s#@ADK_TARGET_PORT@#$(ADK_TARGET_PORT)#" \ + adk/tests/adk.exp.in > adk/tests/adk.exp + @sed -e "s#@TOPDIR@#$(TOPDIR)#" adk/tests/master.exp.in > \ + adk/tests/master.exp check-gcc: check-dejagnu - env DEJAGNU=$(TOPDIR)/tests/master.exp \ + env DEJAGNU=$(TOPDIR)/adk/tests/master.exp \ $(MAKE) -C $(TOOLCHAIN_BUILD_DIR)/w-$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE)/$(PKG_NAME)-$(PKG_VERSION)-final/gcc check-gcc check-g++: check-dejagnu - env DEJAGNU=$(TOPDIR)/tests/master.exp \ + env DEJAGNU=$(TOPDIR)/adk/tests/master.exp \ $(MAKE) -C $(TOOLCHAIN_BUILD_DIR)/w-$(PKG_NAME)-$(PKG_VERSION)-$(PKG_RELEASE)/$(PKG_NAME)-$(PKG_VERSION)-final/gcc check-g++ check: check-gcc check-g++ diff --git a/mk/buildhlp.mk b/mk/buildhlp.mk index 701f0f4a2..5ce3ca4a0 100644 --- a/mk/buildhlp.mk +++ b/mk/buildhlp.mk @@ -81,7 +81,7 @@ ${WRKDIST}/.prepared: ${WRKDIST}/.extract_done touch $@ endif -update-patches: +update-patches host-update-patches: @test ! -d ${WRKDIR}.orig || rm -rf ${WRKDIR}.orig @test ! -d ${WRKDIR}.orig ifeq ($(strip ${_IN_PACKAGE})$(strip ${_IN_CVTC}),1) @@ -115,4 +115,4 @@ endif rm -rf ${WRKDIR}.orig; \ [[ $$toedit != FAIL ]] -.PHONY: update-patches +.PHONY: update-patches host-update-patches diff --git a/mk/fetch.mk b/mk/fetch.mk index 6382571b3..ee24f0b60 100644 --- a/mk/fetch.mk +++ b/mk/fetch.mk @@ -26,7 +26,6 @@ refetch: -rm -f ${FULLDISTFILES} ${MAKE} fetch -# XXX for now _CHECKSUM_COOKIE?= ${WRKDIR}/.checksum_done checksum: ${_CHECKSUM_COOKIE} ifeq ($(strip ${NO_CHECKSUM}),) diff --git a/mk/host-bottom.mk b/mk/host-bottom.mk index 23d5652ba..8ef4a868e 100644 --- a/mk/host-bottom.mk +++ b/mk/host-bottom.mk @@ -3,6 +3,7 @@ host-extract: ${_HOST_PATCH_COOKIE} +hostpre-configure: host-configure: ${_HOST_CONFIGURE_COOKIE}: ${_HOST_PATCH_COOKIE} @mkdir -p ${WRKBUILD} @@ -25,6 +26,7 @@ endif ${CP} ${SCRIPT_DIR}/config.guess $$i; \ fi; \ done; + @${MAKE} hostpre-configure $(MAKE_TRACE) ifneq (${HOST_STYLE},manual) ifeq ($(strip ${HOST_STYLE}),) cd ${WRKBUILD}; rm -f config.{cache,status}; \ @@ -75,29 +77,23 @@ endif touch $@ hostpost-install: -hpkg-install: ${ALL_HOSTINST} -host-install: +host-install: ${ALL_HOSTINST} ${_HOST_FAKE_COOKIE}: ${_HOST_BUILD_COOKIE} @$(CMD_TRACE) "host installing... " + @mkdir -p ${HOST_WRKINST} ifneq (${HOST_STYLE},manual) ifeq ($(strip ${HOST_STYLE}),) cd ${WRKBUILD} && env ${HOST_MAKE_ENV} ${MAKE} -f ${MAKE_FILE} \ DESTDIR='${HOST_WRKINST}' ${HOST_FAKE_FLAGS} ${HOST_INSTALL_TARGET} $(MAKE_TRACE) - env ${HOST_MAKE_ENV} ${MAKE} hpkg-install $(MAKE_TRACE) + env ${HOST_MAKE_ENV} ${MAKE} host-install $(MAKE_TRACE) else cd ${WRKBUILD} && env ${HOST_MAKE_ENV} ${MAKE} -f ${MAKE_FILE} \ DESTDIR='' ${HOST_FAKE_FLAGS} ${HOST_INSTALL_TARGET} $(MAKE_TRACE) endif else - env ${HOST_MAKE_ENV} ${MAKE} hpkg-install $(MAKE_TRACE) + env ${HOST_MAKE_ENV} ${MAKE} host-install $(MAKE_TRACE) endif env ${HOST_MAKE_ENV} ${MAKE} hostpost-install $(MAKE_TRACE) - rm -rf ${WRKBUILD} ${WRKDIST} ${WRKSRC} - exec ${MAKE} host-extract $(MAKE_TRACE) - mkdir -p ${HOST_WRKINST} - # avoid rebuild - @touch ${_HOST_CONFIGURE_COOKIE} - @touch ${_HOST_BUILD_COOKIE} @touch $@ ${_HOST_COOKIE}: @@ -107,3 +103,7 @@ ifeq ($(HOST_LINUX_ONLY),) hostpackage: ${ALL_HOSTDIRS} @touch ${_HOST_COOKIE} endif + +hostclean: + @$(CMD_TRACE) "cleaning... " + rm -rf ${WRKDIR} ${STAGING_PKG_DIR}/stamps/${PKG_NAME}*-host diff --git a/mk/host.mk b/mk/host.mk index aa88bab44..88f8d2e01 100644 --- a/mk/host.mk +++ b/mk/host.mk @@ -1,10 +1,16 @@ # This file is part of the OpenADK project. OpenADK is copyrighted # material, please see the LICENCE file in the top-level directory. +# This is where all package operation is done in +ifneq (,$(findstring host,$(MAKECMDGOALS))) +WRKDIR?= ${HOST_BUILD_DIR}/w-${PKG_NAME}-${PKG_VERSION}-${PKG_RELEASE}-host +endif + HOST_CONFIGURE_ENV+= AUTOM4TE=${STAGING_HOST_DIR}/usr/bin/autom4te \ CONFIG_SHELL='$(strip ${SHELL})' \ PKG_CONFIG_LIBDIR='${STAGING_HOST_DIR}/usr/lib/pkgconfig' \ PATH='${HOST_PATH}' \ + CC='$(strip ${CC_FOR_BUILD})' \ CFLAGS='$(strip ${CFLAGS_FOR_BUILD})' \ CXXFLAGS='$(strip ${CXXFLAGS_FOR_BUILD})' \ CPPFLAGS='$(strip ${CPPFLAGS_FOR_BUILD})' \ @@ -23,6 +29,7 @@ HOST_INSTALL_TARGET?= install HOST_MAKE_ENV+= PATH='${HOST_PATH}' \ PKG_CONFIG_LIBDIR='${STAGING_HOST_DIR}/usr/lib/pkgconfig' \ + CC='$(strip ${CC_FOR_BUILD})' \ CFLAGS='$(strip ${CFLAGS_FOR_BUILD})' \ CXXFLAGS='$(strip ${CXXFLAGS_FOR_BUILD})' \ CPPFLAGS='$(strip ${CPPFLAGS_FOR_BUILD})' \ @@ -30,7 +37,7 @@ HOST_MAKE_ENV+= PATH='${HOST_PATH}' \ HOST_MAKE_FLAGS+= ${HOST_XAKE_FLAGS} V=1 HOST_FAKE_FLAGS+= ${HOST_XAKE_FLAGS} -HOST_WRKINST= ${WRKDIR}/host +HOST_WRKINST= ${WRKDIR}/fake _HOST_EXTRACT_COOKIE= ${WRKDIST}/.extract_done _HOST_PATCH_COOKIE= ${WRKDIST}/.prepared @@ -54,7 +61,7 @@ hostfake: ${_HOST_FAKE_COOKIE} define HOST_template ALL_PKGOPTS+= $(1) PKGNAME_$(1)= $(2) -HOSTDIR_$(1)= $(WRKDIR)/host +HOSTDIR_$(1)= $(WRKDIR)/fake ALL_HOSTDIRS+= $${HOSTDIR_$(1)} ALL_HOSTINST+= $(2)-hostinstall @@ -63,4 +70,4 @@ $$(HOSTDIR_$(1)): ${_HOST_PATCH_COOKIE} ${_HOST_FAKE_COOKIE} endef .PHONY: all hostextract hostpatch hostconfigure \ - hostbuild hostpackage hostfake + hostbuild hostpackage hostfake hostclean diff --git a/mk/image.mk b/mk/image.mk index 6721549b5..ee2f991e0 100644 --- a/mk/image.mk +++ b/mk/image.mk @@ -34,6 +34,9 @@ imageprepare: image-prepare-post extra-install # if an extra directory exist in TOPDIR, copy all content over the # root directory, do the same if make extra=/dir/to/extra is used extra-install: + @-if [ -h ${TARGET_DIR}/etc/resolv.conf -a -f $(TOPDIR)/extra/etc/resolv.conf ];then \ + rm ${TARGET_DIR}/etc/resolv.conf;\ + fi @if [ -d $(TOPDIR)/extra ];then $(CP) $(TOPDIR)/extra/* ${TARGET_DIR};fi @if [ ! -z $(extra) ];then $(CP) $(extra)/* ${TARGET_DIR};fi @@ -51,22 +54,24 @@ image-prepare-post: -rm -f ${TARGET_DIR}/bin/sh ln -sf ${BINSH} ${TARGET_DIR}/bin/sh ifeq ($(ADK_LINUX_X86_64),y) +ifeq ($(ADK_TARGET_ABI_32),) # fixup lib dirs mv ${TARGET_DIR}/lib/* ${TARGET_DIR}/${ADK_TARGET_LIBC_PATH} rm -rf ${TARGET_DIR}/lib/ ln -sf /${ADK_TARGET_LIBC_PATH} ${TARGET_DIR}/lib -mkdir ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} 2>/dev/null - mv ${TARGET_DIR}/usr/lib/* ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} + -mv ${TARGET_DIR}/usr/lib/* ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} rm -rf ${TARGET_DIR}/usr/lib/ (cd ${TARGET_DIR}/usr ; ln -sf ${ADK_TARGET_LIBC_PATH} lib) endif +endif ifeq ($(ADK_LINUX_PPC64),y) # fixup lib dirs mv ${TARGET_DIR}/lib/* ${TARGET_DIR}/${ADK_TARGET_LIBC_PATH} rm -rf ${TARGET_DIR}/lib/ ln -sf /${ADK_TARGET_LIBC_PATH} ${TARGET_DIR}/lib -mkdir ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} 2>/dev/null - mv ${TARGET_DIR}/usr/lib/* ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} + -mv ${TARGET_DIR}/usr/lib/* ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} rm -rf ${TARGET_DIR}/usr/lib/ (cd ${TARGET_DIR}/usr ; ln -sf ${ADK_TARGET_LIBC_PATH} lib) endif @@ -76,7 +81,7 @@ ifeq ($(ADK_LINUX_SPARC64),y) rm -rf ${TARGET_DIR}/lib/ ln -sf /${ADK_TARGET_LIBC_PATH} ${TARGET_DIR}/lib -mkdir ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} 2>/dev/null - mv ${TARGET_DIR}/usr/lib/* ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} + -mv ${TARGET_DIR}/usr/lib/* ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} rm -rf ${TARGET_DIR}/usr/lib/ (cd ${TARGET_DIR}/usr ; ln -sf ${ADK_TARGET_LIBC_PATH} lib) endif @@ -86,7 +91,7 @@ ifeq ($(ADK_TARGET_ABI_N32),y) rm -rf ${TARGET_DIR}/lib/ ln -sf /${ADK_TARGET_LIBC_PATH} ${TARGET_DIR}/lib -mkdir ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} 2>/dev/null - mv ${TARGET_DIR}/usr/lib/* ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} + -mv ${TARGET_DIR}/usr/lib/* ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} rm -rf ${TARGET_DIR}/usr/lib/ (cd ${TARGET_DIR}/usr ; ln -sf ${ADK_TARGET_LIBC_PATH} lib) endif @@ -96,7 +101,7 @@ ifeq ($(ADK_TARGET_ABI_N64),y) rm -rf ${TARGET_DIR}/lib/ ln -sf /${ADK_TARGET_LIBC_PATH} ${TARGET_DIR}/lib -mkdir ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} 2>/dev/null - mv ${TARGET_DIR}/usr/lib/* ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} + -mv ${TARGET_DIR}/usr/lib/* ${TARGET_DIR}/usr/${ADK_TARGET_LIBC_PATH} rm -rf ${TARGET_DIR}/usr/lib/ (cd ${TARGET_DIR}/usr ; ln -sf ${ADK_TARGET_LIBC_PATH} lib) endif @@ -122,7 +127,7 @@ ROOTFSSQUASHFS= ${ADK_TARGET_SYSTEM}-$(CPU_ARCH)-${ADK_TARGET_LIBC}-${ADK_TARGE ROOTFSJFFS2= ${ADK_TARGET_SYSTEM}-$(CPU_ARCH)-${ADK_TARGET_LIBC}-jffs2.img ROOTFSTARBALL= ${ADK_TARGET_SYSTEM}-$(CPU_ARCH)-${ADK_TARGET_LIBC}-${ADK_TARGET_FS}+kernel.tar.gz ROOTFSUSERTARBALL= ${ADK_TARGET_SYSTEM}-$(CPU_ARCH)-${ADK_TARGET_LIBC}-${ADK_TARGET_FS}.tar.gz -ROOTFSISO= ${ADK_TARGET_SYSTEM}-$(CPU_ARCH)-${ADK_TARGET_LIBC}-${ADK_TARGET_FS}.iso +ROOTFSISO= ${ADK_TARGET_SYSTEM}-$(CPU_ARCH)-${ADK_TARGET_LIBC}.iso else TARGET_KERNEL= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_FS}-kernel INITRAMFS= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_LIBC}-${ADK_TARGET_FS} @@ -130,7 +135,7 @@ ROOTFSSQUASHFS= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_LIBC}-${ADK_TARGET_FS}.img ROOTFSJFFS2= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_LIBC}-jffs2.img ROOTFSTARBALL= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_LIBC}-${ADK_TARGET_FS}+kernel.tar.gz ROOTFSUSERTARBALL= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_LIBC}-${ADK_TARGET_FS}.tar.gz -ROOTFSISO= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_LIBC}-${ADK_TARGET_FS}.iso +ROOTFSISO= ${ADK_TARGET_SYSTEM}-${ADK_TARGET_LIBC}.iso endif ${FW_DIR}/${ROOTFSTARBALL}: ${TARGET_DIR} kernel-package @@ -144,18 +149,8 @@ ${FW_DIR}/${ROOTFSUSERTARBALL}: ${TARGET_DIR} ${STAGING_HOST_DIR}/usr/bin/cpio -o -Hustar -P | gzip -n9 >$@ ${STAGING_TARGET_DIR}/${INITRAMFS}_list: ${TARGET_DIR} - $(BASH) ${LINUX_DIR}/scripts/gen_initramfs_list.sh -u squash -g squash \ + env PATH='${HOST_PATH}' $(BASH) ${LINUX_DIR}/scripts/gen_initramfs_list.sh -u squash -g squash \ ${TARGET_DIR}/ >$@ - ( \ - echo "nod /dev/console 0644 0 0 c 5 1"; \ - echo "nod /dev/tty 0644 0 0 c 5 0"; \ - for i in 0 1 2 3 4; do \ - echo "nod /dev/tty$$i 0644 0 0 c 4 $$$$i"; \ - done; \ - echo "nod /dev/systty 0644 0 0 c 4 0"; \ - echo "nod /dev/null 0644 0 0 c 1 3"; \ - echo "nod /dev/ram 0655 0 0 b 1 1"; \ - ) >>$@ ${FW_DIR}/${INITRAMFS}: ${STAGING_TARGET_DIR}/${INITRAMFS}_list ${LINUX_DIR}/usr/gen_init_cpio ${STAGING_TARGET_DIR}/${INITRAMFS}_list | \ @@ -167,11 +162,11 @@ ${BUILD_DIR}/root.squashfs: ${TARGET_DIR} -nopad -noappend -root-owned $(MAKE_TRACE) ${FW_DIR}/${ROOTFSJFFS2}: ${TARGET_DIR} - ${STAGING_HOST_DIR}/usr/bin/mkfs.jffs2 $(ADK_JFFS2_OPTS) -q -r ${TARGET_DIR} \ + ${STAGING_HOST_DIR}/usr/bin/mkfs.jffs2 $(ADK_JFFS2_OPTS) -q -X zlib -r ${TARGET_DIR} \ --pad=$(ADK_TARGET_MTD_SIZE) -o ${FW_DIR}/${ROOTFSJFFS2} $(MAKE_TRACE) createinitramfs: ${STAGING_TARGET_DIR}/${INITRAMFS}_list - ${SED} 's/.*CONFIG_\(RD_\|XZ_\|BLK_DEV_INITRD\|INITRAMFS_\).*//' \ + ${SED} 's/.*CONFIG_\(RD_\|BLK_DEV_INITRD\|INITRAMFS_\).*//' \ ${LINUX_DIR}/.config ( \ echo "CONFIG_BLK_DEV_INITRD=y"; \ @@ -234,14 +229,14 @@ ifeq ($(ADK_KERNEL_COMP_BZIP2),y) echo "CONFIG_INITRAMFS_COMPRESSION_BZIP2=y" >> ${LINUX_DIR}/.config endif @-rm $(LINUX_DIR)/usr/initramfs_data.cpio* 2>/dev/null - $(MAKE) -C $(LINUX_DIR) V=1 CROSS_COMPILE="$(TARGET_CROSS)" \ - ARCH=$(ARCH) CC="$(TARGET_CC)" -j${ADK_MAKE_JOBS} $(ADK_TARGET_KERNEL) $(MAKE_TRACE) + env $(KERNEL_MAKE_ENV) $(MAKE) -C $(LINUX_DIR) $(KERNEL_MAKE_OPTS) \ + -j${ADK_MAKE_JOBS} $(ADK_TARGET_KERNEL) $(MAKE_TRACE) ${FW_DIR}/${ROOTFSISO}: ${TARGET_DIR} kernel-package mkdir -p ${TARGET_DIR}/boot/syslinux cp ${STAGING_HOST_DIR}/usr/share/syslinux/{isolinux.bin,ldlinux.c32} \ ${TARGET_DIR}/boot/syslinux - echo 'DEFAULT /boot/kernel root=/dev/sr0 init=/init' > \ + echo 'DEFAULT /boot/kernel root=/dev/sr0' > \ ${TARGET_DIR}/boot/syslinux/isolinux.cfg ${STAGING_HOST_DIR}/usr/bin/mkisofs -R -uid 0 -gid 0 -o $@ \ -b boot/syslinux/isolinux.bin \ diff --git a/mk/kernel-build.mk b/mk/kernel-build.mk index f95796950..448c133c3 100644 --- a/mk/kernel-build.mk +++ b/mk/kernel-build.mk @@ -37,28 +37,24 @@ $(LINUX_DIR)/.prepared: $(TOOLCHAIN_BUILD_DIR)/w-$(PKG_NAME)-$(PKG_VERSION)-$(PK $(LINUX_DIR)/.config: $(LINUX_DIR)/.prepared $(BUILD_DIR)/.kernelconfig $(TOPDIR)/mk/modules.mk $(TRACE) target/$(ADK_TARGET_ARCH)-kernel-configure -for f in $(TARGETS);do if [ -f $$f ];then rm $$f;fi;done -ifeq ($(ADK_USE_KERNEL_MINICONFIG),y) $(CP) $(BUILD_DIR)/.kernelconfig $(LINUX_DIR)/mini.config - ${KERNEL_MAKE_ENV} $(MAKE) ${KERNEL_MAKE_OPTS} KCONFIG_ALLCONFIG=mini.config allnoconfig $(MAKE_TRACE) -else - $(CP) $(BUILD_DIR)/.kernelconfig $(LINUX_DIR)/.config - echo N | ${KERNEL_MAKE_ENV} $(MAKE) ${KERNEL_MAKE_OPTS} oldconfig $(MAKE_TRACE) -endif + ${KERNEL_MAKE_ENV} $(MAKE) -C "${LINUX_DIR}" ${KERNEL_MAKE_OPTS} KCONFIG_ALLCONFIG=mini.config allnoconfig $(MAKE_TRACE) touch -c $(LINUX_DIR)/.config $(LINUX_DIR)/$(KERNEL_FILE): $(LINUX_DIR)/.config $(TRACE) target/$(ADK_TARGET_ARCH)-kernel-compile - ${KERNEL_MAKE_ENV} $(MAKE) ${KERNEL_MAKE_OPTS} -j${ADK_MAKE_JOBS} LOCALVERSION="" $(KERNEL_TARGET) modules $(MAKE_TRACE) + ${KERNEL_MAKE_ENV} $(MAKE) -C "${LINUX_DIR}" ${KERNEL_MAKE_OPTS} -j${ADK_MAKE_JOBS} LOCALVERSION="" $(KERNEL_TARGET) modules $(MAKE_TRACE) touch -c $(LINUX_DIR)/$(KERNEL_FILE) $(LINUX_BUILD_DIR)/modules: $(LINUX_DIR)/$(KERNEL_FILE) $(TRACE) target/$(ADK_TARGET_ARCH)-kernel-modules-install rm -rf $(LINUX_BUILD_DIR)/modules - ${KERNEL_MAKE_ENV} $(MAKE) ${KERNEL_MAKE_OPTS} DEPMOD=true \ + ${KERNEL_MAKE_ENV} $(MAKE) -C "${LINUX_DIR}" ${KERNEL_MAKE_OPTS} DEPMOD=true \ INSTALL_MOD_PATH=$(LINUX_BUILD_DIR)/modules \ LOCALVERSION="" \ modules_install $(MAKE_TRACE) $(TRACE) target/$(ADK_TARGET_ARCH)-create-packages + @mkdir -p ${PACKAGE_DIR} ifneq ($(strip $(TARGETS)),) $(MAKE) $(TARGETS) endif diff --git a/mk/kernel-vars.mk b/mk/kernel-vars.mk index 3285e891d..7d8de54e3 100644 --- a/mk/kernel-vars.mk +++ b/mk/kernel-vars.mk @@ -1,27 +1,18 @@ # This file is part of the OpenADK project. OpenADK is copyrighted # material, please see the LICENCE file in the top-level directory. -KERNEL_MAKE_OPTS:= -C "${LINUX_DIR}" V=1 \ - CROSS_COMPILE="$(TARGET_CROSS)" ARCH=$(ARCH) \ - CC="$(TARGET_CC)" HOSTCC="${CC_FOR_BUILD}" \ - HOSTCFLAGS='${CFLAGS_FOR_BUILD}' \ +KERNEL_MAKE_OPTS:= V=1 \ + ARCH=$(ARCH) \ + CROSS_COMPILE="$(TARGET_CROSS)" \ + CC="$(TARGET_CC)" \ + HOSTCC="${CC_FOR_BUILD}" \ CONFIG_SHELL='${SHELL}' -ifeq (${ADK_TARGET_BROADCOM_MODEL_LINKSYS_WRT54G},y) -ADK_KCPPFLAGS+= -DBCM47XX_OVERRIDE_FLASHSIZE=0x400000 \ - -DBCM47XX_OVERRIDE_NVRAMSIZE=0x10000 \ - -DBCM47XX_OVERRIDE_CFESIZE=0x40000 -endif -ifeq (${ADK_TARGET_BROADCOM_MODEL_LINKSYS_WRT54GS},y) -ADK_KCPPFLAGS+= -DBCM47XX_OVERRIDE_FLASHSIZE=0x800000 \ - -DBCM47XX_OVERRIDE_NVRAMSIZE=0x20000 \ - -DBCM47XX_OVERRIDE_CFESIZE=0x40000 -endif -ifeq (${ADK_TARGET_BROADCOM_MODEL_ASUS_WL500GP},y) -ADK_KCPPFLAGS+= -DBCM47XX_OVERRIDE_FLASHSIZE=0x800000 \ - -DBCM47XX_OVERRIDE_NVRAMSIZE=0x20000 \ - -DBCM47XX_OVERRIDE_CFESIZE=0x40000 +# regex for relocs needs pcre on Darwin +ifeq ($(ADK_HOST_DARWIN),y) +KERNEL_MAKE_OPTS+= HOSTCFLAGS='$(CPPFLAGS_FOR_BUILD) ${CFLAGS_FOR_BUILD}' HOSTLDFLAGS='-lpcreposix' +else +KERNEL_MAKE_OPTS+= HOSTCFLAGS='${CFLAGS_FOR_BUILD}' endif -KERNEL_MAKE_ENV+= KCPPFLAGS='${ADK_KCPPFLAGS}' \ - PATH="${STAGING_HOST_DIR}/usr/bin:$$PATH" +KERNEL_MAKE_ENV+= PATH="${STAGING_HOST_DIR}/usr/bin:$$PATH" diff --git a/mk/kernel-ver.mk b/mk/kernel-ver.mk index 6355af1d8..7cfb5998b 100644 --- a/mk/kernel-ver.mk +++ b/mk/kernel-ver.mk @@ -1,20 +1,20 @@ ifeq ($(ADK_KERNEL_VERSION_TOOLCHAIN),y) -KERNEL_VERSION:= 3.13.6 +KERNEL_VERSION:= 3.13.7 KERNEL_MOD_VERSION:= $(KERNEL_VERSION) KERNEL_RELEASE:= 1 -KERNEL_MD5SUM:= 445aa27da818617409982f42902a6e41 +KERNEL_MD5SUM:= 370adced5e5c1cb1d0d621c2dae2723f endif -ifeq ($(ADK_KERNEL_VERSION_3_13_6),y) -KERNEL_VERSION:= 3.13.6 +ifeq ($(ADK_KERNEL_VERSION_3_13_7),y) +KERNEL_VERSION:= 3.13.7 KERNEL_MOD_VERSION:= $(KERNEL_VERSION) KERNEL_RELEASE:= 1 -KERNEL_MD5SUM:= 445aa27da818617409982f42902a6e41 +KERNEL_MD5SUM:= 370adced5e5c1cb1d0d621c2dae2723f endif -ifeq ($(ADK_KERNEL_VERSION_3_12_13),y) -KERNEL_VERSION:= 3.12.13 +ifeq ($(ADK_KERNEL_VERSION_3_12_14),y) +KERNEL_VERSION:= 3.12.14 KERNEL_MOD_VERSION:= $(KERNEL_VERSION) KERNEL_RELEASE:= 1 -KERNEL_MD5SUM:= 345f5883cfb906dac4aef87e303d3a2d +KERNEL_MD5SUM:= 5575e68e287605ad63d3a1444e9b701d endif ifeq ($(ADK_KERNEL_VERSION_3_11_10),y) KERNEL_VERSION:= 3.11.10 @@ -22,15 +22,15 @@ KERNEL_MOD_VERSION:= $(KERNEL_VERSION) KERNEL_RELEASE:= 1 KERNEL_MD5SUM:= 59f352d3f4e2cdf6755f79e09fa09176 endif -ifeq ($(ADK_KERNEL_VERSION_3_10_33),y) -KERNEL_VERSION:= 3.10.33 +ifeq ($(ADK_KERNEL_VERSION_3_10_34),y) +KERNEL_VERSION:= 3.10.34 KERNEL_MOD_VERSION:= $(KERNEL_VERSION) KERNEL_RELEASE:= 1 -KERNEL_MD5SUM:= 01865f9c129f3c7eee51e25b3781a364 +KERNEL_MD5SUM:= 30991b495a3d75196d5608072d2e62e6 endif -ifeq ($(ADK_KERNEL_VERSION_3_4_82),y) -KERNEL_VERSION:= 3.4.82 +ifeq ($(ADK_KERNEL_VERSION_3_4_84),y) +KERNEL_VERSION:= 3.4.84 KERNEL_MOD_VERSION:= $(KERNEL_VERSION) KERNEL_RELEASE:= 1 -KERNEL_MD5SUM:= 9ee57efa65417a7a9ac931122c2b7377 +KERNEL_MD5SUM:= b99f88ca356b5003ce44e952baa3e6a3 endif diff --git a/mk/mirrors.mk b/mk/mirrors.mk index 4de2fdded..ab7349288 100644 --- a/mk/mirrors.mk +++ b/mk/mirrors.mk @@ -15,12 +15,19 @@ MASTER_SITE_KERNEL?= \ http://www.kernel.org/pub/linux/ \ MASTER_SITE_XORG?= \ - http://www.x.org/releases/X11R7.7/src/everything/ \ - http://ftp.gwdg.de/pub/x11/x.org/pub/X11R7.7/src/everything/ \ - http://xorg.freedesktop.org/releases/X11R7.7/src/everything/ \ + http://www.x.org/releases/individual/xserver/ \ + http://www.x.org/releases/individual/proto/ \ + http://www.x.org/releases/individual/app/ \ + http://www.x.org/releases/individual/xcb/ \ + http://www.x.org/releases/individual/lib/ \ + http://www.x.org/releases/individual/driver/ \ + http://www.x.org/releases/individual/util/ \ http://xorg.freedesktop.org/releases/individual/app/ \ http://xorg.freedesktop.org/releases/individual/lib/ \ http://xorg.freedesktop.org/releases/individual/driver/ \ + http://www.x.org/releases/X11R7.7/src/everything/ \ + http://ftp.gwdg.de/pub/x11/x.org/pub/X11R7.7/src/everything/ \ + http://xorg.freedesktop.org/releases/X11R7.7/src/everything/ \ MASTER_SITE_GNU?= \ http://ftp.gnu.org/gnu/ \ diff --git a/mk/modules.mk b/mk/modules.mk index 5fd2f6419..e8a0821de 100644 --- a/mk/modules.mk +++ b/mk/modules.mk @@ -1175,20 +1175,21 @@ $(eval $(call KMOD_template,SND,snd,\ $(MODULES_DIR)/kernel/sound/core/snd \ $(MODULES_DIR)/kernel/sound/core/snd-timer \ $(MODULES_DIR)/kernel/sound/core/snd-pcm \ +,40)) + +$(eval $(call KMOD_template,SND_PCM_DMAENGINE,snd-pcm-dmaengine,\ $(MODULES_DIR)/kernel/sound/core/snd-pcm-dmaengine \ +,41)) + +$(eval $(call KMOD_template,SND_COMPRESS,snd-compress,\ $(MODULES_DIR)/kernel/sound/core/snd-compress \ -,40)) +,41)) $(eval $(call KMOD_template,SND_RAWMIDI,snd-rawmidi,\ $(MODULES_DIR)/kernel/sound/core/snd-hwdep \ $(MODULES_DIR)/kernel/sound/core/snd-rawmidi \ ,42)) -$(eval $(call KMOD_template,SND_OSSEMUL,snd-ossemul,\ - $(MODULES_DIR)/kernel/sound/core/oss/snd-mixer-oss \ - $(MODULES_DIR)/kernel/sound/core/oss/snd-pcm-oss \ -,45)) - $(eval $(call KMOD_template,SND_AC97_CODEC,snd-ac97-codec,\ $(MODULES_DIR)/kernel/sound/ac97_bus \ $(MODULES_DIR)/kernel/sound/pci/ac97/snd-ac97-codec \ @@ -1293,7 +1294,7 @@ $(eval $(call KMOD_template,PCMCIA,pcmcia,\ ,60)) $(eval $(call KMOD_template,SERIAL_8250_CS,serial-8250-cs,\ - $(MODULES_DIR)/kernel/drivers/tty/serial/serial_cs \ + $(MODULES_DIR)/kernel/drivers/tty/serial/8250/serial_cs \ ,70)) # @@ -1742,7 +1743,7 @@ $(eval $(call KMOD_template,PARPORT_PC,parport-pc,\ ,55)) $(eval $(call KMOD_template,PLIP,plip,\ - $(MODULES_DIR)/kernel/drivers/net/plip \ + $(MODULES_DIR)/kernel/drivers/net/plip/plip \ ,60)) # diff --git a/mk/package.mk b/mk/package.mk index a70de9377..eba9c446a 100644 --- a/mk/package.mk +++ b/mk/package.mk @@ -195,10 +195,10 @@ endif $$(IPKG_$(1)): $$(IDIR_$(1))/CONTROL/control $${_FAKE_COOKIE} ifeq ($(ADK_DEBUG),) - $${RSTRIP} $${IDIR_$(1)} $(MAKE_TRACE) + @$${RSTRIP} $${IDIR_$(1)} $(MAKE_TRACE) endif ifeq ($(ADK_DEBUG_STRIP),y) - $${RSTRIP} $${IDIR_$(1)} $(MAKE_TRACE) + @$${RSTRIP} $${IDIR_$(1)} $(MAKE_TRACE) endif ifeq (${ADK_LEAVE_ETC_ALONE}$(filter force_etc,$(7)),y) -rm -rf $${IDIR_$(1)}/etc @@ -314,7 +314,7 @@ clean-targets: clean: @$(CMD_TRACE) "cleaning... " @$(MAKE) clean-targets $(MAKE_TRACE) - rm -rf ${WRKDIR} ${ALL_IPKGS} ${STAGING_PKG_DIR}/stamps/${PKG_NAME}* + rm -rf ${WRKDIR} ${ALL_IPKGS} ${STAGING_PKG_DIR}/stamps/${PKG_NAME}${PKG_VERSION} distclean: clean rm -f ${FULLDISTFILES} diff --git a/mk/pkg-bottom.mk b/mk/pkg-bottom.mk index 3e454ee5a..2ccc6ff1e 100644 --- a/mk/pkg-bottom.mk +++ b/mk/pkg-bottom.mk @@ -184,7 +184,7 @@ ifneq (,$(filter dev,${PKG_OPTS})) done endif @-cd ${WRKINST}; \ - if [ "${PKG_NAME}" != "uClibc" -a "${PKG_NAME}" != "glibc" -a "${PKG_NAME}" != "libpthread" -a "${PKG_NAME}" != "libstdcxx" -a "${PKG_NAME}" != "libgcc" -a "${PKG_NAME}" != "libthread-db" -a "${PKG_NAME}" != "musl" -a "${PKG_NAME}" != "pam" ];then \ + if [ "${PKG_NAME}" != "uClibc" -a "${PKG_NAME}" != "glibc" -a "${PKG_NAME}" != "libpthread" -a "${PKG_NAME}" != "libstdcxx" -a "${PKG_NAME}" != "libgcc" -a "${PKG_NAME}" != "libthread-db" -a "${PKG_NAME}" != "musl" -a "${PKG_NAME}" != "pam" -a "${PKG_NAME}" != "tzdata" ];then \ find lib \( -name lib\*.so\* -o -name lib\*.a \) \ -exec echo 'WARNING: ${PKG_NAME} installs files in /lib -' \ ' fix this!' >&2 \; -quit 2>/dev/null; fi;\ diff --git a/mk/rootfs.mk b/mk/rootfs.mk index 55830b23c..dae0e5805 100644 --- a/mk/rootfs.mk +++ b/mk/rootfs.mk @@ -11,10 +11,11 @@ endef ifeq ($(ADK_HARDWARE_QEMU),y) MTDDEV:= root=/dev/mtdblock0 ifeq ($(ADK_TARGET_ROOTFS_ARCHIVE),y) -ROOTFS:= root=/dev/sda1 -endif ifeq ($(ADK_TARGET_QEMU_WITH_VIRTIO),y) ROOTFS:= root=/dev/vda1 +else +ROOTFS:= root=/dev/sda1 +endif endif endif @@ -41,17 +42,15 @@ else USB:= rootdelay=2 endif -$(eval $(call rootfs_template,genext2fs,GENEXT2FS,$(ROOTFS))) -$(eval $(call rootfs_template,cf,CF,$(ROOTFS))) -$(eval $(call rootfs_template,mmc,MMC,$(ROOTFS))) $(eval $(call rootfs_template,usb,USB,$(USB))) $(eval $(call rootfs_template,archive,ARCHIVE,$(ROOTFS))) +$(eval $(call rootfs_template,initramfsarchive,INITRAMFSARCHIVE)) $(eval $(call rootfs_template,initramfs,INITRAMFS)) $(eval $(call rootfs_template,initramfs-piggyback,INITRAMFS_PIGGYBACK)) -$(eval $(call rootfs_template,squashfs,SQUASHFS,$(ROOTFS))) +$(eval $(call rootfs_template,squashfs,SQUASHFS,$(MTDDEV) rootfstype=squashfs)) $(eval $(call rootfs_template,yaffs,YAFFS,$(MTDDEV) panic=3)) $(eval $(call rootfs_template,jffs2,JFFS2,$(MTDDEV) rootfstype=jffs2)) -$(eval $(call rootfs_template,nfsroot,NFSROOT,root=/dev/nfs ip=dhcp init=/init)) +$(eval $(call rootfs_template,nfsroot,NFSROOT,root=/dev/nfs ip=dhcp)) $(eval $(call rootfs_template,encrypted,ENCRYPTED)) $(eval $(call rootfs_template,iso,ISO)) diff --git a/mk/vars.mk b/mk/vars.mk index 5fd4a51aa..a26dc0734 100644 --- a/mk/vars.mk +++ b/mk/vars.mk @@ -17,16 +17,17 @@ DL_DIR?= $(BASE_DIR)/dl else DL_DIR?= $(ADK_DL_DIR) endif -TOOLS_BUILD_DIR= $(BASE_DIR)/tools_build SCRIPT_DIR:= $(BASE_DIR)/scripts STAGING_HOST_DIR:= ${BASE_DIR}/host_${GNU_HOST_NAME} +TOOLCHAIN_DIR:= ${BASE_DIR}/toolchain_${GNU_HOST_NAME} +HOST_BUILD_DIR:= ${BASE_DIR}/host_build_${GNU_HOST_NAME} -# PFX dirs for cleandir +# dirs for cleandir FW_DIR_PFX:= $(BASE_DIR)/firmware BUILD_DIR_PFX:= $(BASE_DIR)/build_* STAGING_PKG_DIR_PFX:= ${BASE_DIR}/pkg_* STAGING_TARGET_DIR_PFX:=${BASE_DIR}/target_* -TOOLCHAIN_BUILD_DIR_PFX=$(BASE_DIR)/toolchain_build_* +TOOLCHAIN_DIR_PFX= $(BASE_DIR)/toolchain_* STAGING_HOST_DIR_PFX:= ${BASE_DIR}/host_* TARGET_DIR_PFX:= $(BASE_DIR)/root_* @@ -36,7 +37,7 @@ FW_DIR:= $(BASE_DIR)/firmware/${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIB BUILD_DIR:= ${BASE_DIR}/build_${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC} STAGING_TARGET_DIR:= ${BASE_DIR}/target_${CPU_ARCH}_${ADK_TARGET_LIBC} STAGING_PKG_DIR:= ${BASE_DIR}/pkg_${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC} -STAGING_HOST2TARGET:= ../target_${CPU_ARCH}_${ADK_TARGET_LIBC} +STAGING_HOST2TARGET:= ../../target_${CPU_ARCH}_${ADK_TARGET_LIBC} TOOLCHAIN_BUILD_DIR= $(BASE_DIR)/toolchain_build_${CPU_ARCH}_${ADK_TARGET_LIBC} else TARGET_DIR:= $(BASE_DIR)/root_${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_ABI} @@ -44,7 +45,7 @@ FW_DIR:= $(BASE_DIR)/firmware/${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIB BUILD_DIR:= ${BASE_DIR}/build_${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_ABI} STAGING_TARGET_DIR:= ${BASE_DIR}/target_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_ABI} STAGING_PKG_DIR:= ${BASE_DIR}/pkg_${ADK_TARGET_SYSTEM}_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_ABI} -STAGING_HOST2TARGET:= ../target_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_ABI} +STAGING_HOST2TARGET:= ../../target_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_ABI} TOOLCHAIN_BUILD_DIR= $(BASE_DIR)/toolchain_build_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_ABI} endif @@ -52,15 +53,9 @@ PACKAGE_DIR:= $(FW_DIR)/packages SCRIPT_TARGET_DIR:= ${STAGING_TARGET_DIR}/scripts # PATH variables -TARGET_PATH= ${SCRIPT_DIR}:${STAGING_TARGET_DIR}/scripts:${STAGING_HOST_DIR}/bin:${STAGING_HOST_DIR}/usr/bin:${_PATH} -HOST_PATH= ${SCRIPT_DIR}:${STAGING_HOST_DIR}/bin:${STAGING_HOST_DIR}/usr/bin:${_PATH} -AUTOTOOL_PATH= ${STAGING_HOST_DIR}/bin:${STAGING_HOST_DIR}/usr/bin:${STAGING_TARGET_DIR}/scripts:${_PATH} - -ifeq ($(ADK_TARGET_ABI_X32),y) -GNU_TARGET_NAME= $(CPU_ARCH)-x32-linux-$(ADK_TARGET_SUFFIX) -else -GNU_TARGET_NAME= $(CPU_ARCH)-$(ADK_VENDOR)-linux-$(ADK_TARGET_SUFFIX) -endif +TARGET_PATH= ${SCRIPT_DIR}:${STAGING_TARGET_DIR}/scripts:${TOOLCHAIN_DIR}/usr/bin:${STAGING_HOST_DIR}/usr/bin:${_PATH} +HOST_PATH= ${SCRIPT_DIR}:${TOOLCHAIN_DIR}/bin:${STAGING_HOST_DIR}/usr/bin:${_PATH} +AUTOTOOL_PATH= ${TOOLCHAIN_DIR}/usr/bin:${STAGING_HOST_DIR}/usr/bin:${STAGING_TARGET_DIR}/scripts:${_PATH} ifeq ($(ADK_DISABLE_HONOUR_CFLAGS),) GCC_CHECK:= GCC_HONOUR_COPTS=2 @@ -68,18 +63,28 @@ else GCC_CHECK:= endif -TARGET_CROSS:= $(STAGING_HOST_DIR)/bin/$(GNU_TARGET_NAME)- +GNU_TARGET_NAME:= $(CPU_ARCH)-$(ADK_VENDOR)-linux-$(ADK_TARGET_SUFFIX) +TARGET_CROSS:= $(TOOLCHAIN_DIR)/usr/bin/$(GNU_TARGET_NAME)- TARGET_COMPILER_PREFIX?=${TARGET_CROSS} -CONFIGURE_TRIPLE:= --build=${GNU_HOST_NAME} --host=${GNU_TARGET_NAME} --target=${GNU_TARGET_NAME} +CONFIGURE_TRIPLE:= --build=${GNU_HOST_NAME} \ + --host=${GNU_TARGET_NAME} \ + --target=${GNU_TARGET_NAME} ifneq ($(strip ${ADK_USE_CCACHE}),) -TARGET_COMPILER_PREFIX=ccache ${TARGET_CROSS} +TARGET_COMPILER_PREFIX=$(STAGING_HOST_DIR)/usr/bin/ccache ${TARGET_CROSS} endif -# target compiler flags +# target tools TARGET_CC:= ${TARGET_COMPILER_PREFIX}gcc TARGET_CXX:= ${TARGET_COMPILER_PREFIX}g++ TARGET_LD:= ${TARGET_COMPILER_PREFIX}ld +TARGET_AR:= ${TARGET_COMPILER_PREFIX}ar +TARGET_RANLIB:= ${TARGET_COMPILER_PREFIX}ranlib + +ifneq ($(ADK_TARGET_ABI_CFLAGS),) +TARGET_CC+= $(ADK_TARGET_ABI_CFLAGS) +TARGET_CXX+= $(ADK_TARGET_ABI_CFLAGS) +endif MODE_FLAGS:= ifeq ($(ADK_LINUX_ARM),y) @@ -91,13 +96,12 @@ endif endif TARGET_CPPFLAGS:= -TARGET_CFLAGS:= $(TARGET_CFLAGS_ARCH) -fwrapv -fno-ident -fhonour-copts $(ADK_TARGET_ABI_CFLAGS) $(MODE_FLAGS) -TARGET_CFLAGS_LIBC:= $(TARGET_CFLAGS_ARCH) -fwrapv -fno-ident -fhonour-copts $(TARGET_OPTIMIZATION) $(MODE_FLAGS) -TARGET_CXXFLAGS:= $(TARGET_CFLAGS_ARCH) -fwrapv -fno-ident $(MODE_FLAGS) +TARGET_CFLAGS:= $(TARGET_CFLAGS_ARCH) -fwrapv -fno-ident -fhonour-copts +TARGET_CXXFLAGS:= $(TARGET_CFLAGS_ARCH) -fwrapv -fno-ident TARGET_LDFLAGS:= -L$(STAGING_TARGET_DIR)/lib -L$(STAGING_TARGET_DIR)/usr/lib \ -Wl,-O1 -Wl,-rpath -Wl,/usr/lib \ - -Wl,-rpath-link -Wl,${STAGING_TARGET_DIR}/usr/lib \ - $(ADK_TARGET_ABI_LDFLAGS) + -Wl,-rpath-link -Wl,${STAGING_TARGET_DIR}/usr/lib + # security optimization, see http://www.akkadia.org/drepper/dsohowto.pdf TARGET_LDFLAGS+= -Wl,-z,relro,-z,now # needed for musl ppc @@ -123,13 +127,17 @@ ifneq ($(ADK_DEBUG),) TARGET_CFLAGS+= -g3 -fno-omit-frame-pointer else TARGET_CPPFLAGS+= -DNDEBUG -TARGET_CFLAGS+= -fomit-frame-pointer $(TARGET_OPTIMIZATION) +TARGET_CFLAGS+= -fomit-frame-pointer $(ADK_TARGET_CFLAGS_OPT) # stop generating eh_frame stuff TARGET_CFLAGS+= -fno-unwind-tables -fno-asynchronous-unwind-tables # always add debug information TARGET_CFLAGS+= -g3 endif +ifneq ($(MODE_FLAGS),) +TARGET_CFLAGS+= $(MODE_CFLAGS) +TARGET_CXXFLAGS+= $(MODE_CFLAGS) +endif # A nifty macro to make testing gcc features easier (from uClibc project) check_gcc=$(shell \ @@ -139,7 +147,6 @@ check_gcc=$(shell \ CF_FOR_BUILD=$(call check_gcc,-fhonour-copts,) # host compiler flags -CXX_FOR_BUILD?= g++ CPPFLAGS_FOR_BUILD?= -I$(STAGING_HOST_DIR)/usr/include CFLAGS_FOR_BUILD= -O2 -Wall $(CF_FOR_BUILD) CXXFLAGS_FOR_BUILD?= -O2 -Wall @@ -150,9 +157,11 @@ PATCH= ${BASH} $(SCRIPT_DIR)/patch.sh SED:= PATH=${HOST_PATH} sed -i -e LINUX_DIR:= $(BUILD_DIR)/linux KERNEL_MODULE_FLAGS:= ARCH=${ARCH} \ - KERNEL_PATH=${LINUX_DIR} KERNELDIR=${LINUX_DIR} KERNEL_DIR=${LINUX_DIR} \ + KERNEL_PATH=${LINUX_DIR} \ + KERNELDIR=${LINUX_DIR} \ + KERNEL_DIR=${LINUX_DIR} \ PREFIX=/usr CROSS_COMPILE="${TARGET_CROSS}" \ - LDFLAGS="$(ADK_TARGET_KERNEL_LDFLAGS)" CFLAGS_MODULE="-fhonour-copts" V=1 + CFLAGS_MODULE="-fhonour-copts" V=1 TARGET_CONFIGURE_OPTS= PATH='${TARGET_PATH}' \ AR='$(TARGET_CROSS)ar' \ @@ -169,9 +178,10 @@ TARGET_CONFIGURE_OPTS= PATH='${TARGET_PATH}' \ CROSS_COMPILE='$(TARGET_CROSS)' HOST_CONFIGURE_OPTS= CC_FOR_BUILD='${CC_FOR_BUILD}' \ - CPPFLAGS_FOR_BUILD='${CPPFLAGS_FOR_BUILD}' \ CXX_FOR_BUILD='${CXX_FOR_BUILD}' \ + CPPFLAGS_FOR_BUILD='${CPPFLAGS_FOR_BUILD}' \ CFLAGS_FOR_BUILD='${CFLAGS_FOR_BUILD}' \ + CXXFLAGS_FOR_BUILD='${CXXFLAGS_FOR_BUILD}' \ LDFLAGS_FOR_BUILD='${LDFLAGS_FOR_BUILD}' PKG_SUFFIX:= $(strip $(subst ",, $(ADK_PACKAGE_SUFFIX))) @@ -198,25 +208,25 @@ RSTRIP:= PATH="$(TARGET_PATH)" prefix='${TARGET_CROSS}' ${BASH} ${SCRIPT_DIR}/r STATCMD:=$(shell if stat -qs .>/dev/null 2>&1; then echo 'stat -f %z';else echo 'stat -c %s';fi) -EXTRACT_CMD= mkdir -p ${WRKDIR}; \ +EXTRACT_CMD= PATH='${HOST_PATH}'; mkdir -p ${WRKDIR}; \ cd ${WRKDIR} && \ for file in ${FULLDISTFILES}; do case $$file in \ *.cpio) \ - cat $$file | $(STAGING_HOST_DIR)/usr/bin/cpio -i -d ;; \ + cat $$file | cpio -i -d ;; \ *.tar) \ tar -xf $$file ;; \ *.cpio.Z | *.cpio.gz | *.cgz | *.mcz) \ - gzip -dc $$file | $(STAGING_HOST_DIR)/usr/bin/cpio -i -d ;; \ + gzip -dc $$file | cpio -i -d ;; \ *.tar.xz | *.txz) \ - $(STAGING_HOST_DIR)/usr/bin/xz -dc $$file | tar -xf - ;; \ + xz -dc $$file | tar -xf - ;; \ *.tar.Z | *.tar.gz | *.taz | *.tgz) \ gzip -dc $$file | tar -xf - ;; \ *.cpio.bz2 | *.cbz) \ - $(STAGING_HOST_DIR)/usr/bin/bzip2 -dc $$file | $(STAGING_HOST_DIR)/usr/bin/cpio -i -d ;; \ + bzip2 -dc $$file | cpio -i -d ;; \ *.tar.bz2 | *.tbz | *.tbz2) \ - $(STAGING_HOST_DIR)/usr/bin/bzip2 -dc $$file | tar -xf - ;; \ + bzip2 -dc $$file | tar -xf - ;; \ *.zip) \ - cat $$file | $(STAGING_HOST_DIR)/usr/bin/cpio -ivd -H zip ;; \ + cat $$file | cpio -ivd -H zip ;; \ *.arm) \ cp $$file ${WRKDIR} ;; \ *) \ diff --git a/package/Makefile b/package/Makefile index 1b8cc97f3..c2b7d5285 100644 --- a/package/Makefile +++ b/package/Makefile @@ -28,11 +28,13 @@ include $(TOPDIR)/package/Depends.mk DOWNLOAD:=$(patsubst %,%-download,$(package-y) $(package-m)) REBUILD_PACKAGES:=$(patsubst %,%-rebuild,$(package-y) $(package-m)) COMPILE_PACKAGES:=$(patsubst %,%-compile,$(package-y) $(package-m)) +HOST_COMPILE_PACKAGES:=$(patsubst %,%-host-compile,$(hostpackage-y)) INSTALL_PACKAGES:=$(patsubst %,%-install,$(package-y)) all: compile download: $(DOWNLOAD) clean: $(patsubst %,%-clean,$(package-) $(package-y) $(package-m) base-files) +hostcompile: $(HOST_COMPILE_PACKAGES) ifeq ($(ADK_TOOLCHAIN_ONLY),y) compile: $(REBUILD_PACKAGES) $(COMPILE_PACKAGES) install: $(INSTALL_PACKAGES) diff --git a/package/MesaLib/Makefile b/package/MesaLib/Makefile index c6e1811a5..97bbee79b 100644 --- a/package/MesaLib/Makefile +++ b/package/MesaLib/Makefile @@ -4,17 +4,20 @@ include $(TOPDIR)/rules.mk PKG_NAME:= MesaLib -PKG_VERSION:= 9.2.2 -PKG_RELEASE:= 2 -PKG_MD5SUM:= df801a975045150790e10e2ccf32193f +PKG_VERSION:= 10.1.0 +PKG_SUBVER:= 10.1 +PKG_RELEASE:= 3 +PKG_MD5SUM:= 08e796ec7122aa299d32d4f67a254315 PKG_DESCR:= MESA 3D graphics library PKG_SECTION:= libs PKG_DEPENDS:= libxdamage libxfixes libdrm libxxf86vm libexpat PKG_DEPENDS+= libxml2 libxml2-python -PKG_BUILDDEP:= autotool python2 libxml2 libXdamage libXfixes libXxf86vm libdrm -PKG_BUILDDEP+= dri2proto glproto expat libXext +PKG_BUILDDEP:= autotool python2 libxml2 libXdamage libXfixes +PKG_BUILDDEP+= libXxf86vm libdrm dri2proto glproto expat libXext +PKG_BUILDDEP+= eudev dri3proto presentproto xcb-proto libxcb +PKG_BUILDDEP+= libxshmfence PKG_URL:= http://www.mesa3d.org/ -PKG_SITES:= ftp://ftp.freedesktop.org/pub/mesa/${PKG_VERSION}/ +PKG_SITES:= ftp://ftp.freedesktop.org/pub/mesa/${PKG_SUBVER}/ PKG_NEED_CXX:= 1 PKG_LIBNAME:= mesalib PKG_OPTS:= dev @@ -58,6 +61,8 @@ mesalib-install: $(INSTALL_DIR) $(IDIR_MESALIB)/usr/lib/dri $(CP) $(WRKINST)/usr/lib/libGL*.so* \ $(IDIR_MESALIB)/usr/lib + $(CP) $(WRKINST)/usr/lib/libglapi.so* \ + $(IDIR_MESALIB)/usr/lib ${CP} $(WRKINST)/usr/lib/dri/swrast_dri.so \ ${IDIR_MESALIB}/usr/lib/dri/ ifeq (${ADK_TARGET_SYSTEM_IBM_X40},y) diff --git a/package/MesaLib/patches/patch-configure_ac b/package/MesaLib/patches/patch-configure_ac index c788ea1cd..32b3d8053 100644 --- a/package/MesaLib/patches/patch-configure_ac +++ b/package/MesaLib/patches/patch-configure_ac @@ -1,6 +1,6 @@ ---- Mesa-9.2.2.orig/configure.ac 2013-10-19 01:36:09.000000000 +0200 -+++ Mesa-9.2.2/configure.ac 2013-12-01 14:08:00.000000000 +0100 -@@ -69,7 +69,7 @@ AC_PATH_PROG([PERL], [perl]) +--- Mesa-10.1.0.orig/configure.ac 2014-02-27 02:56:39.000000000 +0100 ++++ Mesa-10.1.0/configure.ac 2014-03-14 21:36:14.000000000 +0100 +@@ -65,7 +65,7 @@ AC_PATH_PROG([PERL], [perl]) AC_CHECK_PROG(INDENT, indent, indent, cat) if test "x$INDENT" != "xcat"; then diff --git a/package/MesaLib/patches/patch-include_c11_threads_posix_h b/package/MesaLib/patches/patch-include_c11_threads_posix_h new file mode 100644 index 000000000..2e79238f7 --- /dev/null +++ b/package/MesaLib/patches/patch-include_c11_threads_posix_h @@ -0,0 +1,11 @@ +--- Mesa-10.1.0.orig/include/c11/threads_posix.h 2014-02-27 02:56:39.000000000 +0100 ++++ Mesa-10.1.0/include/c11/threads_posix.h 2014-03-14 21:54:55.000000000 +0100 +@@ -176,7 +176,7 @@ mtx_init(mtx_t *mtx, int type) + return thrd_error; + pthread_mutexattr_init(&attr); + if ((type & mtx_recursive) != 0) { +-#if defined(__linux__) || defined(__linux) ++#if defined(__GLIBC__) + pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE_NP); + #else + pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); diff --git a/package/MesaLib/patches/patch-src_gallium_include_pipe_p_config_h b/package/MesaLib/patches/patch-src_gallium_include_pipe_p_config_h index 021601b7f..b929e8758 100644 --- a/package/MesaLib/patches/patch-src_gallium_include_pipe_p_config_h +++ b/package/MesaLib/patches/patch-src_gallium_include_pipe_p_config_h @@ -1,6 +1,6 @@ ---- Mesa-9.2.2.orig/src/gallium/include/pipe/p_config.h 2013-10-18 00:26:23.000000000 +0200 -+++ Mesa-9.2.2/src/gallium/include/pipe/p_config.h 2014-01-06 12:26:04.042469119 +0100 -@@ -126,7 +126,7 @@ +--- Mesa-10.1.0.orig/src/gallium/include/pipe/p_config.h 2014-02-27 02:56:39.000000000 +0100 ++++ Mesa-10.1.0/src/gallium/include/pipe/p_config.h 2014-03-14 21:36:14.000000000 +0100 +@@ -130,7 +130,7 @@ * Endian detection. */ diff --git a/package/MesaLib/patches/patch-src_mesa_main_querymatrix_c b/package/MesaLib/patches/patch-src_mesa_main_querymatrix_c index 4ca3a2708..db87901d3 100644 --- a/package/MesaLib/patches/patch-src_mesa_main_querymatrix_c +++ b/package/MesaLib/patches/patch-src_mesa_main_querymatrix_c @@ -1,6 +1,6 @@ ---- Mesa-9.2.2.orig/src/mesa/main/querymatrix.c 2013-04-08 20:21:04.000000000 +0200 -+++ Mesa-9.2.2/src/mesa/main/querymatrix.c 2013-10-24 17:06:31.000000000 +0200 -@@ -74,7 +74,7 @@ fpclassify(double x) +--- Mesa-10.1.0.orig/src/mesa/main/querymatrix.c 2014-02-27 02:56:40.000000000 +0100 ++++ Mesa-10.1.0/src/mesa/main/querymatrix.c 2014-03-14 21:36:14.000000000 +0100 +@@ -76,7 +76,7 @@ fpclassify(double x) #elif defined(__APPLE__) || defined(__CYGWIN__) || defined(__FreeBSD__) || \ defined(__OpenBSD__) || defined(__NetBSD__) || defined(__DragonFly__) || \ (defined(__sun) && defined(__C99FEATURES__)) || defined(__MINGW32__) || \ diff --git a/package/adk-helper/Makefile b/package/adk-helper/Makefile new file mode 100644 index 000000000..d386bd508 --- /dev/null +++ b/package/adk-helper/Makefile @@ -0,0 +1,33 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include ${TOPDIR}/rules.mk + +PKG_NAME:= adk-helper +PKG_VERSION:= 1.0 +PKG_RELEASE:= 1 +PKG_DESCR:= adk helper utilities +PKG_SECTION:= misc + +PKG_CFLINE_ADK_HELPER:= depends on ADK_HOST_ONLY + +NO_DISTFILES:= 1 + +include ${TOPDIR}/mk/host.mk +include ${TOPDIR}/mk/package.mk + +$(eval $(call HOST_template,ADK_HELPER,adk-helper,${PKG_VERSION}-${PKG_RELEASE})) + +HOST_STYLE:= manual + +host-build: + $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) -o ${WRKBUILD}/mkcrypt ${WRKBUILD}/mkcrypt.c + $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) -o ${WRKBUILD}/dkgetsz ${WRKBUILD}/dkgetsz.c + +adk-helper-hostinstall: + ${INSTALL_DIR} ${STAGING_HOST_DIR}/usr/bin + ${INSTALL_BIN} ${WRKBUILD}/mkcrypt ${STAGING_HOST_DIR}/usr/bin + ${INSTALL_BIN} ${WRKBUILD}/dkgetsz ${STAGING_HOST_DIR}/usr/bin + +include ${TOPDIR}/mk/host-bottom.mk +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/tools/adk/dkgetsz.c b/package/adk-helper/src/dkgetsz.c index b8315be70..b8315be70 100644 --- a/tools/adk/dkgetsz.c +++ b/package/adk-helper/src/dkgetsz.c diff --git a/tools/mkcrypt/mkcrypt.c b/package/adk-helper/src/mkcrypt.c index a856759df..a856759df 100644 --- a/tools/mkcrypt/mkcrypt.c +++ b/package/adk-helper/src/mkcrypt.c diff --git a/package/adk-test-tools/Makefile b/package/adk-test-tools/Makefile index bc2624fe9..72327170a 100644 --- a/package/adk-test-tools/Makefile +++ b/package/adk-test-tools/Makefile @@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:= adk-test-tools PKG_VERSION:= 0.1 -PKG_RELEASE:= 1 +PKG_RELEASE:= 5 PKG_DESCR:= helper tools and scripts for adk-test-framework PKG_SECTION:= misc PKG_URL:= http://openadk.org/ diff --git a/package/adk-test-tools/files/test.init b/package/adk-test-tools/files/test.init index 81095fa39..e33bece47 100755 --- a/package/adk-test-tools/files/test.init +++ b/package/adk-test-tools/files/test.init @@ -3,9 +3,14 @@ #INIT 90 [[ $1 = autostart ]] || exit 0 echo "Starting test script ..." +grep shell /proc/cmdline > /dev/null 2&>1 +if [ $? -eq 0 ];then + exit 0 +fi if [ -x /run.sh ];then - exec /run.sh + /run.sh + quit else echo "no run.sh found" + quit fi -quit diff --git a/package/aiccu/Makefile b/package/aiccu/Makefile index d009394f7..407c3a65c 100644 --- a/package/aiccu/Makefile +++ b/package/aiccu/Makefile @@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:= aiccu PKG_VERSION:= 20070115 -PKG_RELEASE:= 10 +PKG_RELEASE:= 11 PKG_MD5SUM:= c9bcc83644ed788e22a7c3f3d4021350 PKG_DESCR:= SixXS Automatic IPv6 Connectivity Client Utility PKG_SECTION:= ipv6 @@ -13,6 +13,8 @@ PKG_DEPENDS:= kmod-ipv6 kmod-tun libpthread PKG_URL:= http://www.sixxs.net/ PKG_SITES:= http://www.sixxs.net/archive/sixxs/aiccu/unix/ +PKG_LIBC_DEPENDS:= uclibc glibc + DISTFILES:= $(PKG_NAME)_$(PKG_VERSION).tar.gz WRKDIST= ${WRKDIR}/$(PKG_NAME) diff --git a/package/aiccu/patches/patch-common_common_h b/package/aiccu/patches/patch-common_common_h new file mode 100644 index 000000000..42cd7b5a2 --- /dev/null +++ b/package/aiccu/patches/patch-common_common_h @@ -0,0 +1,12 @@ +--- aiccu.orig/common/common.h 2007-01-11 15:50:51.000000000 +0100 ++++ aiccu/common/common.h 2014-03-16 21:47:28.000000000 +0100 +@@ -91,7 +91,9 @@ + #include <sys/select.h> + + #include <net/if.h> ++#ifdef __GLIBC__ + #include <netinet/if_ether.h> ++#endif + #ifdef linux + #include <netpacket/packet.h> + #include <linux/if_tun.h> diff --git a/package/aiccu/src/common/dn_skipname.c b/package/aiccu/src/common/dn_skipname.c index f2219f335..3b4a756b9 100644 --- a/package/aiccu/src/common/dn_skipname.c +++ b/package/aiccu/src/common/dn_skipname.c @@ -9,10 +9,10 @@ * return: * 0 on success, -1 (with errno set) on failure. */ -int ns_name_skip(const u_char **ptrptr, const u_char *eom) +int ns_name_skip(const unsigned char **ptrptr, const unsigned char *eom) { - const u_char *cp; - u_int n; + const unsigned char *cp; + unsigned int n; cp = *ptrptr; while (cp < eom && (n = *cp++) != 0) @@ -40,9 +40,9 @@ int ns_name_skip(const u_char **ptrptr, const u_char *eom) return (0); } -int dn_skipname(const u_char *ptr, const u_char *eom) +int dn_skipname(const unsigned char *ptr, const unsigned char *eom) { - const u_char *saveptr = ptr; + const unsigned char *saveptr = ptr; if(ns_name_skip(&ptr, eom) == -1) return (-1); diff --git a/package/arpd/Makefile b/package/arpd/Makefile index 32730f11d..c1294c368 100644 --- a/package/arpd/Makefile +++ b/package/arpd/Makefile @@ -5,7 +5,7 @@ include ${TOPDIR}/rules.mk PKG_NAME:= arpd PKG_VERSION:= 0.2 -PKG_RELEASE:= 2 +PKG_RELEASE:= 3 PKG_MD5SUM:= e2911fa9de1b92ef50deda1489ae944d PKG_DESCR:= Generates ARP responses for IP address ranges PKG_SECTION:= route diff --git a/package/arpd/patches/patch-arpd_c b/package/arpd/patches/patch-arpd_c index 857396d76..84dd457aa 100644 --- a/package/arpd/patches/patch-arpd_c +++ b/package/arpd/patches/patch-arpd_c @@ -1,5 +1,5 @@ --- arpd.orig/arpd.c 2003-02-09 05:20:40.000000000 +0100 -+++ arpd/arpd.c 2007-01-21 00:39:05.000000000 +0100 ++++ arpd/arpd.c 2014-03-16 08:11:53.000000000 +0100 @@ -70,7 +70,7 @@ static int arpd_sig; static void usage(void) @@ -74,10 +74,21 @@ addr_ntoa(&req->pa), addr_ntoa(&src.arp_ha)); /* This address is claimed */ -@@ -465,14 +469,14 @@ main(int argc, char *argv[]) +@@ -445,9 +449,6 @@ arpd_recv(int fd, short type, void *ev) + void + terminate_handler(int sig) + { +- extern int event_gotsig; +- +- event_gotsig = 1; + arpd_sig = sig; + } + +@@ -464,15 +465,14 @@ int + main(int argc, char *argv[]) { struct event recv_ev; - extern int (*event_sigcb)(void); +- extern int (*event_sigcb)(void); - char *dev; + char *dev, *and_pcap_exp; int c, debug; @@ -91,7 +102,7 @@ switch (c) { case 'd': debug = 1; -@@ -480,6 +484,9 @@ main(int argc, char *argv[]) +@@ -480,6 +480,9 @@ main(int argc, char *argv[]) case 'i': dev = optarg; break; @@ -101,7 +112,7 @@ default: usage(); break; -@@ -489,9 +496,9 @@ main(int argc, char *argv[]) +@@ -489,9 +492,9 @@ main(int argc, char *argv[]) argv += optind; if (argc == 0) @@ -113,3 +124,11 @@ if ((fp = fopen(PIDFILE, "w")) == NULL) err(1, "fopen"); +@@ -524,7 +527,6 @@ main(int argc, char *argv[]) + perror("signal"); + return (-1); + } +- event_sigcb = arpd_signal; + + event_dispatch(); + diff --git a/package/asterisk/Makefile b/package/asterisk/Makefile index 051ad3ea3..e43b4d275 100644 --- a/package/asterisk/Makefile +++ b/package/asterisk/Makefile @@ -105,7 +105,7 @@ TARGET_LDFLAGS+= -lm -ltinfo -ldl -lpthread MAKE_ENV= ASTCFLAGS="${TARGET_CPPFLAGS} -DHAVE_STRTOQ" \ ASTLDFLAGS="${TARGET_LDFLAGS}" MAKE_FLAGS+= DESTDIR="$(WRKINST)" \ - OPTIMIZE="${TARGET_OPTIMIZATION}" \ + OPTIMIZE="${TARGET_CFLAGS}" \ NOISY_BUILD=1 ALL_TARGET:= all install samples diff --git a/package/atftp/Makefile b/package/atftp/Makefile index 598f58a06..7d5eefa66 100644 --- a/package/atftp/Makefile +++ b/package/atftp/Makefile @@ -14,6 +14,8 @@ PKG_BUILDDEP:= readline ncurses PKG_URL:= http://freshmeat.net/projects/atftp/ PKG_SITES:= ftp://ftp.mamalinux.com/pub/atftp/ +PKG_LIBC_DEPENDS:= uclibc glibc + PKG_SUBPKGS:= ATFTP ATFTPD PKGSD_ATFTPD:= TFTP server PKGSS_ATFTPD:= libreadline libncurses diff --git a/package/base-files/Makefile b/package/base-files/Makefile index 81fb1f6df..2d3525b58 100644 --- a/package/base-files/Makefile +++ b/package/base-files/Makefile @@ -6,10 +6,9 @@ include $(TOPDIR)/mk/rootfs.mk PKG_NAME:= base-files PKG_VERSION:= 1.0 -PKG_RELEASE:= 70 +PKG_RELEASE:= 81 PKG_SECTION:= base PKG_DESCR:= basic files and scripts -PKG_BUILDDEP:= pkgconf-host file-host WRKDIST= ${WRKDIR}/base-files NO_DISTFILES:= 1 @@ -27,11 +26,19 @@ do-install: ifeq (${ADK_TARGET_ROOTFS_NFSROOT},y) @echo "#" > $(IDIR_BASE_FILES)/etc/network/interfaces endif +ifeq (${ADK_TARGET_PACKAGE_IPKG},y) $(SED) 's,@ARCH@,$(ADK_TARGET_CPU_ARCH),g' $(IDIR_BASE_FILES)/etc/ipkg.conf $(SED) 's,@SYSTEM@,$(ADK_TARGET_SYSTEM),g' $(IDIR_BASE_FILES)/etc/ipkg.conf $(SED) 's,@LIBC@,$(ADK_TARGET_LIBC),g' $(IDIR_BASE_FILES)/etc/ipkg.conf +ifneq ($(ADK_TARGET_ABI),) + $(SED) 's,@ABI@,_$(ADK_TARGET_ABI),g' $(IDIR_BASE_FILES)/etc/ipkg.conf +else + $(SED) 's,@ABI@,,g' $(IDIR_BASE_FILES)/etc/ipkg.conf +endif $(SED) 's,@HOST@,$(ADK_HOST),g' $(IDIR_BASE_FILES)/etc/ipkg.conf $(SED) 's,@VENDOR@,$(ADK_VENDOR),g' $(IDIR_BASE_FILES)/etc/ipkg.conf + mkdir -p $(IDIR_BASE_FILES)/usr/lib/ipkg/lists +endif echo /bin/sh >${IDIR_BASE_FILES}/etc/shells echo /bin/mksh >>${IDIR_BASE_FILES}/etc/shells ifneq (${ADK_PACKAGE_ASH},) @@ -43,47 +50,24 @@ endif ifneq (${ADK_PACKAGE_ZSH},) echo /bin/zsh >>${IDIR_BASE_FILES}/etc/shells endif - mkdir -p $(IDIR_BASE_FILES)/usr/lib/ipkg/lists mkdir -p $(IDIR_BASE_FILES)/etc/crontabs mkdir -p $(IDIR_BASE_FILES)/{dev,boot,root,sys,proc,tmp,mnt} mkdir -p $(IDIR_BASE_FILES)/etc/network/{if-pre-up.d,if-up.d,if-down.d,if-post-down.d} mkdir -p $(IDIR_BASE_FILES)/usr/{lib,bin} - chmod 755 $(IDIR_BASE_FILES)/lib/mdev/init chmod 600 $(IDIR_BASE_FILES)/etc/shadow chmod 600 $(IDIR_BASE_FILES)/etc/network/interfaces + (cd $(IDIR_BASE_FILES)/etc; ln -sf ../tmp/resolv.conf .) chmod 1777 ${IDIR_BASE_FILES}/tmp ln -sf ../proc/mounts $(IDIR_BASE_FILES)/etc/mtab rm -rf $(IDIR_BASE_FILES)/var ln -sf tmp $(IDIR_BASE_FILES)/var - test -z $(ADK_RUNTIME_CONSOLE_VGA) || \ + test -z $(ADK_RUNTIME_SHELL) || \ + cat ./files/inittab.shell >> $(IDIR_BASE_FILES)/etc/inittab + test -z $(ADK_RUNTIME_GETTY_VGA) || \ cat ./files/inittab.vga >> $(IDIR_BASE_FILES)/etc/inittab - test -z $(ADK_RUNTIME_CONSOLE_SERIAL) || \ - cat ./files/inittab.serial >> $(IDIR_BASE_FILES)/etc/inittab - test -z $(ADK_RUNTIME_CONSOLE_BOTH) || \ + test -z $(ADK_RUNTIME_GETTY_SERIAL) || \ cat ./files/inittab.serial >> $(IDIR_BASE_FILES)/etc/inittab - test -z $(ADK_RUNTIME_CONSOLE_BOTH) || \ - cat ./files/inittab.vga >> $(IDIR_BASE_FILES)/etc/inittab -ifeq ($(ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB),y) - $(SED) 's#ttyS#ttyAMA#g' $(IDIR_BASE_FILES)/etc/inittab -endif -ifeq ($(ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9),y) - $(SED) 's#ttyS#ttyAMA#g' $(IDIR_BASE_FILES)/etc/inittab -endif -ifeq ($(ADK_TARGET_SYSTEM_ARANYM_M68K),y) - $(SED) 's#ttyS#nfcon#g' $(IDIR_BASE_FILES)/etc/inittab -endif -ifeq ($(ADK_TARGET_SYSTEM_QEMU_PPC64),y) - $(SED) 's#ttyS#hvc#g' $(IDIR_BASE_FILES)/etc/inittab -endif -ifeq ($(ADK_TARGET_SYSTEM_QEMU_SH4),y) - $(SED) 's#ttyS0#ttySC1#g' $(IDIR_BASE_FILES)/etc/inittab -endif -ifeq ($(ADK_TARGET_SYSTEM_QEMU_SH4EB),y) - $(SED) 's#ttyS0#ttySC1#g' $(IDIR_BASE_FILES)/etc/inittab -endif -ifeq ($(ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800),y) - $(SED) 's#ttyS#ttyUL#g' $(IDIR_BASE_FILES)/etc/inittab -endif + $(SED) 's#@DEVICE@#$(ADK_RUNTIME_CONSOLE_SERIAL_DEVICE)#g' $(IDIR_BASE_FILES)/etc/inittab $(SED) 's#@SPEED@#$(ADK_RUNTIME_CONSOLE_SERIAL_SPEED)#' $(IDIR_BASE_FILES)/etc/inittab test -z $(ADK_RUNTIME_HOSTNAME) || \ echo $(ADK_RUNTIME_HOSTNAME) > $(IDIR_BASE_FILES)/etc/hostname; \ @@ -93,7 +77,8 @@ endif test -z $(ADK_RUNTIME_PASSWORD) || \ $(SED) 's,\*NP\*,'"$$($(STAGING_HOST_DIR)/usr/bin/mkcrypt \ ${ADK_RUNTIME_PASSWORD}),g" $(IDIR_BASE_FILES)/etc/shadow - git log -1|head -1|sed -e 's#commit ##' \ + test -z $(GIT) || \ + $(GIT) log -1|head -1|sed -e 's#commit ##' \ > $(IDIR_BASE_FILES)/etc/adkversion test -z $(ADK_TARGET_SYSTEM) || \ echo $(ADK_TARGET_SYSTEM) > $(IDIR_BASE_FILES)/etc/adktarget @@ -102,23 +87,20 @@ ifneq (${ADK_PACKAGE_CONFIG_IN_ETC},) gzip -9c ${TOPDIR}/.config >$(IDIR_BASE_FILES)/etc/adkconfig.gz chmod 600 $(IDIR_BASE_FILES)/etc/adkconfig.gz endif -ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI),y) - echo 'export LD_LIBRARY_PATH=/opt/vc/lib' >> $(IDIR_BASE_FILES)/etc/profile -ifneq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI)$(ADK_TARGET_SYSTEM_IBM_X40)$(ADK_TARGET_SYSTEM_LEMOTE_YEELONG),) +ifeq ($(ADK_TARGET_WITH_ROOT_RW),y) echo 'export IPKGTMPDIR=/root/.ipkg' >> $(IDIR_BASE_FILES)/etc/profile else - echo 'export IPKGTMPDIR=/tmp >> $(IDIR_BASE_FILES)/etc/profile + echo 'export IPKGTMPDIR=/tmp' >> $(IDIR_BASE_FILES)/etc/profile endif - +ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI),y) + echo 'export LD_LIBRARY_PATH=/opt/vc/lib' >> $(IDIR_BASE_FILES)/etc/profile endif # simple network configuration ifneq (${ADK_SIMPLE_NETWORK_CONFIG},) ${INSTALL_DIR} ${IDIR_BASE_FILES}/etc/network - # network config local echo -e "auto lo\niface lo inet loopback" > ${IDIR_BASE_FILES}/etc/network/interfaces - # network config eth0 # configure nic with dhcp ifeq (${SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC},y) @@ -145,12 +127,10 @@ ifeq (${SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP},y) echo -e " broadcast ${SIMPLE_NETWORK_CONFIG_ETH0_BC}" >> ${IDIR_BASE_FILES}/etc/network/interfaces echo -e " bridge-ports ${SIMPLE_NETWORK_CONFIG_ETH0_BRIDGE}" >> ${IDIR_BASE_FILES}/etc/network/interfaces endif - # network config wlan0 ifeq (${SIMPLE_NETWORK_CONFIG_WLAN0_TYPE_NIC},y) echo -e "\nauto wlan0\niface wlan0 inet dhcp" >> ${IDIR_BASE_FILES}/etc/network/interfaces endif - # network config eth1 # configure nic with dhcp ifeq (${SIMPLE_NETWORK_CONFIG_ETH1_TYPE_NIC},y) @@ -177,13 +157,11 @@ ifeq (${SIMPLE_NETWORK_CONFIG_ETH1_TYPE_BRIDGE_IP},y) echo -e " broadcast ${SIMPLE_NETWORK_CONFIG_ETH1_BC}" >> ${IDIR_BASE_FILES}/etc/network/interfaces echo -e " bridge-ports ${SIMPLE_NETWORK_CONFIG_ETH1_BRIDGE}" >> ${IDIR_BASE_FILES}/etc/network/interfaces endif - # newline at the end of interfaces file echo -en "\n" >> ${IDIR_BASE_FILES}/etc/network/interfaces - # resolver config + rm ${IDIR_BASE_FILES}/etc/resolv.conf echo -e "nameserver ${SIMPLE_NETWORK_CONFIG_RESOLV}" > ${IDIR_BASE_FILES}/etc/resolv.conf endif - include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/base-files/files/inittab.serial b/package/base-files/files/inittab.serial index 5de880f2a..dcb09e438 100644 --- a/package/base-files/files/inittab.serial +++ b/package/base-files/files/inittab.serial @@ -1 +1 @@ -ttyS0::respawn:/sbin/getty -i -L ttyS0 @SPEED@ vt100 +@DEVICE@::respawn:/sbin/getty -i -L @DEVICE@ @SPEED@ vt100 diff --git a/package/base-files/files/inittab.shell b/package/base-files/files/inittab.shell new file mode 100644 index 000000000..d12593ca1 --- /dev/null +++ b/package/base-files/files/inittab.shell @@ -0,0 +1 @@ +::askfirst:-/bin/sh diff --git a/package/base-files/src/etc/fstab b/package/base-files/src/etc/fstab index 5c09c2510..d5f900202 100644 --- a/package/base-files/src/etc/fstab +++ b/package/base-files/src/etc/fstab @@ -6,3 +6,5 @@ devpts /dev/pts devpts defaults,gid=5,mode=620 0 0 tmpfs /dev/shm tmpfs mode=0777 0 0 tmpfs /tmp tmpfs mode=1777 0 0 sysfs /sys sysfs defaults 0 0 +# example for cifs +#//192.168.1.1/music /music/test cifs ro,password=linux123,username=adk,iocharset=utf8,sec=ntlm 0 0 diff --git a/package/base-files/src/etc/init.d/boot b/package/base-files/src/etc/init.d/boot index fc2f79ac2..291bf6ab4 100644 --- a/package/base-files/src/etc/init.d/boot +++ b/package/base-files/src/etc/init.d/boot @@ -15,6 +15,7 @@ mount -o remount,nosuid,nodev,mode=1777,size=${size}k -t tmpfs tmpfs /tmp # start mdev dynamic device node management echo >/dev/mdev.seq echo "/sbin/mdev" >/proc/sys/kernel/hotplug +# creates f.e. /dev/root mdev -s # seed some random @@ -26,9 +27,9 @@ cat /etc/.rnd >/dev/urandom 2>&1 # create some useful directories in tmpfs mkdir -p /var/log mkdir -p /var/run +mkdir -p /var/tmp touch /var/log/lastlog touch /var/log/wtmp -ln -s /tmp /var/tmp HOSTNAME= [[ -s /etc/hostname ]] && HOSTNAME=$(cat /etc/hostname) diff --git a/package/base-files/src/etc/init.d/fs b/package/base-files/src/etc/init.d/fs index 75ae760e0..8f4397897 100644 --- a/package/base-files/src/etc/init.d/fs +++ b/package/base-files/src/etc/init.d/fs @@ -1,20 +1,53 @@ #!/bin/sh -#INIT 60 +#INIT 20 [[ $1 = autostart ]] || exit 0 -# mount net filesystems (nfs/cifs) -grep nfs /proc/filesystems >/dev/null 2>&1 +# activate swap +[ -x /sbin/swapon ] && { swapon -a; } + +# activate any logical volumes +[ -x /usr/sbin/lvm ] && { lvm vgscan; lvm vgchange -ay; } + +# filesystem checks +[ -x /sbin/fsck.ext2 ] && { + for i in $(grep -v "^#" /etc/fstab|grep ext2|awk '{ print $1}');do fsck.ext2 $i;done; +} +[ -x /sbin/fsck.ext3 ] && { + for i in $(grep -v "^#" /etc/fstab|grep ext3|awk '{ print $1}');do fsck.ext3 $i;done; +} +[ -x /sbin/fsck.ext4 ] && { + for i in $(grep -v "^#" /etc/fstab|grep ext4|awk '{ print $1}');do fsck.ext4 $i;done; +} +[ -x /sbin/fsck.xfs ] && { + for i in $(grep -v "^#" /etc/fstab|grep xfs|awk '{ print $1}');do xfs_repair $i;done; +} +# local filesystems +grep ext2 /proc/filesystems >/dev/null 2>&1 +if [ $? -eq 0 ];then + grep -v "^#" /etc/fstab |grep ext2 >/dev/null 2>&1 + if [ $? -eq 0 ];then + mount -a -t ext2 + fi +fi +grep ext3 /proc/filesystems >/dev/null 2>&1 +if [ $? -eq 0 ];then + grep -v "^#" /etc/fstab |grep ext3 >/dev/null 2>&1 + if [ $? -eq 0 ];then + mount -a -t ext3 + fi +fi +grep ext4 /proc/filesystems >/dev/null 2>&1 if [ $? -eq 0 ];then - grep -v "^#" /etc/fstab| grep nfs >/dev/null 2>&1 + grep -v "^#" /etc/fstab |grep ext4 >/dev/null 2>&1 if [ $? -eq 0 ];then - mount -a -t nfs + mount -a -t ext4 fi fi -grep cifs /proc/filesystems >/dev/null 2>&1 +grep xfs /proc/filesystems >/dev/null 2>&1 if [ $? -eq 0 ];then - grep -v "^#" /etc/fstab| grep cifs >/dev/null 2>&1 + grep -v "^#" /etc/fstab |grep xfs >/dev/null 2>&1 if [ $? -eq 0 ];then - mount -a -t cifs + mount -a -t xfs fi fi exit 0 diff --git a/package/base-files/src/etc/init.d/fsnet b/package/base-files/src/etc/init.d/fsnet index 8f4397897..75ae760e0 100644 --- a/package/base-files/src/etc/init.d/fsnet +++ b/package/base-files/src/etc/init.d/fsnet @@ -1,53 +1,20 @@ #!/bin/sh -#INIT 20 +#INIT 60 [[ $1 = autostart ]] || exit 0 -# activate swap -[ -x /sbin/swapon ] && { swapon -a; } - -# activate any logical volumes -[ -x /usr/sbin/lvm ] && { lvm vgscan; lvm vgchange -ay; } - -# filesystem checks -[ -x /sbin/fsck.ext2 ] && { - for i in $(grep -v "^#" /etc/fstab|grep ext2|awk '{ print $1}');do fsck.ext2 $i;done; -} -[ -x /sbin/fsck.ext3 ] && { - for i in $(grep -v "^#" /etc/fstab|grep ext3|awk '{ print $1}');do fsck.ext3 $i;done; -} -[ -x /sbin/fsck.ext4 ] && { - for i in $(grep -v "^#" /etc/fstab|grep ext4|awk '{ print $1}');do fsck.ext4 $i;done; -} -[ -x /sbin/fsck.xfs ] && { - for i in $(grep -v "^#" /etc/fstab|grep xfs|awk '{ print $1}');do xfs_repair $i;done; -} -# local filesystems -grep ext2 /proc/filesystems >/dev/null 2>&1 -if [ $? -eq 0 ];then - grep -v "^#" /etc/fstab |grep ext2 >/dev/null 2>&1 - if [ $? -eq 0 ];then - mount -a -t ext2 - fi -fi -grep ext3 /proc/filesystems >/dev/null 2>&1 -if [ $? -eq 0 ];then - grep -v "^#" /etc/fstab |grep ext3 >/dev/null 2>&1 - if [ $? -eq 0 ];then - mount -a -t ext3 - fi -fi -grep ext4 /proc/filesystems >/dev/null 2>&1 +# mount net filesystems (nfs/cifs) +grep nfs /proc/filesystems >/dev/null 2>&1 if [ $? -eq 0 ];then - grep -v "^#" /etc/fstab |grep ext4 >/dev/null 2>&1 + grep -v "^#" /etc/fstab| grep nfs >/dev/null 2>&1 if [ $? -eq 0 ];then - mount -a -t ext4 + mount -a -t nfs fi fi -grep xfs /proc/filesystems >/dev/null 2>&1 +grep cifs /proc/filesystems >/dev/null 2>&1 if [ $? -eq 0 ];then - grep -v "^#" /etc/fstab |grep xfs >/dev/null 2>&1 + grep -v "^#" /etc/fstab| grep cifs >/dev/null 2>&1 if [ $? -eq 0 ];then - mount -a -t xfs + mount -a -t cifs fi fi exit 0 diff --git a/package/base-files/src/etc/init.d/rcK b/package/base-files/src/etc/init.d/rcK index 9d0e06440..938882ae5 100755 --- a/package/base-files/src/etc/init.d/rcK +++ b/package/base-files/src/etc/init.d/rcK @@ -4,15 +4,6 @@ export PATH=/bin:/sbin:/usr/bin:/usr/sbin grep '^#INIT ' /etc/init.d/* | \ sort -rnk2 | \ while read line; do - shebang=$(sed -n '1s/^#![ ]*//p' ${line%%:*}) - case $shebang in - *[\ \ ]*) shebang=\'$(echo X"$shebang" | sed \ - -e 's/^X//' -e "s/'/'\\\\''/g" \ - -e 's/^\([^ ][^ ]*\)[ ]*$/\1/' \ - -e 's/^\([^ ][^ ]*\)[ ][ ]*\(..*\)$/\1 \2/' \ - -e 's/^\([^ ][^ ]*\) /\1'\'' '\''/')\' ;; - esac - ${shebang:-/bin/sh} ${line%%:*} autostop 2>&1 + sh ${line%%:*} autostop done - test -e /etc/rc.shutdown && (/bin/sh /etc/rc.shutdown) 2>&1 } | logger -s -p 6 -t '' diff --git a/package/base-files/src/etc/init.d/rcS b/package/base-files/src/etc/init.d/rcS index 9daa8f5cd..e27bc9eb5 100755 --- a/package/base-files/src/etc/init.d/rcS +++ b/package/base-files/src/etc/init.d/rcS @@ -3,13 +3,13 @@ if [ -f /proc/sys/kernel/printk ];then echo 0 > /proc/sys/kernel/printk fi +ln -s /proc/self/fd/2 /dev/stderr echo "System initialization ..." export PATH=/bin:/sbin:/usr/bin:/usr/sbin -ln -s /proc/self/fd/2 /dev/stderr { grep '^#INIT ' /etc/init.d/* | \ sort -nk2 | \ while read line; do sh ${line%%:*} autostart done -} | tee /dev/stderr |logger -p 6 -t '' +} |tee /dev/stderr |logger -p 6 -t '' diff --git a/package/base-files/src/etc/inittab b/package/base-files/src/etc/inittab index f6183798e..e2ad18156 100644 --- a/package/base-files/src/etc/inittab +++ b/package/base-files/src/etc/inittab @@ -6,5 +6,5 @@ null::sysinit:/bin/mount -a -t devpts null::sysinit:/bin/mount -a -t tmpfs ::sysinit:/etc/init.d/rcS ::shutdown:/etc/init.d/rcK -null::shutdown:/bin/umount -a -r +null::shutdown:/bin/umount -a -t ext4 null::shutdown:/sbin/swapoff -a diff --git a/package/base-files/src/etc/ipkg.conf b/package/base-files/src/etc/ipkg.conf index cef6d2845..9c5ae17d3 100644 --- a/package/base-files/src/etc/ipkg.conf +++ b/package/base-files/src/etc/ipkg.conf @@ -1,3 +1,3 @@ -src @VENDOR@ http://@HOST@/@SYSTEM@_@ARCH@_@LIBC@/packages +src @VENDOR@ http://@HOST@/pkg/@SYSTEM@_@ARCH@_@LIBC@@ABI@/packages dest root / dest ram /tmp diff --git a/package/base-files/src/etc/mdev.conf b/package/base-files/src/etc/mdev.conf index fc63d80d9..0a24ef04b 100644 --- a/package/base-files/src/etc/mdev.conf +++ b/package/base-files/src/etc/mdev.conf @@ -15,4 +15,3 @@ snd/controlC0 root:audio 660 snd/pcmC0D0c root:audio 660 snd/pcmC0D0p root:audio 660 msr0 root:root 660 @(mkdir -p /dev/cpu/0 && ln -sf /dev/msr0 /dev/cpu/0/msr) -.* 0:0 644 @/lib/mdev/init diff --git a/package/base-files/src/etc/profile b/package/base-files/src/etc/profile index ce425b54c..eb3015d46 100644 --- a/package/base-files/src/etc/profile +++ b/package/base-files/src/etc/profile @@ -12,3 +12,5 @@ cat /etc/banner 2>&- alias l='ls -lF' alias la='ls -A' alias ll='ls -alF' +alias ro='mount -o remount,ro /' +alias rw='mount -o remount,rw /' diff --git a/package/base-files/src/etc/rc.shutdown b/package/base-files/src/etc/rc.shutdown deleted file mode 100644 index 5a1a0aa78..000000000 --- a/package/base-files/src/etc/rc.shutdown +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -# add code for shutdown routine diff --git a/package/base-files/src/init b/package/base-files/src/init deleted file mode 100755 index a27548217..000000000 --- a/package/base-files/src/init +++ /dev/null @@ -1,7 +0,0 @@ -#!/bin/sh -# devtmpfs does not get automounted for initramfs -/bin/mount -t devtmpfs devtmpfs /dev -exec 0</dev/console -exec 1>/dev/console -exec 2>/dev/console -exec /sbin/init $* diff --git a/package/base-files/src/lib/mdev/init b/package/base-files/src/lib/mdev/init deleted file mode 100644 index a478abecd..000000000 --- a/package/base-files/src/lib/mdev/init +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/sh -if [ "$SUBSYSTEM" == "pcmcia_socket" ];then - logger "Setting up PCMCIA socket resource database" - if [ "$ACTION" == "add" ];then - /usr/sbin/pcmcia-socket-startup - fi -fi -if [ "$SUBSYSTEM" == "usb" ];then - if [ "$ACTION" == "add" ];then - if [ "$DEVTYPE" == "usb_device" ];then - if [ "$PRODUCT" == "12d1/1003/0" ];then - if [ ! -f /tmp/.huawei ];then - logger "USB device added with: $PRODUCT" - usbmods=$(lsmod|grep ^usbserial|awk '{ print $4 }'|sed -e 's/,/ /g') - for i in $usbmods;do rmmod $i;done - rmmod usbserial - lsmod >> /tmp/debug - test -x /sbin/huawei && /sbin/huawei >> /tmp/debug - insmod /lib/modules/$(uname -r)/usbserial.ko product=0x1003 vendor=0x12d1 - for i in $usbmods;do insmod /lib/modules/$(uname -r)/$i.ko; done - - touch /tmp/.huawei - fi - fi - fi - fi -fi diff --git a/package/base-files/src/usr/share/udhcpc/default.script b/package/base-files/src/usr/share/udhcpc/default.script index 3744dfb09..55a6655ab 100755 --- a/package/base-files/src/usr/share/udhcpc/default.script +++ b/package/base-files/src/usr/share/udhcpc/default.script @@ -23,16 +23,12 @@ case $1 in ip route add to default via $i done fi - - touch /tmp/resolv.conf - ln -sf /tmp/resolv.conf $RESOLV_CONF echo -n >$RESOLV_CONF ${domain:+echo search $domain} >>$RESOLV_CONF for i in $dns; do echo "adding dns $i" echo "nameserver $i" >>$RESOLV_CONF done - # user rules [ -f /etc/udhcpc.user ] && . /etc/udhcpc.user ;; diff --git a/package/bash/Makefile b/package/bash/Makefile index dc5c5b911..801d5920a 100644 --- a/package/bash/Makefile +++ b/package/bash/Makefile @@ -4,9 +4,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:= bash -PKG_VERSION:= 4.2 -PKG_RELEASE:= 2 -PKG_MD5SUM:= 3fb927c7c33022f1c327f14a81c0d4b0 +PKG_VERSION:= 4.3 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 81348932d5da294953e15d4814c74dd1 PKG_DESCR:= Bourne-Again SHell PKG_SECTION:= shells PKG_URL:= http://www.gnu.org/software/bash/ diff --git a/package/bash/patches/patch-Makefile_in b/package/bash/patches/patch-Makefile_in deleted file mode 100644 index 8e6cfb1ac..000000000 --- a/package/bash/patches/patch-Makefile_in +++ /dev/null @@ -1,13 +0,0 @@ ---- bash-4.2.orig/Makefile.in 2010-12-01 01:22:42.000000000 +0100 -+++ bash-4.2/Makefile.in 2011-03-09 20:03:07.163370779 +0100 -@@ -710,8 +710,8 @@ pathnames.h: Makefile $(srcdir)/pathnam - @${RM} pathnames.tmp - - # comment out for distribution --$(srcdir)/configure: $(srcdir)/configure.in $(srcdir)/aclocal.m4 $(srcdir)/config.h.in -- cd $(srcdir) && autoconf -+#$(srcdir)/configure: $(srcdir)/configure.in $(srcdir)/aclocal.m4 $(srcdir)/config.h.in -+# cd $(srcdir) && autoconf - - # for chet - reconfig: force diff --git a/package/bash/patches/patch-builtins_Makefile_in b/package/bash/patches/patch-builtins_Makefile_in deleted file mode 100644 index 69c175663..000000000 --- a/package/bash/patches/patch-builtins_Makefile_in +++ /dev/null @@ -1,11 +0,0 @@ ---- bash-4.0.orig/builtins/Makefile.in 2009-01-04 20:32:22.000000000 +0100 -+++ bash-4.0/builtins/Makefile.in 2009-10-21 13:17:04.681674304 +0200 -@@ -56,7 +56,7 @@ LIBBUILD = ${BUILD_DIR}/lib - - PROFILE_FLAGS = @PROFILE_FLAGS@ - CFLAGS = @CFLAGS@ --CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@ @CROSS_COMPILE@ -+CFLAGS_FOR_BUILD = @CFLAGS_FOR_BUILD@ - CPPFLAGS = @CPPFLAGS@ - CPPFLAGS_FOR_BUILD = @CPPFLAGS_FOR_BUILD@ - LOCAL_CFLAGS = @LOCAL_CFLAGS@ ${DEBUG} diff --git a/package/bc/Makefile b/package/bc/Makefile index 2a5c59900..d35659ed8 100644 --- a/package/bc/Makefile +++ b/package/bc/Makefile @@ -7,7 +7,7 @@ PKG_NAME:= bc PKG_VERSION:= 1.06 PKG_RELEASE:= 1 PKG_MD5SUM:= d44b5dddebd8a7a7309aea6c36fda117 -PKG_DESCR:= An arbitrary precision calculator language +PKG_DESCR:= arbitrary precision calculator language PKG_SECTION:= utils PKG_BUILDDEP:= m4-host flex-host PKG_URL:= http://www.gnu.org/software/bc/ @@ -15,11 +15,15 @@ PKG_SITES:= http://ftp.gnu.org/pub/gnu/bc/ PKG_SUBPKGS:= BC DC +include ${TOPDIR}/mk/host.mk include ${TOPDIR}/mk/package.mk +$(eval $(call HOST_template,BC,bc,${PKG_VERSION}-${PKG_RELEASE})) $(eval $(call PKG_template,BC,bc,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) $(eval $(call PKG_template,DC,dc,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +HOST_STYLE:= auto + bc-install: ${INSTALL_DIR} ${IDIR_BC}/usr/bin ${INSTALL_BIN} ${WRKBUILD}/bc/bc ${IDIR_BC}/usr/bin/bc @@ -28,4 +32,5 @@ dc-install: ${INSTALL_DIR} ${IDIR_DC}/usr/bin ${INSTALL_BIN} ${WRKBUILD}/dc/dc ${IDIR_DC}/usr/bin/dc +include ${TOPDIR}/mk/host-bottom.mk include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/bcm2835-bootloader/Makefile b/package/bcm2835-bootloader/Makefile index 8cd28cdd3..b88cd7f08 100644 --- a/package/bcm2835-bootloader/Makefile +++ b/package/bcm2835-bootloader/Makefile @@ -4,11 +4,11 @@ include ${TOPDIR}/rules.mk PKG_NAME:= bcm2835-bootloader -# actually f46e6d9cb9a6bf419fe2a428a8a586239e93aa2d from 07.01.2014 +# actually 9953ce0847c04b587b694c79c5b5a4ac63f5c369 from 25.03.2014 # https://github.com/raspberrypi/firmware -PKG_VERSION:= 0.6 +PKG_VERSION:= 0.7 PKG_RELEASE:= 1 -PKG_MD5SUM:= dba84ce20fc8a8c1bf473758d9350e19 +PKG_MD5SUM:= 7ad7e5d3ad311d88d1e82fc729042d87 PKG_DESCR:= bootloader for raspberry pi (bcm2835) PKG_SECTION:= boot PKG_SITES:= http://openadk.org/distfiles/ diff --git a/package/bcm2835-vc/Makefile b/package/bcm2835-vc/Makefile index e6405bf38..12655228c 100644 --- a/package/bcm2835-vc/Makefile +++ b/package/bcm2835-vc/Makefile @@ -4,11 +4,12 @@ include ${TOPDIR}/rules.mk PKG_NAME:= bcm2835-vc -# actually f65a4eef05ee436976f9be219d3db841d3d6b8ec from 05.10.2013 -PKG_VERSION:= 0.3 -PKG_RELEASE:= 3 -PKG_MD5SUM:= 027d42d1ba803fabdc6bc4ec78d52e67 -PKG_DESCR:= vc tools for raspberry pi (bcm2835) +# actually a8fbe2cd6a3d4455344295809f2e663373ad25cb from 25.03.2014 +# https://github.com/raspberrypi/userland +PKG_VERSION:= 0.4 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 091ae422e05a59ffc2b8908256047b7d +PKG_DESCR:= vc tools and libraries for raspberry pi PKG_SECTION:= base PKG_DEPENDS:= libpthread PKG_BUILDDEP:= cmake-host diff --git a/package/binutils/Makefile b/package/binutils/Makefile index c23bac585..1a6014607 100644 --- a/package/binutils/Makefile +++ b/package/binutils/Makefile @@ -25,10 +25,10 @@ include ${TOPDIR}/mk/package.mk $(eval $(call PKG_template,BINUTILS,${PKG_NAME},${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) $(eval $(call PKG_template,LIBBFD,libbfd,${PKG_VERSION}-${PKG_RELEASE},,${PKGSD_LIBBFD},${PKGSC_LIBBFD},${PKG_OPTS})) -ifeq ($(ADK_TARGET_WITH_MULTILIB),y) -CONFIGURE_ARGS+= --enable-multilib -else +ifeq ($(ADK_LINUX_SH)$(ADK_LINUX_X86_64),) CONFIGURE_ARGS+= --disable-multilib +else +CONFIGURE_ARGS+= --enable-multilib endif TARGET_CFLAGS:= $(filter-out -flto,$(TARGET_CFLAGS)) @@ -39,8 +39,8 @@ CONFIGURE_ARGS+= --disable-werror \ # disable honour cflags stuff XAKE_FLAGS+= GCC_HONOUR_COPTS=s -post-build: - $(CP) ${WRKBUILD}/libiberty/libiberty.a $(STAGING_TARGET_DIR)/usr/lib +pre-build: + @-rm $(STAGING_TARGET_DIR)/usr/lib/libiberty.a libbfd-install: ${INSTALL_DIR} ${IDIR_LIBBFD}/usr/lib diff --git a/package/bison/Makefile b/package/bison/Makefile index ee268b641..bae66f25b 100644 --- a/package/bison/Makefile +++ b/package/bison/Makefile @@ -4,17 +4,16 @@ include ${TOPDIR}/rules.mk PKG_NAME:= bison -PKG_VERSION:= 3.0.1 +PKG_VERSION:= 3.0.2 PKG_RELEASE:= 1 -PKG_MD5SUM:= 032a7b7b9f1a6e278ccde73f82cec5c2 -PKG_DESCR:= GNU parser generator +PKG_MD5SUM:= 72c66879187c128d04f4ab7422e8072d +PKG_DESCR:= parser generator PKG_SECTION:= lang PKG_BUILDDEP:= m4-host flex-host bison-host +HOST_BUILDDEP:= m4-host flex-host PKG_URL:= http://www.gnu.org/software/bison/ PKG_SITES:= ${MASTER_SITE_GNU:=${PKG_NAME}/} -DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.xz - include ${TOPDIR}/mk/host.mk include ${TOPDIR}/mk/package.mk diff --git a/package/boost/Makefile b/package/boost/Makefile index a2a92df00..ab7b73097 100644 --- a/package/boost/Makefile +++ b/package/boost/Makefile @@ -5,7 +5,7 @@ include ${TOPDIR}/rules.mk PKG_NAME:= boost PKG_VERSION:= 1.55.0 -PKG_RELEASE:= 4 +PKG_RELEASE:= 5 PKG_MD5SUM:= 93780777cfbf999a600f62883bd54b17 PKG_DESCR:= boost C++ library PKG_SECTION:= libs @@ -105,7 +105,7 @@ BOOST_ARCH:= $(ARCH) endif # some variables for build -GPP_PATH:= ${STAGING_HOST_DIR}/bin/${GNU_TARGET_NAME}-g++ +GPP_PATH:= ${TOOLCHAIN_DIR}/usr/bin/${GNU_TARGET_NAME}-g++ GPP_VERSION:= "`${GPP_PATH} -v 2>&1 | tail -1 | awk '{print $$3}'`" BJAM_PATH:= "`find ${WRKBUILD} -type f -name "bjam$(EXEEXT)"`" PYTHON_PATH:= ${STAGING_HOST_DIR}/usr/bin/python diff --git a/package/busybox/Makefile b/package/busybox/Makefile index c1923708e..fce16fa32 100644 --- a/package/busybox/Makefile +++ b/package/busybox/Makefile @@ -9,6 +9,7 @@ PKG_RELEASE:= 5 PKG_MD5SUM:= 795394f83903b5eec6567d51eebb417e PKG_DESCR:= core utilities for embedded systems PKG_SECTION:= base +PKG_BUILDDEP:= bzip2-host PKG_URL:= http://www.busybox.net/ PKG_SITES:= http://www.busybox.net/downloads/ diff --git a/package/busybox/config/Config.in b/package/busybox/config/Config.in index 3a5e340ae..40f67caa7 100644 --- a/package/busybox/config/Config.in +++ b/package/busybox/config/Config.in @@ -454,6 +454,7 @@ menu 'Build Options' config BUSYBOX_STATIC bool "Build BusyBox as a static binary (no shared libs)" + default y if ADK_STATIC default n help If you want to build a static BusyBox binary, which does not diff --git a/package/busybox/config/util-linux/Config.in b/package/busybox/config/util-linux/Config.in index aafc795b1..026146662 100644 --- a/package/busybox/config/util-linux/Config.in +++ b/package/busybox/config/util-linux/Config.in @@ -572,7 +572,7 @@ config BUSYBOX_FEATURE_MOUNT_NFS config BUSYBOX_FEATURE_MOUNT_CIFS bool "Support mounting CIFS/SMB file systems" - default y + default n depends on BUSYBOX_MOUNT help Enable support for samba mounts. diff --git a/package/bzip2/Makefile b/package/bzip2/Makefile index 5585ae0c1..c4b6ebe48 100644 --- a/package/bzip2/Makefile +++ b/package/bzip2/Makefile @@ -32,6 +32,7 @@ $(eval $(call PKG_template,BZIP2,bzip2,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPEN $(eval $(call PKG_template,LIBBZ2,libbz2,${PKG_VERSION}-${PKG_RELEASE},,${PKGSD_LIBBZ2},${PKGSC_LIBBZ2},${PKG_OPTS})) HOST_STYLE:= manual +HOST_MAKE_FILE:= Makefile MAKE_FILE:= Makefile-libbz2_so CONFIG_STYLE:= manual TARGET_CFLAGS+= -fPIC @@ -39,16 +40,12 @@ XAKE_FLAGS+= PREFIX=${WRKINST}/usr CROSS_COMPILE=1 INSTALL_STYLE:= manual host-build: - (cd ${WRKBUILD} && env ${HOST_MAKE_ENV} ${MAKE} -f ${MAKE_FILE} \ + (cd ${WRKBUILD} && env ${HOST_MAKE_ENV} ${MAKE} -f ${HOST_MAKE_FILE} \ PREFIX=${HOST_WRKINST}/usr ${HOST_ALL_TARGET}) bzip2-hostinstall: - ${INSTALL_DIR} ${STAGING_HOST_DIR}/usr/lib - ${INSTALL_DIR} $(STAGING_HOST_DIR)/usr/include - $(CP) ${WRKBUILD}/libbz2.so* \ - ${STAGING_HOST_DIR}/usr/lib - (cd ${STAGING_HOST_DIR}/usr/lib; ln -sf libbz2.so.1.0.6 libbz2.so) - $(CP) $(WRKBUILD)/bzlib.h $(STAGING_HOST_DIR)/usr/include + ${INSTALL_DIR} ${STAGING_HOST_DIR}/usr/bin + $(INSTALL_BIN) ${WRKBUILD}/bzip2 ${STAGING_HOST_DIR}/usr/bin/bzip2 libbz2-install: ${INSTALL_DIR} ${IDIR_LIBBZ2}/usr/lib diff --git a/package/ccache/Makefile b/package/ccache/Makefile new file mode 100644 index 000000000..c61f1c4d9 --- /dev/null +++ b/package/ccache/Makefile @@ -0,0 +1,24 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(TOPDIR)/rules.mk + +PKG_NAME:= ccache +PKG_VERSION:= 3.1.9 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 367916e4ecba4968f77f59a378e61458 +PKG_DESCR:= ccache utility +PKG_SECTION:= misc +PKG_SITES:= http://samba.org/ftp/ccache/ + +PKG_CFLINE_CCACHE:= depends on ADK_HOST_ONLY + +include $(TOPDIR)/mk/host.mk +include $(TOPDIR)/mk/package.mk + +$(eval $(call HOST_template,CCACHE,ccache,$(PKG_VERSION)-${PKG_RELEASE})) + +HOST_STYLE:= auto + +include ${TOPDIR}/mk/host-bottom.mk +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/cdrtools/Makefile b/package/cdrtools/Makefile index 6bf16ab17..612a553bc 100644 --- a/package/cdrtools/Makefile +++ b/package/cdrtools/Makefile @@ -8,28 +8,27 @@ PKG_VERSION:= 3.01 PKG_RELEASE:= 1 PKG_MD5SUM:= afd4563e335a614a11e042c7b6734d66 PKG_DESCR:= cdrtools -PKG_SECTION:= misc +PKG_SECTION:= fs PKG_URL:= http://cdrecord.berlios.de/private/cdrecord.html -PKG_SITES:= http://openadk.org/ +PKG_SITES:= ftp://ftp.berlios.de/pub/cdrecord/ -PKG_CFLINE_CDRTOOLS:= depends on ADK_BROKEN +PKG_CFLINE_CDRTOOLS:= depends on ADK_HOST_ONLY +include $(TOPDIR)/mk/host.mk include $(TOPDIR)/mk/package.mk -$(eval $(call PKG_template,CDRTOOLS,cdrtools,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +$(eval $(call HOST_template,CDRTOOLS,cdrtools,$(PKG_VERSION)-${PKG_RELEASE})) -CONFIG_STYLE:= manual -XAKE_FLAGS+= GCC_HONOUR_COPTS=s +HOST_STYLE:= manual -cdrtools-install: - $(INSTALL_DIR) $(IDIR_CDRTOOLS)/usr/bin - $(INSTALL_BIN) $(WRKINST)/opt/schily/bin/cdrecord \ - $(IDIR_CDRTOOLS)/usr/bin - $(INSTALL_BIN) $(WRKINST)/opt/schily/bin/readcd \ - $(IDIR_CDRTOOLS)/usr/bin - $(INSTALL_BIN) $(WRKINST)/opt/schily/bin/mkisofs \ - $(IDIR_CDRTOOLS)/usr/bin - $(INSTALL_BIN) $(WRKINST)/opt/schily/bin/cdda2wav \ - $(IDIR_CDRTOOLS)/usr/bin +host-build: + (cd ${WRKBUILD} && env ${HOST_MAKE_ENV} ${MAKE} -f ${MAKE_FILE} \ + ${HOST_MAKE_FLAGS} ${HOST_ALL_TARGET}) +cdrtools-hostinstall: + $(INSTALL_DIR) $(STAGING_HOST_DIR)/usr/bin + $(INSTALL_BIN) $(WRKBUILD)/mkisofs/OBJ/*/mkisofs \ + $(STAGING_HOST_DIR)/usr/bin + +include ${TOPDIR}/mk/host-bottom.mk include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/cfgfs/Makefile b/package/cfgfs/Makefile index a79bd73ca..3d1d41410 100644 --- a/package/cfgfs/Makefile +++ b/package/cfgfs/Makefile @@ -15,8 +15,8 @@ PKG_CFLINE_CFGFS:= select BUSYBOX_DIFF@ PKG_CFLINE_CFGFS+= select BUSYBOX_MD5SUM@ PKG_CFLINE_CFGFS+= select BUSYBOX_XARGS@ PKG_CFLINE_CFGFS+= select BUSYBOX_FEATURE_SORT_BIG@ -PKG_CFLINE_CFGFS+= depends on !ADK_TARGET_ROOTFS_NFSROOT && !ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK && !ADK_TARGET_ROOTFS_INITRAMFS && !ADK_TARGET_ROOTFS_JFFS2 && !ADK_TARGET_ROOTFS_SQUASHFS -PKG_DFLT_CFGFS:= y if !(ADK_TOOLCHAIN_ONLY || ADK_TOOLCHAIN_ARCHIVE) +PKG_CFLINE_CFGFS+= depends on !ADK_TARGET_ROOTFS_NFSROOT && !ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK && !ADK_TARGET_ROOTFS_INITRAMFS && !ADK_TARGET_ROOTFS_JFFS2 && !ADK_TARGET_ROOTFS_SQUASHFS && !ADK_TARGET_ROOTFS_ISO +PKG_DFLT_CFGFS:= y if !(ADK_TOOLCHAIN_ONLY || ADK_TOOLCHAIN_ARCHIVE || ADK_PKG_TEST) WRKDIST= ${WRKDIR}/${PKG_NAME}-${PKG_VERSION} NO_DISTFILES:= 1 diff --git a/package/check/Makefile b/package/check/Makefile new file mode 100644 index 000000000..3d7c2fb2b --- /dev/null +++ b/package/check/Makefile @@ -0,0 +1,26 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(TOPDIR)/rules.mk + +PKG_NAME:= check +PKG_VERSION:= 0.9.12 +PKG_RELEASE:= 2 +PKG_MD5SUM:= 46fe540d1a03714c7a1967dbc6d484e7 +PKG_DESCR:= unit testing framework for C +PKG_SECTION:= libs +PKG_URL:= http://check.sourceforge.net/ +PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=check/} +PKG_LIBNAME:= libcheck +PKG_OPTS:= dev + +include $(TOPDIR)/mk/package.mk + +$(eval $(call PKG_template,LIBCHECK,libcheck,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS})) + +libcheck-install: + $(INSTALL_DIR) $(IDIR_LIBCHECK)/usr/lib + $(CP) $(WRKINST)/usr/lib/libcheck*.so* \ + $(IDIR_LIBCHECK)/usr/lib + +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/cryptodev-linux/Makefile b/package/cryptodev-linux/Makefile index ecb827b09..64b27a8da 100644 --- a/package/cryptodev-linux/Makefile +++ b/package/cryptodev-linux/Makefile @@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:= cryptodev-linux PKG_VERSION:= 1.6 -PKG_RELEASE:= 2 +PKG_RELEASE:= 3 PKG_MD5SUM:= eade38998313c25fd7934719cdf8a2ea PKG_DESCR:= cryptodev-linux kernel module PKG_SECTION:= crypto @@ -26,7 +26,7 @@ INSTALL_STYLE:= manual do-build: ${MAKE} -C "${WRKBUILD}"/tests check ${MAKE} -C "${WRKBUILD}" version.h - GCC_HONOUR_COPTS=0 LDFLAGS="" ${MAKE} ${KERNEL_MAKE_OPTS} \ + GCC_HONOUR_COPTS=0 LDFLAGS="" ${MAKE} -C ${LINUX_DIR} ${KERNEL_MAKE_OPTS} \ M="${WRKBUILD}" modules ${INSTALL_DIR} ${WRKINST}/usr/include/crypto ${INSTALL_DATA} ${WRKBUILD}/crypto/cryptodev.h \ diff --git a/package/curl/Makefile b/package/curl/Makefile index f2fb4d573..7a03fcd9e 100644 --- a/package/curl/Makefile +++ b/package/curl/Makefile @@ -24,7 +24,7 @@ PKGSS_LIBCURL:= zlib PKG_FLAVOURS_CURL:= WITH_IPV6 PKGFD_WITH_IPV6:= enable IPv6 support -PKG_CHOICES_LIBCURL:= WITHOUT_SSL WITH_OPENSSL WITH_GNUTLS +PKG_CHOICES_LIBCURL:= WITH_GNUTLS WITH_OPENSSL WITHOUT_SSL PKGCD_WITHOUT_SSL:= use no SSL PKGCD_WITH_OPENSSL:= use OpenSSL for crypto PKGCS_WITH_OPENSSL:= libopenssl ca-certificates libgmp diff --git a/package/dbus-python/Makefile b/package/dbus-python/Makefile index 9645f7269..b73d43a6c 100644 --- a/package/dbus-python/Makefile +++ b/package/dbus-python/Makefile @@ -14,6 +14,8 @@ PKG_BUILDDEP:= dbus dbus-glib PKG_URL:= http://dbus.freedesktop.org/doc/dbus-python/ PKG_SITES:= http://dbus.freedesktop.org/releases/dbus-python/ +PKG_CFLINE_DBUS_PYTHON:= depends on ADK_BROKEN + include $(TOPDIR)/mk/package.mk $(eval $(call PKG_template,DBUS_PYTHON,dbus-python,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) diff --git a/package/dosfstools/Makefile b/package/dosfstools/Makefile index 1dd82182a..9292d49f3 100644 --- a/package/dosfstools/Makefile +++ b/package/dosfstools/Makefile @@ -5,7 +5,7 @@ include ${TOPDIR}/rules.mk PKG_NAME:= dosfstools PKG_VERSION:= 3.0.26 -PKG_RELEASE:= 2 +PKG_RELEASE:= 3 PKG_MD5SUM:= 45012f5f56f2aae3afcd62120b9e5a08 PKG_DESCR:= utilities to create and check FAT filesystems PKG_SECTION:= fs diff --git a/package/dosfstools/patches/patch-src_boot_c b/package/dosfstools/patches/patch-src_boot_c new file mode 100644 index 000000000..cd2dd927d --- /dev/null +++ b/package/dosfstools/patches/patch-src_boot_c @@ -0,0 +1,77 @@ +--- dosfstools-3.0.26.orig/src/boot.c 2014-01-17 07:06:54.000000000 +0100 ++++ dosfstools-3.0.26/src/boot.c 2014-03-26 13:20:59.000000000 +0100 +@@ -155,7 +155,7 @@ static void check_backup_boot(DOS_FS * f + fs->backupboot_start = bbs * lss; + b->backup_boot = htole16(bbs); + fs_write(fs->backupboot_start, sizeof(*b), b); +- fs_write((loff_t) offsetof(struct boot_sector, backup_boot), ++ fs_write((off_t) offsetof(struct boot_sector, backup_boot), + sizeof(b->backup_boot), &b->backup_boot); + printf("Created backup of boot sector in sector %d\n", bbs); + return; +@@ -233,9 +233,9 @@ static void read_fsinfo(DOS_FS * fs, str + break; + if (s > 0 && s < le16toh(b->reserved)) { + init_fsinfo(&i); +- fs_write((loff_t) s * lss, sizeof(i), &i); ++ fs_write((off_t) s * lss, sizeof(i), &i); + b->info_sector = htole16(s); +- fs_write((loff_t) offsetof(struct boot_sector, info_sector), ++ fs_write((off_t) offsetof(struct boot_sector, info_sector), + sizeof(b->info_sector), &b->info_sector); + if (fs->backupboot_start) + fs_write(fs->backupboot_start + +@@ -327,7 +327,7 @@ void read_boot(DOS_FS * fs) + unsigned total_sectors; + unsigned short logical_sector_size, sectors; + unsigned fat_length; +- loff_t data_size; ++ off_t data_size; + + fs_read(0, sizeof(b), &b); + logical_sector_size = GET_UNALIGNED_W(b.sector_size); +@@ -352,18 +352,18 @@ void read_boot(DOS_FS * fs) + if (verbose) + printf("Checking we can access the last sector of the filesystem\n"); + /* Can't access last odd sector anyway, so round down */ +- fs_test((loff_t) ((total_sectors & ~1) - 1) * (loff_t) logical_sector_size, ++ fs_test((off_t) ((total_sectors & ~1) - 1) * (off_t) logical_sector_size, + logical_sector_size); + fat_length = le16toh(b.fat_length) ? + le16toh(b.fat_length) : le32toh(b.fat32_length); +- fs->fat_start = (loff_t) le16toh(b.reserved) * logical_sector_size; +- fs->root_start = ((loff_t) le16toh(b.reserved) + b.fats * fat_length) * ++ fs->fat_start = (off_t) le16toh(b.reserved) * logical_sector_size; ++ fs->root_start = ((off_t) le16toh(b.reserved) + b.fats * fat_length) * + logical_sector_size; + fs->root_entries = GET_UNALIGNED_W(b.dir_entries); + fs->data_start = fs->root_start + ROUND_TO_MULTIPLE(fs->root_entries << + MSDOS_DIR_BITS, + logical_sector_size); +- data_size = (loff_t) total_sectors *logical_sector_size - fs->data_start; ++ data_size = (off_t) total_sectors *logical_sector_size - fs->data_start; + fs->clusters = data_size / fs->cluster_size; + fs->root_cluster = 0; /* indicates standard, pre-FAT32 root dir */ + fs->fsinfo_start = 0; /* no FSINFO structure */ +@@ -491,10 +491,10 @@ static void write_boot_label(DOS_FS * fs + } + } + +-loff_t find_volume_de(DOS_FS * fs, DIR_ENT * de) ++off_t find_volume_de(DOS_FS * fs, DIR_ENT * de) + { + uint32_t cluster; +- loff_t offset; ++ off_t offset; + int i; + + if (fs->root_cluster) { +@@ -525,7 +525,7 @@ static void write_volume_label(DOS_FS * + { + time_t now = time(NULL); + struct tm *mtime = localtime(&now); +- loff_t offset; ++ off_t offset; + int created; + DIR_ENT de; + diff --git a/package/dosfstools/patches/patch-src_boot_h b/package/dosfstools/patches/patch-src_boot_h new file mode 100644 index 000000000..6ed917b8a --- /dev/null +++ b/package/dosfstools/patches/patch-src_boot_h @@ -0,0 +1,11 @@ +--- dosfstools-3.0.26.orig/src/boot.h 2014-01-17 07:06:55.000000000 +0100 ++++ dosfstools-3.0.26/src/boot.h 2014-03-26 13:29:53.000000000 +0100 +@@ -25,7 +25,7 @@ + + void read_boot(DOS_FS * fs); + void write_label(DOS_FS * fs, char *label); +-loff_t find_volume_de(DOS_FS * fs, DIR_ENT * de); ++off_t find_volume_de(DOS_FS * fs, DIR_ENT * de); + + /* Reads the boot sector from the currently open device and initializes *FS */ + diff --git a/package/dosfstools/patches/patch-src_check_c b/package/dosfstools/patches/patch-src_check_c new file mode 100644 index 000000000..cdfc953fe --- /dev/null +++ b/package/dosfstools/patches/patch-src_check_c @@ -0,0 +1,49 @@ +--- dosfstools-3.0.26.orig/src/check.c 2014-03-07 18:35:11.000000000 +0100 ++++ dosfstools-3.0.26/src/check.c 2014-03-26 10:04:41.000000000 +0100 +@@ -64,7 +64,7 @@ static DOS_FILE *root; + p->dir_ent.start = htole16(__v&0xffff); \ + p->dir_ent.starthi = htole16(__v>>16); \ + __v = htole32(__v); \ +- fs_write((loff_t)offsetof(struct boot_sector,root_cluster), \ ++ fs_write((off_t)offsetof(struct boot_sector,root_cluster), \ + sizeof(((struct boot_sector *)0)->root_cluster), \ + &__v); \ + } \ +@@ -75,16 +75,16 @@ static DOS_FILE *root; + } \ + } while(0) + +-loff_t alloc_rootdir_entry(DOS_FS * fs, DIR_ENT * de, const char *pattern) ++off_t alloc_rootdir_entry(DOS_FS * fs, DIR_ENT * de, const char *pattern) + { + static int curr_num = 0; +- loff_t offset; ++ off_t offset; + + if (fs->root_cluster) { + DIR_ENT d2; + int i = 0, got = 0; + uint32_t clu_num, prev = 0; +- loff_t offset2; ++ off_t offset2; + + clu_num = fs->root_cluster; + offset = cluster_start(fs, clu_num); +@@ -333,7 +333,7 @@ static int bad_name(DOS_FILE * file) + return 0; + } + +-static void lfn_remove(loff_t from, loff_t to) ++static void lfn_remove(off_t from, off_t to) + { + DIR_ENT empty; + +@@ -949,7 +949,7 @@ static void new_dir(void) + * @param cp + */ + static void add_file(DOS_FS * fs, DOS_FILE *** chain, DOS_FILE * parent, +- loff_t offset, FDSC ** cp) ++ off_t offset, FDSC ** cp) + { + DOS_FILE *new; + DIR_ENT de; diff --git a/package/dosfstools/patches/patch-src_check_h b/package/dosfstools/patches/patch-src_check_h new file mode 100644 index 000000000..7f0b5e643 --- /dev/null +++ b/package/dosfstools/patches/patch-src_check_h @@ -0,0 +1,11 @@ +--- dosfstools-3.0.26.orig/src/check.h 2014-01-17 07:07:02.000000000 +0100 ++++ dosfstools-3.0.26/src/check.h 2014-03-26 13:25:47.000000000 +0100 +@@ -23,7 +23,7 @@ + #ifndef _CHECK_H + #define _CHECK_H + +-loff_t alloc_rootdir_entry(DOS_FS * fs, DIR_ENT * de, const char *pattern); ++off_t alloc_rootdir_entry(DOS_FS * fs, DIR_ENT * de, const char *pattern); + + /* Allocate a free slot in the root directory for a new file. The file name is + constructed after 'pattern', which must include a %d type format for printf diff --git a/package/dosfstools/patches/patch-src_fat_c b/package/dosfstools/patches/patch-src_fat_c new file mode 100644 index 000000000..15bfd16db --- /dev/null +++ b/package/dosfstools/patches/patch-src_fat_c @@ -0,0 +1,32 @@ +--- dosfstools-3.0.26.orig/src/fat.c 2014-01-17 07:07:05.000000000 +0100 ++++ dosfstools-3.0.26/src/fat.c 2014-03-26 13:37:03.000000000 +0100 +@@ -180,7 +180,7 @@ void set_fat(DOS_FS * fs, uint32_t clust + { + unsigned char *data = NULL; + int size; +- loff_t offs; ++ off_t offs; + + if (new == -1) + new = FAT_EOF(fs); +@@ -264,9 +264,9 @@ uint32_t next_cluster(DOS_FS * fs, uint3 + return FAT_IS_EOF(fs, value) ? -1 : value; + } + +-loff_t cluster_start(DOS_FS * fs, uint32_t cluster) ++off_t cluster_start(DOS_FS * fs, uint32_t cluster) + { +- return fs->data_start + ((loff_t) cluster - ++ return fs->data_start + ((off_t) cluster - + 2) * (uint64_t)fs->cluster_size; + } + +@@ -475,7 +475,7 @@ void reclaim_file(DOS_FS * fs) + /* If this cluster is the head of an orphan chain... */ + if (get_owner(fs, i) == &orphan && !num_refs[i]) { + DIR_ENT de; +- loff_t offset; ++ off_t offset; + files++; + offset = alloc_rootdir_entry(fs, &de, "FSCK%04dREC"); + de.start = htole16(i & 0xffff); diff --git a/package/dosfstools/patches/patch-src_fat_h b/package/dosfstools/patches/patch-src_fat_h new file mode 100644 index 000000000..9a5a81b88 --- /dev/null +++ b/package/dosfstools/patches/patch-src_fat_h @@ -0,0 +1,11 @@ +--- dosfstools-3.0.26.orig/src/fat.h 2014-01-17 07:07:07.000000000 +0100 ++++ dosfstools-3.0.26/src/fat.h 2014-03-26 13:29:04.000000000 +0100 +@@ -49,7 +49,7 @@ uint32_t next_cluster(DOS_FS * fs, uint3 + last cluster of the respective cluster chain. CLUSTER must not be a bad + cluster. */ + +-loff_t cluster_start(DOS_FS * fs, uint32_t cluster); ++off_t cluster_start(DOS_FS * fs, uint32_t cluster); + + /* Returns the byte offset of CLUSTER, relative to the respective device. */ + diff --git a/package/dosfstools/patches/patch-src_fatlabel_c b/package/dosfstools/patches/patch-src_fatlabel_c new file mode 100644 index 000000000..1a5e2c2cf --- /dev/null +++ b/package/dosfstools/patches/patch-src_fatlabel_c @@ -0,0 +1,11 @@ +--- dosfstools-3.0.26.orig/src/fatlabel.c 2014-01-17 07:07:08.000000000 +0100 ++++ dosfstools-3.0.26/src/fatlabel.c 2014-03-26 13:23:52.000000000 +0100 +@@ -92,7 +92,7 @@ int main(int argc, char *argv[]) + char *device = NULL; + char label[12] = { 0 }; + +- loff_t offset; ++ off_t offset; + DIR_ENT de; + + check_atari(); diff --git a/package/dosfstools/patches/patch-src_fsck_fat_h b/package/dosfstools/patches/patch-src_fsck_fat_h new file mode 100644 index 000000000..feaefb58e --- /dev/null +++ b/package/dosfstools/patches/patch-src_fsck_fat_h @@ -0,0 +1,38 @@ +--- dosfstools-3.0.26.orig/src/fsck.fat.h 2014-02-08 18:53:10.000000000 +0100 ++++ dosfstools-3.0.26/src/fsck.fat.h 2014-03-26 13:29:32.000000000 +0100 +@@ -143,8 +143,8 @@ typedef struct { + typedef struct _dos_file { + DIR_ENT dir_ent; + char *lfn; +- loff_t offset; +- loff_t lfn_offset; ++ off_t offset; ++ off_t lfn_offset; + struct _dos_file *parent; /* parent directory */ + struct _dos_file *next; /* next entry */ + struct _dos_file *first; /* first entry (directory only) */ +@@ -157,19 +157,19 @@ typedef struct { + + typedef struct { + int nfats; +- loff_t fat_start; ++ off_t fat_start; + unsigned int fat_size; /* unit is bytes */ + unsigned int fat_bits; /* size of a FAT entry */ + unsigned int eff_fat_bits; /* # of used bits in a FAT entry */ + uint32_t root_cluster; /* 0 for old-style root dir */ +- loff_t root_start; ++ off_t root_start; + unsigned int root_entries; +- loff_t data_start; ++ off_t data_start; + unsigned int cluster_size; + uint32_t clusters; +- loff_t fsinfo_start; /* 0 if not present */ ++ off_t fsinfo_start; /* 0 if not present */ + long free_clusters; +- loff_t backupboot_start; /* 0 if not present */ ++ off_t backupboot_start; /* 0 if not present */ + unsigned char *fat; + DOS_FILE **cluster_owner; + char *label; diff --git a/package/dosfstools/patches/patch-src_io_c b/package/dosfstools/patches/patch-src_io_c new file mode 100644 index 000000000..fae1ce625 --- /dev/null +++ b/package/dosfstools/patches/patch-src_io_c @@ -0,0 +1,59 @@ +--- dosfstools-3.0.26.orig/src/io.c 2014-01-17 07:07:14.000000000 +0100 ++++ dosfstools-3.0.26/src/io.c 2014-03-26 13:27:02.000000000 +0100 +@@ -48,7 +48,7 @@ + + typedef struct _change { + void *data; +- loff_t pos; ++ off_t pos; + int size; + struct _change *next; + } CHANGE; +@@ -60,7 +60,7 @@ unsigned device_no; + + #ifdef __DJGPP__ + #include "volume.h" /* DOS lowlevel disk access functions */ +-loff_t llseek(int fd, loff_t offset, int whence) ++off_t llseek(int fd, off_t offset, int whence) + { + if ((whence != SEEK_SET) || (fd == 4711)) + return -1; /* only those supported */ +@@ -72,9 +72,9 @@ loff_t llseek(int fd, loff_t offset, int + #define read(a,b,c) ReadVolume(b,c) + #define write(a,b,c) WriteVolume(b,c) + #else +-loff_t llseek(int fd, loff_t offset, int whence) ++off_t llseek(int fd, off_t offset, int whence) + { +- return (loff_t) lseek64(fd, (off64_t) offset, whence); ++ return (off_t) lseek64(fd, (off64_t) offset, whence); + } + #endif + +@@ -118,7 +118,7 @@ void fs_open(char *path, int rw) + * @param[in] size Number of bytes to read + * @param[out] data Where to put the data read + */ +-void fs_read(loff_t pos, int size, void *data) ++void fs_read(off_t pos, int size, void *data) + { + CHANGE *walk; + int got; +@@ -145,7 +145,7 @@ void fs_read(loff_t pos, int size, void + } + } + +-int fs_test(loff_t pos, int size) ++int fs_test(off_t pos, int size) + { + void *scratch; + int okay; +@@ -158,7 +158,7 @@ int fs_test(loff_t pos, int size) + return okay; + } + +-void fs_write(loff_t pos, int size, void *data) ++void fs_write(off_t pos, int size, void *data) + { + CHANGE *new; + int did; diff --git a/package/dosfstools/patches/patch-src_io_h b/package/dosfstools/patches/patch-src_io_h new file mode 100644 index 000000000..3ec0fd809 --- /dev/null +++ b/package/dosfstools/patches/patch-src_io_h @@ -0,0 +1,35 @@ +--- dosfstools-3.0.26.orig/src/io.h 2014-02-08 18:53:10.000000000 +0100 ++++ dosfstools-3.0.26/src/io.h 2014-03-26 13:27:15.000000000 +0100 +@@ -27,9 +27,9 @@ + #ifndef _IO_H + #define _IO_H + +-#include <fcntl.h> /* for loff_t */ ++#include <fcntl.h> /* for off_t */ + +-loff_t llseek(int fd, loff_t offset, int whence); ++off_t llseek(int fd, off_t offset, int whence); + + /* lseek() analogue for large offsets. */ + +@@ -38,17 +38,17 @@ void fs_open(char *path, int rw); + /* Opens the filesystem PATH. If RW is zero, the filesystem is opened + read-only, otherwise, it is opened read-write. */ + +-void fs_read(loff_t pos, int size, void *data); ++void fs_read(off_t pos, int size, void *data); + + /* Reads SIZE bytes starting at POS into DATA. Performs all applicable + changes. */ + +-int fs_test(loff_t pos, int size); ++int fs_test(off_t pos, int size); + + /* Returns a non-zero integer if SIZE bytes starting at POS can be read without + errors. Otherwise, it returns zero. */ + +-void fs_write(loff_t pos, int size, void *data); ++void fs_write(off_t pos, int size, void *data); + + /* If write_immed is non-zero, SIZE bytes are written from DATA to the disk, + starting at POS. If write_immed is zero, the change is added to a list in diff --git a/package/dosfstools/patches/patch-src_lfn_c b/package/dosfstools/patches/patch-src_lfn_c new file mode 100644 index 000000000..dfda2dc3e --- /dev/null +++ b/package/dosfstools/patches/patch-src_lfn_c @@ -0,0 +1,74 @@ +--- dosfstools-3.0.26.orig/src/lfn.c 2014-01-17 07:07:16.000000000 +0100 ++++ dosfstools-3.0.26/src/lfn.c 2014-03-26 13:24:23.000000000 +0100 +@@ -52,7 +52,7 @@ typedef struct { + unsigned char *lfn_unicode = NULL; + unsigned char lfn_checksum; + int lfn_slot = -1; +-loff_t *lfn_offsets = NULL; ++off_t *lfn_offsets = NULL; + int lfn_parts = 0; + + static unsigned char fat_uni2esc[64] = { +@@ -170,7 +170,7 @@ static void clear_lfn_slots(int start, i + } + } + +-void lfn_fix_checksum(loff_t from, loff_t to, const char *short_name) ++void lfn_fix_checksum(off_t from, off_t to, const char *short_name) + { + int i; + __u8 sum; +@@ -195,7 +195,7 @@ void lfn_reset(void) + + /* This function is only called with de->attr == VFAT_LN_ATTR. It stores part + * of the long name. */ +-void lfn_add_slot(DIR_ENT * de, loff_t dir_offset) ++void lfn_add_slot(DIR_ENT * de, off_t dir_offset) + { + LFN_ENT *lfn = (LFN_ENT *) de; + int slot = lfn->id & LFN_ID_SLOTMASK; +@@ -253,7 +253,7 @@ void lfn_add_slot(DIR_ENT * de, loff_t d + lfn_slot = slot; + lfn_checksum = lfn->alias_checksum; + lfn_unicode = alloc((lfn_slot * CHARS_PER_LFN + 1) * 2); +- lfn_offsets = alloc(lfn_slot * sizeof(loff_t)); ++ lfn_offsets = alloc(lfn_slot * sizeof(off_t)); + lfn_parts = 0; + } else if (lfn_slot == -1 && slot != 0) { + /* No LFN in progress, but slot found; start bit missing */ +@@ -272,7 +272,7 @@ void lfn_add_slot(DIR_ENT * de, loff_t d + switch (interactive ? get_key("123", "?") : '2') { + case '1': + if (!lfn_offsets) +- lfn_offsets = alloc(sizeof(loff_t)); ++ lfn_offsets = alloc(sizeof(off_t)); + lfn_offsets[0] = dir_offset; + clear_lfn_slots(0, 0); + lfn_reset(); +@@ -287,7 +287,7 @@ void lfn_add_slot(DIR_ENT * de, loff_t d + lfn_slot = slot; + lfn_checksum = lfn->alias_checksum; + lfn_unicode = alloc((lfn_slot * CHARS_PER_LFN + 1) * 2); +- lfn_offsets = alloc(lfn_slot * sizeof(loff_t)); ++ lfn_offsets = alloc(lfn_slot * sizeof(off_t)); + lfn_parts = 0; + break; + } +@@ -319,7 +319,7 @@ void lfn_add_slot(DIR_ENT * de, loff_t d + switch (interactive ? get_key(can_fix ? "123" : "12", "?") : '2') { + case '1': + if (!lfn_offsets) { +- lfn_offsets = alloc(sizeof(loff_t)); ++ lfn_offsets = alloc(sizeof(off_t)); + lfn_parts = 0; + } + lfn_offsets[lfn_parts++] = dir_offset; +@@ -406,7 +406,7 @@ void lfn_add_slot(DIR_ENT * de, loff_t d + + /* This function is always called when de->attr != VFAT_LN_ATTR is found, to + * retrieve the previously constructed LFN. */ +-char *lfn_get(DIR_ENT * de, loff_t * lfn_offset) ++char *lfn_get(DIR_ENT * de, off_t * lfn_offset) + { + char *lfn; + __u8 sum; diff --git a/package/dosfstools/patches/patch-src_lfn_h b/package/dosfstools/patches/patch-src_lfn_h new file mode 100644 index 000000000..0027ce035 --- /dev/null +++ b/package/dosfstools/patches/patch-src_lfn_h @@ -0,0 +1,20 @@ +--- dosfstools-3.0.26.orig/src/lfn.h 2014-01-17 07:07:17.000000000 +0100 ++++ dosfstools-3.0.26/src/lfn.h 2014-03-26 13:24:56.000000000 +0100 +@@ -26,14 +26,14 @@ + void lfn_reset(void); + /* Reset the state of the LFN parser. */ + +-void lfn_add_slot(DIR_ENT * de, loff_t dir_offset); ++void lfn_add_slot(DIR_ENT * de, off_t dir_offset); + /* Process a dir slot that is a VFAT LFN entry. */ + +-char *lfn_get(DIR_ENT * de, loff_t * lfn_offset); ++char *lfn_get(DIR_ENT * de, off_t * lfn_offset); + /* Retrieve the long name for the proper dir entry. */ + + void lfn_check_orphaned(void); + +-void lfn_fix_checksum(loff_t from, loff_t to, const char *short_name); ++void lfn_fix_checksum(off_t from, off_t to, const char *short_name); + + #endif diff --git a/package/dosfstools/patches/patch-src_mkfs_fat_c b/package/dosfstools/patches/patch-src_mkfs_fat_c new file mode 100644 index 000000000..60703d5f5 --- /dev/null +++ b/package/dosfstools/patches/patch-src_mkfs_fat_c @@ -0,0 +1,56 @@ +--- dosfstools-3.0.26.orig/src/mkfs.fat.c 2014-02-08 18:53:10.000000000 +0100 ++++ dosfstools-3.0.26/src/mkfs.fat.c 2014-03-26 13:37:51.000000000 +0100 +@@ -300,7 +300,7 @@ static long do_check(char *buffer, int t + static void alarm_intr(int alnum); + static void check_blocks(void); + static void get_list_blocks(char *filename); +-static int valid_offset(int fd, loff_t offset); ++static int valid_offset(int fd, off_t offset); + static uint64_t count_blocks(char *filename, int *remainder); + static void check_mount(char *device_name); + static void establish_params(int device_num, int size); +@@ -477,7 +477,7 @@ static void get_list_blocks(char *filena + /* Given a file descriptor and an offset, check whether the offset is a valid offset for the file - return FALSE if it + isn't valid or TRUE if it is */ + +-static int valid_offset(int fd, loff_t offset) ++static int valid_offset(int fd, off_t offset) + { + char ch; + +@@ -492,7 +492,7 @@ static int valid_offset(int fd, loff_t o + + static uint64_t count_blocks(char *filename, int *remainder) + { +- loff_t high, low; ++ off_t high, low; + int fd; + + if ((fd = open(filename, O_RDONLY)) < 0) { +@@ -506,7 +506,7 @@ static uint64_t count_blocks(char *filen + for (high = 1; valid_offset(fd, high); high *= 2) + low = high; + while (low < high - 1) { +- const loff_t mid = (low + high) / 2; ++ const off_t mid = (low + high) / 2; + if (valid_offset(fd, mid)) + low = mid; + else +@@ -1299,7 +1299,7 @@ static void setup_tables(void) + + #define seekto(pos,errstr) \ + do { \ +- loff_t __pos = (pos); \ ++ off_t __pos = (pos); \ + if (llseek (dev, __pos, SEEK_SET) != __pos) \ + error ("seek to " errstr " failed whilst writing tables"); \ + } while(0) +@@ -1679,7 +1679,7 @@ int main(int argc, char **argv) + exit(1); /* The error exit code is 1! */ + } + } else { +- loff_t offset = blocks * BLOCK_SIZE - 1; ++ off_t offset = blocks * BLOCK_SIZE - 1; + char null = 0; + /* create the file */ + dev = open(device_name, O_EXCL | O_RDWR | O_CREAT | O_TRUNC, 0666); diff --git a/package/dovecot/Makefile b/package/dovecot/Makefile index 369264c6d..0fd736e4d 100644 --- a/package/dovecot/Makefile +++ b/package/dovecot/Makefile @@ -4,21 +4,15 @@ include ${TOPDIR}/rules.mk PKG_NAME:= dovecot -PKG_VERSION:= 2.0.5 +PKG_VERSION:= 2.2.12 PKG_RELEASE:= 1 -PKG_MD5SUM:= 7168c5bf40fdd38cceb99114547699b8 -PKG_DESCR:= A minimal and secure imap server +PKG_MD5SUM:= 25395269fa2e0525e2d144d71d0450eb +PKG_DESCR:= minimal and secure imap server +PKG_BUILDDEP:= openssl +PKG_DEPENDS:= libopenssl PKG_SECTION:= mail PKG_URL:= http://www.dovecot.org/ -PKG_SITES:= http://www.dovecot.org/releases/2.0/ - -PKG_CHOICES_DOVECOT:= WITH_OPENSSL WITH_GNUTLS -PKGCD_WITH_OPENSSL:= use OpenSSL for crypto -PKGCS_WITH_OPENSSL:= libopenssl -PKGCB_WITH_OPENSSL:= openssl -PKGCD_WITH_GNUTLS:= use GnuTLS for crypto -PKGCS_WITH_GNUTLS:= libgnutls -PKGCB_WITH_GNUTLS:= gnutls +PKG_SITES:= http://www.dovecot.org/releases/2.2/ include ${TOPDIR}/mk/package.mk @@ -45,16 +39,10 @@ CONFIGURE_ARGS+= --with-notify=none \ --without-gssapi \ --without-pam \ --with-ioloop=epoll \ - --with-moduledir=/usr/lib/dovecot/modules - -ifeq (${ADK_PACKAGE_DOVECOT_WITH_GNUTLS},y) -CONFIGURE_ARGS+= --with-ssl=gnutls -endif -ifeq (${ADK_PACKAGE_DOVECOT_WITH_OPENSSL},y) -CONFIGURE_ARGS+= --with-ssl=openssl -endif + --with-moduledir=/usr/lib/dovecot/modules \ + --with-ssl=openssl -post-install: +dovecot-install: ${INSTALL_DIR} ${IDIR_DOVECOT}/etc ${INSTALL_DIR} ${IDIR_DOVECOT}/usr/sbin ${INSTALL_DIR} ${IDIR_DOVECOT}/usr/libexec/dovecot diff --git a/package/dovecot/patches/patch-ltmain_sh b/package/dovecot/patches/patch-ltmain_sh deleted file mode 100644 index 8c7c6bc7d..000000000 --- a/package/dovecot/patches/patch-ltmain_sh +++ /dev/null @@ -1,11 +0,0 @@ ---- dovecot-2.0.5.orig/ltmain.sh 2010-05-24 16:48:06.000000000 +0200 -+++ dovecot-2.0.5/ltmain.sh 2011-01-14 22:05:48.000000000 +0100 -@@ -4765,7 +4765,7 @@ func_mode_link () - # -p, -pg, --coverage, -fprofile-* pass through profiling flag for GCC - # @file GCC response files - -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ -- -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*) -+ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-fstack-protector*|-flto) - func_quote_for_eval "$arg" - arg="$func_quote_for_eval_result" - func_append compile_command " $arg" diff --git a/package/dri2proto/Makefile b/package/dri2proto/Makefile index 402144bfd..f42ef212e 100644 --- a/package/dri2proto/Makefile +++ b/package/dri2proto/Makefile @@ -4,10 +4,10 @@ include $(TOPDIR)/rules.mk PKG_NAME:= dri2proto -PKG_VERSION:= 2.6 +PKG_VERSION:= 2.8 PKG_RELEASE:= 1 -PKG_MD5SUM:= 873142af5db695537cfe05e01d13541f -PKG_DESCR:= DRI protocol headers +PKG_MD5SUM:= 19ea18f63d8ae8053c9fa84b60365b77 +PKG_DESCR:= DRI2 protocol headers PKG_SECTION:= devel PKG_SITES:= ${MASTER_SITE_XORG} PKG_OPTS:= dev devonly diff --git a/package/dri3proto/Makefile b/package/dri3proto/Makefile new file mode 100644 index 000000000..7aaac7ac5 --- /dev/null +++ b/package/dri3proto/Makefile @@ -0,0 +1,19 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(TOPDIR)/rules.mk + +PKG_NAME:= dri3proto +PKG_VERSION:= 1.0 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 25e84a49a076862277ee12aebd49ff5f +PKG_DESCR:= DRI protocol headers +PKG_SECTION:= devel +PKG_SITES:= ${MASTER_SITE_XORG} +PKG_OPTS:= dev devonly + +include $(TOPDIR)/mk/package.mk + +$(eval $(call PKG_template,DRI3PROTO,dri3proto,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS})) + +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/ebtables/Makefile b/package/ebtables/Makefile index 59f2ea6ba..e39f58070 100644 --- a/package/ebtables/Makefile +++ b/package/ebtables/Makefile @@ -21,7 +21,7 @@ $(eval $(call PKG_template,EBTABLES,ebtables,${PKG_VERSION}-${PKG_RELEASE},${PKG CONFIG_STYLE:= manual -post-install: +ebtables-install: ${INSTALL_DIR} ${IDIR_EBTABLES}/etc ${INSTALL_DIR} ${IDIR_EBTABLES}/usr/sbin ${IDIR_EBTABLES}/usr/lib ${INSTALL_DATA} ${WRKINST}/etc/ethertypes ${IDIR_EBTABLES}/etc diff --git a/package/ebtables/patches/patch-Makefile b/package/ebtables/patches/patch-Makefile index ff5934a70..f4e293eaf 100644 --- a/package/ebtables/patches/patch-Makefile +++ b/package/ebtables/patches/patch-Makefile @@ -1,6 +1,6 @@ ---- ebtables-v2.0.10-3.orig/Makefile 2011-12-04 10:46:26.000000000 +0100 -+++ ebtables-v2.0.10-3/Makefile 2011-12-11 16:35:34.619464748 +0100 -@@ -10,16 +10,16 @@ LOCKDIR:=$(shell echo $(LOCKFILE) | sed +--- ebtables-v2.0.10-4.orig/Makefile 2011-12-15 21:02:47.000000000 +0100 ++++ ebtables-v2.0.10-4/Makefile 2014-03-23 15:46:20.000000000 +0100 +@@ -10,16 +10,16 @@ LOCKDIR:=$(shell echo $(LOCKFILE) | sed # default paths LIBDIR:=/usr/lib diff --git a/package/ebtables/patches/patch-extensions_ebt_among_c b/package/ebtables/patches/patch-extensions_ebt_among_c new file mode 100644 index 000000000..08f3fb7f1 --- /dev/null +++ b/package/ebtables/patches/patch-extensions_ebt_among_c @@ -0,0 +1,10 @@ +--- ebtables-v2.0.10-4.orig/extensions/ebt_among.c 2011-12-15 21:02:47.000000000 +0100 ++++ ebtables-v2.0.10-4/extensions/ebt_among.c 2014-03-23 15:51:29.000000000 +0100 +@@ -13,7 +13,6 @@ + #include <ctype.h> + #include <unistd.h> + #include "../include/ebtables_u.h" +-#include <netinet/ether.h> + #include "../include/ethernetdb.h" + #include <linux/if_ether.h> + #include <linux/netfilter_bridge/ebt_among.h> diff --git a/package/ebtables/patches/patch-extensions_ebt_arpreply_c b/package/ebtables/patches/patch-extensions_ebt_arpreply_c new file mode 100644 index 000000000..32432efb4 --- /dev/null +++ b/package/ebtables/patches/patch-extensions_ebt_arpreply_c @@ -0,0 +1,10 @@ +--- ebtables-v2.0.10-4.orig/extensions/ebt_arpreply.c 2011-12-15 21:02:47.000000000 +0100 ++++ ebtables-v2.0.10-4/extensions/ebt_arpreply.c 2014-03-23 15:50:38.000000000 +0100 +@@ -12,7 +12,6 @@ + #include <string.h> + #include <getopt.h> + #include "../include/ebtables_u.h" +-#include <netinet/ether.h> + #include <linux/netfilter_bridge/ebt_arpreply.h> + + static int mac_supplied; diff --git a/package/ebtables/patches/patch-extensions_ebt_ip6_c b/package/ebtables/patches/patch-extensions_ebt_ip6_c new file mode 100644 index 000000000..e57677d44 --- /dev/null +++ b/package/ebtables/patches/patch-extensions_ebt_ip6_c @@ -0,0 +1,10 @@ +--- ebtables-v2.0.10-4.orig/extensions/ebt_ip6.c 2011-12-15 21:02:47.000000000 +0100 ++++ ebtables-v2.0.10-4/extensions/ebt_ip6.c 2014-03-23 15:51:09.000000000 +0100 +@@ -11,6 +11,7 @@ + * + */ + ++#include <sys/types.h> + #include <errno.h> + #include <inttypes.h> + #include <limits.h> diff --git a/package/ebtables/patches/patch-extensions_ebt_limit_c b/package/ebtables/patches/patch-extensions_ebt_limit_c new file mode 100644 index 000000000..5464611c1 --- /dev/null +++ b/package/ebtables/patches/patch-extensions_ebt_limit_c @@ -0,0 +1,10 @@ +--- ebtables-v2.0.10-4.orig/extensions/ebt_limit.c 2011-12-15 21:02:47.000000000 +0100 ++++ ebtables-v2.0.10-4/extensions/ebt_limit.c 2014-03-23 15:52:04.000000000 +0100 +@@ -8,6 +8,7 @@ + * September, 2003 + */ + ++#include <sys/types.h> + #include <stdio.h> + #include <stdlib.h> + #include <string.h> diff --git a/package/ebtables/patches/patch-extensions_ebt_nat_c b/package/ebtables/patches/patch-extensions_ebt_nat_c new file mode 100644 index 000000000..1a215e9e7 --- /dev/null +++ b/package/ebtables/patches/patch-extensions_ebt_nat_c @@ -0,0 +1,10 @@ +--- ebtables-v2.0.10-4.orig/extensions/ebt_nat.c 2011-12-15 21:02:47.000000000 +0100 ++++ ebtables-v2.0.10-4/extensions/ebt_nat.c 2014-03-23 15:50:13.000000000 +0100 +@@ -11,7 +11,6 @@ + #include <string.h> + #include <getopt.h> + #include "../include/ebtables_u.h" +-#include <netinet/ether.h> + #include <linux/netfilter_bridge/ebt_nat.h> + + static int to_source_supplied, to_dest_supplied; diff --git a/package/ebtables/patches/patch-include_ethernetdb_h b/package/ebtables/patches/patch-include_ethernetdb_h new file mode 100644 index 000000000..1bc877d57 --- /dev/null +++ b/package/ebtables/patches/patch-include_ethernetdb_h @@ -0,0 +1,29 @@ +--- ebtables-v2.0.10-4.orig/include/ethernetdb.h 2011-12-15 21:02:47.000000000 +0100 ++++ ebtables-v2.0.10-4/include/ethernetdb.h 2014-03-23 15:47:35.000000000 +0100 +@@ -38,21 +38,20 @@ struct ethertypeent { + + /* Open ethertype data base files and mark them as staying open even + after a later search if STAY_OPEN is non-zero. */ +-extern void setethertypeent(int __stay_open) __THROW; ++extern void setethertypeent(int __stay_open); + + /* Close ethertype data base files and clear `stay open' flag. */ +-extern void endethertypeent(void) __THROW; ++extern void endethertypeent(void); + + /* Get next entry from ethertype data base file. Open data base if + necessary. */ +-extern struct ethertypeent *getethertypeent(void) __THROW; ++extern struct ethertypeent *getethertypeent(void); + + /* Return entry from ethertype data base for network with NAME. */ +-extern struct ethertypeent *getethertypebyname(__const char *__name) +- __THROW; ++extern struct ethertypeent *getethertypebyname(__const char *__name); + + /* Return entry from ethertype data base which number is PROTO. */ +-extern struct ethertypeent *getethertypebynumber(int __ethertype) __THROW; ++extern struct ethertypeent *getethertypebynumber(int __ethertype); + + + #endif /* ethernetdb.h */ diff --git a/package/ebtables/patches/patch-useful_functions_c b/package/ebtables/patches/patch-useful_functions_c new file mode 100644 index 000000000..6e851ecd2 --- /dev/null +++ b/package/ebtables/patches/patch-useful_functions_c @@ -0,0 +1,10 @@ +--- ebtables-v2.0.10-4.orig/useful_functions.c 2011-12-15 21:02:47.000000000 +0100 ++++ ebtables-v2.0.10-4/useful_functions.c 2014-03-23 15:49:15.000000000 +0100 +@@ -25,7 +25,6 @@ + #include "include/ebtables_u.h" + #include "include/ethernetdb.h" + #include <stdio.h> +-#include <netinet/ether.h> + #include <string.h> + #include <stdlib.h> + #include <getopt.h> diff --git a/package/ethtool/Makefile b/package/ethtool/Makefile index f6be14fb9..7834dcfdb 100644 --- a/package/ethtool/Makefile +++ b/package/ethtool/Makefile @@ -4,12 +4,14 @@ include ${TOPDIR}/rules.mk PKG_NAME:= ethtool -PKG_VERSION:= 2.6.36 -PKG_RELEASE:= 1 -PKG_MD5SUM:= 3b2322695e9ee7bf447ebcdb85f93e83 -PKG_DESCR:= Display or change ethernet card settings +PKG_VERSION:= 3.13 +PKG_RELEASE:= 2 +PKG_MD5SUM:= dcb8f345d44ee79108282e7d0bdf5013 +PKG_DESCR:= display or change ethernet card settings PKG_SECTION:= net -PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=gkernel/} +PKG_SITES:= https://www.kernel.org/pub/software/network/ethtool/ + +DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.xz include ${TOPDIR}/mk/package.mk diff --git a/package/ethtool/patches/patch-internal_h b/package/ethtool/patches/patch-internal_h new file mode 100644 index 000000000..280f92ce7 --- /dev/null +++ b/package/ethtool/patches/patch-internal_h @@ -0,0 +1,33 @@ +--- ethtool-3.13.orig/internal.h 2014-01-27 02:27:14.000000000 +0100 ++++ ethtool-3.13/internal.h 2014-03-23 13:47:54.000000000 +0100 +@@ -7,6 +7,7 @@ + #include "ethtool-config.h" + #endif + #include <stdio.h> ++#include <stdint.h> + #include <stdlib.h> + #include <string.h> + #include <sys/types.h> +@@ -17,16 +18,16 @@ + + /* ethtool.h expects these to be defined by <linux/types.h> */ + #ifndef HAVE_BE_TYPES +-typedef __uint16_t __be16; +-typedef __uint32_t __be32; ++typedef uint16_t __be16; ++typedef uint32_t __be32; + typedef unsigned long long __be64; + #endif + + typedef unsigned long long u64; +-typedef __uint32_t u32; +-typedef __uint16_t u16; +-typedef __uint8_t u8; +-typedef __int32_t s32; ++typedef uint32_t u32; ++typedef uint16_t u16; ++typedef uint8_t u8; ++typedef int32_t s32; + + #include "ethtool-copy.h" + #include "net_tstamp-copy.h" diff --git a/package/eudev/Makefile b/package/eudev/Makefile index 4bce0928c..a6939a032 100644 --- a/package/eudev/Makefile +++ b/package/eudev/Makefile @@ -4,10 +4,10 @@ include $(TOPDIR)/rules.mk PKG_NAME:= eudev -PKG_VERSION:= 1.3 -PKG_RELEASE:= 1 -PKG_MD5SUM:= 164df78f6f0093578a20bdd00335845f -PKG_DESCR:= udev device manager +PKG_VERSION:= 1.5.3 +PKG_RELEASE:= 2 +PKG_MD5SUM:= 51380938b489385cc394f4ebabc048f0 +PKG_DESCR:= device manager (udev clone) PKG_SECTION:= utils PKG_BUILDDEP:= gperf-host glib PKG_DEPENDS:= glib @@ -16,20 +16,22 @@ PKG_SITES:= http://dev.gentoo.org/~blueness/eudev/ PKG_LIBNAME:= libudev PKG_OPTS:= dev -PKG_SUBPKGS:= UDEV LIBUDEV LIBGUDEV -PKGSC_LIBGUDEV:= libs -PKGSD_LIBGUDEV:= GUDEV library +PKG_SUBPKGS:= UDEV LIBUDEV +PKGSD_UDEV:= Dynamic device management manager PKGSC_LIBUDEV:= libs -PKGSD_LIBUDEV:= UDEV library -PKGSD_UDEV:= Dynamic device management subsystem +PKGSD_LIBUDEV:= Dynamic device management library + +ifeq ($(ADK_STATIC),y) +PKG_OPTS+= libmix +endif include $(TOPDIR)/mk/package.mk $(eval $(call PKG_template,UDEV,udev,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS})) $(eval $(call PKG_template,LIBUDEV,libudev,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS})) -$(eval $(call PKG_template,LIBGUDEV,libgudev,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS})) CONFIGURE_ARGS+= --disable-manpages \ + --datadir=${STAGING_TARGET_PREFIX}/usr/lib \ --disable-gtk-doc udev-install: @@ -43,8 +45,4 @@ libudev-install: ${INSTALL_DIR} ${IDIR_LIBUDEV}/usr/lib $(CP) $(WRKINST)/usr/lib/libudev.so* $(IDIR_LIBUDEV)/usr/lib -libgudev-install: - ${INSTALL_DIR} ${IDIR_LIBGUDEV}/usr/lib - $(CP) $(WRKINST)/usr/lib/libgudev*.so* $(IDIR_LIBGUDEV)/usr/lib - include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/eudev/patches/patch-rule_generator_write_cd_rules b/package/eudev/patches/patch-rule_generator_write_cd_rules new file mode 100644 index 000000000..ed67769b9 --- /dev/null +++ b/package/eudev/patches/patch-rule_generator_write_cd_rules @@ -0,0 +1,11 @@ +--- eudev-1.5.3.orig/rule_generator/write_cd_rules 2014-03-22 23:45:54.000000000 +0100 ++++ eudev-1.5.3/rule_generator/write_cd_rules 2014-03-24 18:26:38.000000000 +0100 +@@ -27,7 +27,7 @@ if [ -n "$UDEV_LOG" ]; then + fi + fi + +-RULES_FILE="${prefix}/etc/udev/rules.d/70-persistent-cd.rules" ++RULES_FILE="/etc/udev/rules.d/70-persistent-cd.rules" + + . ${prefix}/lib/udev/rule_generator.functions + diff --git a/package/eudev/patches/patch-rule_generator_write_net_rules b/package/eudev/patches/patch-rule_generator_write_net_rules new file mode 100644 index 000000000..e5d14ae2e --- /dev/null +++ b/package/eudev/patches/patch-rule_generator_write_net_rules @@ -0,0 +1,11 @@ +--- eudev-1.5.3.orig/rule_generator/write_net_rules 2014-03-22 23:45:54.000000000 +0100 ++++ eudev-1.5.3/rule_generator/write_net_rules 2014-03-24 18:26:38.000000000 +0100 +@@ -38,7 +38,7 @@ if [ -n "$UDEV_LOG" ]; then + fi + fi + +-RULES_FILE='${prefix}/etc/udev/rules.d/70-persistent-net.rules' ++RULES_FILE='/etc/udev/rules.d/70-persistent-net.rules' + + . ${prefix}/lib/udev/rule_generator.functions + diff --git a/package/eudev/patches/patch-src_accelerometer_accelerometer_c b/package/eudev/patches/patch-src_accelerometer_accelerometer_c new file mode 100644 index 000000000..95735f8c5 --- /dev/null +++ b/package/eudev/patches/patch-src_accelerometer_accelerometer_c @@ -0,0 +1,13 @@ +--- eudev-1.5.3.orig/src/accelerometer/accelerometer.c 2014-03-22 22:56:51.000000000 +0100 ++++ eudev-1.5.3/src/accelerometer/accelerometer.c 2014-03-24 20:41:59.000000000 +0100 +@@ -58,8 +58,8 @@ + #include <linux/limits.h> + #include <linux/input.h> + +-#ifdef __UCLIBC__ +-#include <linux/fcntl.h> ++#if defined(__UCLIBC__) ++#define O_CLOEXEC 02000000 /* set close_on_exec */ + #endif + + #include "libudev.h" diff --git a/package/eudev/patches/patch-src_accelerometer_accelerometer_c.orig b/package/eudev/patches/patch-src_accelerometer_accelerometer_c.orig new file mode 100644 index 000000000..7bfc4f0c6 --- /dev/null +++ b/package/eudev/patches/patch-src_accelerometer_accelerometer_c.orig @@ -0,0 +1,13 @@ +--- eudev-1.5.3.orig/src/accelerometer/accelerometer.c 2014-03-22 22:56:51.000000000 +0100 ++++ eudev-1.5.3/src/accelerometer/accelerometer.c 2014-03-24 20:39:35.000000000 +0100 +@@ -58,10 +58,6 @@ + #include <linux/limits.h> + #include <linux/input.h> + +-#ifdef __UCLIBC__ +-#include <linux/fcntl.h> +-#endif +- + #include "libudev.h" + #include "libudev-private.h" + diff --git a/package/eudev/patches/patch-src_ata_id_ata_id_c b/package/eudev/patches/patch-src_ata_id_ata_id_c new file mode 100644 index 000000000..eae35adf7 --- /dev/null +++ b/package/eudev/patches/patch-src_ata_id_ata_id_c @@ -0,0 +1,11 @@ +--- eudev-1.5.3.orig/src/ata_id/ata_id.c 2014-03-22 22:56:51.000000000 +0100 ++++ eudev-1.5.3/src/ata_id/ata_id.c 2014-03-24 20:44:36.000000000 +0100 +@@ -42,7 +42,7 @@ + #include <arpa/inet.h> + + #ifdef __UCLIBC__ +-#include <linux/fcntl.h> ++#define O_CLOEXEC 02000000 /* Set close_on_exec. */ + #endif + + #include "libudev.h" diff --git a/package/eudev/patches/patch-src_ata_id_ata_id_c.orig b/package/eudev/patches/patch-src_ata_id_ata_id_c.orig new file mode 100644 index 000000000..0d621ffc6 --- /dev/null +++ b/package/eudev/patches/patch-src_ata_id_ata_id_c.orig @@ -0,0 +1,13 @@ +--- eudev-1.5.3.orig/src/ata_id/ata_id.c 2014-03-22 22:56:51.000000000 +0100 ++++ eudev-1.5.3/src/ata_id/ata_id.c 2014-03-24 20:43:14.000000000 +0100 +@@ -41,10 +41,6 @@ + #include <linux/bsg.h> + #include <arpa/inet.h> + +-#ifdef __UCLIBC__ +-#include <linux/fcntl.h> +-#endif +- + #include "libudev.h" + #include "libudev-private.h" + #include "log.h" diff --git a/package/eudev/patches/patch-src_collect_collect_c b/package/eudev/patches/patch-src_collect_collect_c new file mode 100644 index 000000000..dbf17c706 --- /dev/null +++ b/package/eudev/patches/patch-src_collect_collect_c @@ -0,0 +1,11 @@ +--- eudev-1.5.3.orig/src/collect/collect.c 2014-03-22 22:56:51.000000000 +0100 ++++ eudev-1.5.3/src/collect/collect.c 2014-03-24 20:45:48.000000000 +0100 +@@ -32,7 +32,7 @@ + #include <sys/stat.h> + + #ifdef __UCLIBC__ +-#include <linux/fcntl.h> ++#define O_CLOEXEC 02000000 /* Set close_on_exec. */ + #endif + + #include "libudev.h" diff --git a/package/eudev/patches/patch-src_mtd_probe_mtd_probe_c b/package/eudev/patches/patch-src_mtd_probe_mtd_probe_c new file mode 100644 index 000000000..340f08e94 --- /dev/null +++ b/package/eudev/patches/patch-src_mtd_probe_mtd_probe_c @@ -0,0 +1,11 @@ +--- eudev-1.5.3.orig/src/mtd_probe/mtd_probe.c 2014-03-22 22:56:51.000000000 +0100 ++++ eudev-1.5.3/src/mtd_probe/mtd_probe.c 2014-03-24 20:46:53.000000000 +0100 +@@ -27,7 +27,7 @@ + #include <stdlib.h> + + #ifdef __UCLIBC__ +-#include <linux/fcntl.h> ++# define O_CLOEXEC 02000000 /* Set close_on_exec. */ + #endif + + int main(int argc, char** argv) diff --git a/package/eudev/patches/patch-src_scsi_id_scsi_serial_c b/package/eudev/patches/patch-src_scsi_id_scsi_serial_c new file mode 100644 index 000000000..ab4f23dfd --- /dev/null +++ b/package/eudev/patches/patch-src_scsi_id_scsi_serial_c @@ -0,0 +1,11 @@ +--- eudev-1.5.3.orig/src/scsi_id/scsi_serial.c 2014-03-22 22:56:51.000000000 +0100 ++++ eudev-1.5.3/src/scsi_id/scsi_serial.c 2014-03-24 20:49:53.000000000 +0100 +@@ -35,7 +35,7 @@ + #include <linux/bsg.h> + + #ifdef __UCLIBC__ +-#include <linux/fcntl.h> ++#define O_CLOEXEC 02000000 /* set close_on_exec */ + #endif + + #include "libudev.h" diff --git a/package/exmap/Makefile b/package/exmap/Makefile index 9ea289eaf..6755f89df 100644 --- a/package/exmap/Makefile +++ b/package/exmap/Makefile @@ -5,32 +5,23 @@ include ${TOPDIR}/rules.mk PKG_NAME:= exmap PKG_VERSION:= 0.4.1 -PKG_RELEASE:= 3 +PKG_RELEASE:= 4 PKG_MD5SUM:= 55aec784e214037e61400287a55b5426 -PKG_DESCR:= memory analysing client tool +PKG_DESCR:= memory analysing tools PKG_SECTION:= debug -PKG_DEPENDS:= exmap-kmod libreadline glib +PKG_DEPENDS:= libreadline glib PKG_BUILDDEP:= glib readline autotool PKG_SITES:= http://labs.o-hand.com/sources/exmap-console/ PKG_ARCH_DEPENDS:= !m68k PKG_CFLINE_EXMAP:= depends on !ADK_TOOLCHAIN_ONLY -PKG_SUBPKGS:= EXMAP EXMAPD EXMAPSERVER EXMAP_KMOD -PKGSD_EXMAPD:= memory analysing daemon -PKGSD_EXMAPSERVER:= memory analysing server -PKGSD_EXMAP_KMOD:= memory analysing kernel module -PKGSC_EXMAP_KMOD:= kernel - DISTFILES:= ${PKG_NAME}-console-${PKG_VERSION}.tgz WRKDIST= ${WRKDIR}/${PKG_NAME}-console-${PKG_VERSION} include ${TOPDIR}/mk/package.mk $(eval $(call PKG_template,EXMAP,exmap,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) -$(eval $(call PKG_template,EXMAPD,exmapd,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_EXMAPD},${PKG_SECTION})) -$(eval $(call PKG_template,EXMAPSERVER,exmapserver,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_EXMAPSERVER},${PKG_SECTION})) -$(eval $(call PKG_template,EXMAP_KMOD,exmap-kmod,${KERNEL_VERSION}+${PKG_VERSION}-${ADK_TARGET}-${PKG_RELEASE},,${PKGSD_EXMAP_KMOD},${PKGSC_EXMAP_KMOD})) AUTOTOOL_STYLE:= autoreconf CONFIGURE_ARGS+= --disable-doc @@ -39,17 +30,13 @@ CONFIGURE_ENV+= LIBS="-lncurses" pre-build: $(MAKE) -C ${WRKBUILD}/kernel $(KERNEL_MODULE_FLAGS) -post-install: - ${INSTALL_DIR} ${IDIR_EXMAP_KMOD}/etc/modules.d/ - echo "exmap" > ${IDIR_EXMAP_KMOD}/etc/modules.d/90-exmap - ${INSTALL_DIR} ${IDIR_EXMAP_KMOD}/lib/modules/${KERNEL_VERSION}/ +exmap-install: + ${INSTALL_DIR} ${IDIR_EXMAP}/etc/modules.d/ + echo "exmap" > ${IDIR_EXMAP}/etc/modules.d/90-exmap + ${INSTALL_DIR} ${IDIR_EXMAP}/lib/modules/${KERNEL_VERSION}/ ${INSTALL_DATA} ${WRKBUILD}/kernel/exmap.ko \ - ${IDIR_EXMAP_KMOD}/lib/modules/${KERNEL_VERSION} + ${IDIR_EXMAP}/lib/modules/${KERNEL_VERSION} ${INSTALL_DIR} ${IDIR_EXMAP}/usr/sbin - ${INSTALL_BIN} ${WRKBUILD}/src/exmap ${IDIR_EXMAP}/usr/sbin - ${INSTALL_DIR} ${IDIR_EXMAPD}/usr/sbin - ${INSTALL_BIN} ${WRKBUILD}/src/exmapd ${IDIR_EXMAPD}/usr/sbin - ${INSTALL_DIR} ${IDIR_EXMAPSERVER}/usr/sbin - ${INSTALL_BIN} ${WRKBUILD}/src/exmapserver ${IDIR_EXMAPSERVER}/usr/sbin + ${INSTALL_BIN} ${WRKBUILD}/src/exmap* ${IDIR_EXMAP}/usr/sbin include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/fbsplash/Makefile b/package/fbsplash/Makefile new file mode 100644 index 000000000..0d2ece693 --- /dev/null +++ b/package/fbsplash/Makefile @@ -0,0 +1,28 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(TOPDIR)/rules.mk + +PKG_NAME:= fbsplash +PKG_VERSION:= 1.0 +PKG_RELEASE:= 2 +PKG_MD5SUM:= aa0a9e735e086228bc245b18e231bf6c +PKG_DESCR:= framebuffer splash utility +PKG_SECTION:= misc +PKG_BUILDDEP:= libjpeg-turbo libpng freetype +PKG_DEPENDS:= libjpeg-turbo libpng libfreetype +PKG_URL:= https://github.com/alanhaggai/fbsplash +PKG_SITES:= http://openadk.org/distfiles/ + +include $(TOPDIR)/mk/package.mk + +$(eval $(call PKG_template,FBSPLASH,fbsplash,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) + +fbsplash-install: + $(INSTALL_DIR) $(IDIR_FBSPLASH)/usr/lib + $(CP) $(WRKINST)/usr/lib/libfb*.so* $(IDIR_FBSPLASH)/usr/lib + $(INSTALL_DIR) $(IDIR_FBSPLASH)/sbin + $(INSTALL_BIN) $(WRKINST)/sbin/{fbcondecor_helper,fbsplashctl} \ + $(IDIR_FBSPLASH)/sbin + +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/feh/Makefile b/package/feh/Makefile index 43a90b8b7..4f9f56476 100644 --- a/package/feh/Makefile +++ b/package/feh/Makefile @@ -4,9 +4,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:= feh -PKG_VERSION:= 1.16.1 +PKG_VERSION:= 2.10 PKG_RELEASE:= 1 -PKG_MD5SUM:= 1bb080c7b0021db50884a52161251990 +PKG_MD5SUM:= 6714dedeff1db5c3593c4a27b0d9cf50 PKG_DESCR:= image viewer PKG_SECTION:= multimedia PKG_BUILDDEP:= imlib2 giblib libXt diff --git a/package/fetchmail/Makefile b/package/fetchmail/Makefile index 933333441..0d18d70cc 100644 --- a/package/fetchmail/Makefile +++ b/package/fetchmail/Makefile @@ -4,9 +4,9 @@ include ${TOPDIR}/rules.mk PKG_NAME:= fetchmail -PKG_VERSION:= 6.3.9 +PKG_VERSION:= 6.3.26 PKG_RELEASE:= 1 -PKG_MD5SUM:= 72c20ad2b9629f1a109668b05a84d823 +PKG_MD5SUM:= d9ae3d939205a3c06a21ea79b8f14793 PKG_DESCR:= fetch mail from a POP or IMAP server PKG_SECTION:= mail PKG_URL:= http://fetchmail.berlios.de/ diff --git a/package/findutils/Makefile b/package/findutils/Makefile index 46c3e6681..2848ac91c 100644 --- a/package/findutils/Makefile +++ b/package/findutils/Makefile @@ -5,29 +5,42 @@ include $(TOPDIR)/rules.mk PKG_NAME:= findutils PKG_VERSION:= 4.4.2 -PKG_RELEASE:= 2 +PKG_RELEASE:= 4 PKG_MD5SUM:= 351cc4adb07d54877fa15f75fb77d39f -PKG_DESCR:= GNU utilities for finding files +PKG_DESCR:= utilities for finding files PKG_SECTION:= utils PKG_DEPENDS:= libpthread +PKG_BUILDDEP:= autotool +HOST_BUILDDEP:= autotool PKG_URL:= http://www.gnu.org/software/findutils/ PKG_SITES:= http://ftp.gnu.org/pub/gnu/findutils/ -PKG_SUBPKGS:= FINDUTILS LOCATE -PKGSD_LOCATE:= Locate utility +PKG_SUBPKGS:= FIND XARGS LOCATE +PKGSD_LOCATE:= locate utility +PKGSD_XARGS:= xargs utility +include $(TOPDIR)/mk/host.mk include $(TOPDIR)/mk/package.mk -$(eval $(call PKG_template,FINDUTILS,findutils,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +$(eval $(call HOST_template,FINDUTILS,findutils,$(PKG_VERSION)-${PKG_RELEASE})) +$(eval $(call PKG_template,FIND,find,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +$(eval $(call PKG_template,XARGS,xargs,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_XARGS},${PKG_SECTION})) $(eval $(call PKG_template,LOCATE,locate,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_LOCATE},${PKG_SECTION})) +HOST_STYLE:= auto +AUTOTOOL_STYLE:= autoreconf CONFIGURE_ENV+= gl_cv_func_wcwidth_works=yes \ ac_cv_func_working_mktime=yes -findutils-install: - $(INSTALL_DIR) $(IDIR_FINDUTILS)/usr/bin - $(INSTALL_BIN) $(WRKINST)/usr/bin/{find,oldfind,xargs} \ - $(IDIR_FINDUTILS)/usr/bin +find-install: + $(INSTALL_DIR) $(IDIR_FIND)/usr/bin + $(INSTALL_BIN) $(WRKINST)/usr/bin/find \ + $(IDIR_FIND)/usr/bin + +xargs-install: + $(INSTALL_DIR) $(IDIR_XARGS)/usr/bin + $(INSTALL_BIN) $(WRKINST)/usr/bin/xargs \ + $(IDIR_XARGS)/usr/bin locate-install: ${INSTALL_DIR} ${IDIR_LOCATE}/usr/{bin,libexec} @@ -35,4 +48,5 @@ locate-install: $(INSTALL_BIN) $(WRKINST)/usr/libexec/{bigram,code,frcode} \ $(IDIR_LOCATE)/usr/libexec +include ${TOPDIR}/mk/host-bottom.mk include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/findutils/patches/patch-configure_ac b/package/findutils/patches/patch-configure_ac new file mode 100644 index 000000000..34c03d76f --- /dev/null +++ b/package/findutils/patches/patch-configure_ac @@ -0,0 +1,11 @@ +--- findutils-4.4.2.orig/configure.ac 2009-05-16 17:27:39.000000000 +0200 ++++ findutils-4.4.2/configure.ac 2014-03-23 19:39:22.000000000 +0100 +@@ -77,8 +77,6 @@ AC_PROG_CPP + dnl for gnulib + gl_EARLY + +-AM_C_PROTOTYPES +- + AC_PROG_INSTALL + AC_PROG_RANLIB + dnl AC_PROG_LIBTOOL diff --git a/package/findutils/patches/patch-gnulib_lib_freadahead_c b/package/findutils/patches/patch-gnulib_lib_freadahead_c new file mode 100644 index 000000000..d998fbf6c --- /dev/null +++ b/package/findutils/patches/patch-gnulib_lib_freadahead_c @@ -0,0 +1,15 @@ +--- findutils-4.4.2.orig/gnulib/lib/freadahead.c 2009-05-10 23:23:57.000000000 +0200 ++++ findutils-4.4.2/gnulib/lib/freadahead.c 2014-03-23 16:27:43.000000000 +0100 +@@ -19,6 +19,7 @@ + /* Specification. */ + #include "freadahead.h" + ++#ifndef HAVE___FREADAHEAD + size_t + freadahead (FILE *fp) + { +@@ -64,3 +65,4 @@ freadahead (FILE *fp) + #error "Please port gnulib freadahead.c to your platform! Look at the definition of fflush, fread on your system, then report this to bug-gnulib." + #endif + } ++#endif diff --git a/package/findutils/patches/patch-gnulib_lib_freadahead_h b/package/findutils/patches/patch-gnulib_lib_freadahead_h new file mode 100644 index 000000000..194232201 --- /dev/null +++ b/package/findutils/patches/patch-gnulib_lib_freadahead_h @@ -0,0 +1,24 @@ +--- findutils-4.4.2.orig/gnulib/lib/freadahead.h 2009-05-10 23:23:57.000000000 +0200 ++++ findutils-4.4.2/gnulib/lib/freadahead.h 2014-03-23 16:27:43.000000000 +0100 +@@ -29,8 +29,21 @@ extern "C" { + + STREAM must not be wide-character oriented. */ + ++#if HAVE___FREADAHEAD || (defined(__linux__) && !defined(__GLIBC__) && !defined(__UCLIBC__)) /* musl libc */ ++ ++#ifndef HAVE___FREADAHEAD ++#define HAVE___FREADAHEAD 1 ++#endif ++ ++# include <stdio_ext.h> ++# define freadahead(stream) __freadahead (stream) ++ ++#else ++ + extern size_t freadahead (FILE *stream); + ++#endif ++ + #ifdef __cplusplus + } + #endif diff --git a/package/findutils/patches/patch-gnulib_lib_fseeko_c b/package/findutils/patches/patch-gnulib_lib_fseeko_c new file mode 100644 index 000000000..aba9a1133 --- /dev/null +++ b/package/findutils/patches/patch-gnulib_lib_fseeko_c @@ -0,0 +1,18 @@ +--- findutils-4.4.2.orig/gnulib/lib/fseeko.c 2009-05-10 23:25:10.000000000 +0200 ++++ findutils-4.4.2/gnulib/lib/fseeko.c 2014-03-23 16:35:34.000000000 +0100 +@@ -94,8 +94,14 @@ rpl_fseeko (FILE *fp, off_t offset, int + if ((fp->_Mode & _MWRITE ? fp->_Next == fp->_Buf : fp->_Next == fp->_Rend) + && fp->_Rback == fp->_Back + sizeof (fp->_Back) + && fp->_Rsave == NULL) ++#elif FUNC_FFLUSH_STDIN < 0 && 200809 <= _POSIX_VERSION ++ /* Cross-compiling to some other system advertising conformance to ++ POSIX.1-2008 or later. Assume fseeko and fflush work as advertised. ++ If this assumption is incorrect, please report the bug to ++ bug-gnulib. */ ++ if (0) + #else +- #error "Please port gnulib fseeko.c to your platform! Look at the code in fpurge.c, then report this to bug-gnulib." ++ #error "Please port gnulib fseeko.c to your platform! Look at the code in fseeko.c, then report this to bug-gnulib." + #endif + { + off_t pos = lseek (fileno (fp), offset, whence); diff --git a/package/findutils/patches/patch-gnulib_m4_fflush_m4 b/package/findutils/patches/patch-gnulib_m4_fflush_m4 new file mode 100644 index 000000000..b3dd6a082 --- /dev/null +++ b/package/findutils/patches/patch-gnulib_m4_fflush_m4 @@ -0,0 +1,25 @@ +--- findutils-4.4.2.orig/gnulib/m4/fflush.m4 2009-05-10 23:23:57.000000000 +0200 ++++ findutils-4.4.2/gnulib/m4/fflush.m4 2014-03-23 18:40:09.000000000 +0100 +@@ -32,12 +32,18 @@ AC_DEFUN([gl_FUNC_FFLUSH], + return 4; + return !(lseek (fd, 0, SEEK_CUR) == 5); + ]])], [gl_cv_func_fflush_stdin=yes], [gl_cv_func_fflush_stdin=no], +- [dnl Pessimistically assume fflush is broken. This is wrong for +- dnl at least glibc and cygwin; but lib/fflush.c takes this into account. +- gl_cv_func_fflush_stdin=no]) ++ [gl_cv_func_fflush_stdin=cross]) + rm conftest.txt + ]) +- if test $gl_cv_func_fflush_stdin = no; then ++ case $gl_cv_func_fflush_stdin in ++ yes) gl_func_fflush_stdin=1 ;; ++ no) gl_func_fflush_stdin=0 ;; ++ *) gl_func_fflush_stdin='(-1)' ;; ++ esac ++ AC_DEFINE_UNQUOTED([FUNC_FFLUSH_STDIN], [$gl_func_fflush_stdin], ++ [Define to 1 if fflush is known to work on stdin as per POSIX.1-2008, ++ 0 if fflush is known to not work, -1 if unknown.]) ++ if test $gl_cv_func_fflush_stdin != yes; then + gl_REPLACE_FFLUSH + fi + ]) diff --git a/package/firefox/Makefile b/package/firefox/Makefile index 1fb663e06..d54996401 100644 --- a/package/firefox/Makefile +++ b/package/firefox/Makefile @@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:= firefox PKG_VERSION:= 26.0 -PKG_RELEASE:= 2 +PKG_RELEASE:= 4 PKG_MD5SUM:= 91ce51cc6474f1269484e5327643a59c PKG_DESCR:= graphical webbrowser PKG_SECTION:= x11/apps diff --git a/package/firefox/patches/patch-media_mtransport_third_party_nICEr_src_stun_addrs_c b/package/firefox/patches/patch-media_mtransport_third_party_nICEr_src_stun_addrs_c index 3a79329a3..f2b55cd6a 100644 --- a/package/firefox/patches/patch-media_mtransport_third_party_nICEr_src_stun_addrs_c +++ b/package/firefox/patches/patch-media_mtransport_third_party_nICEr_src_stun_addrs_c @@ -1,6 +1,16 @@ --- mozilla-release.orig/media/mtransport/third_party/nICEr/src/stun/addrs.c 2013-12-05 17:07:48.000000000 +0100 -+++ mozilla-release/media/mtransport/third_party/nICEr/src/stun/addrs.c 2014-02-05 07:19:01.000000000 +0100 -@@ -53,7 +53,9 @@ static char *RCSSTRING __UNUSED__="$Id: ++++ mozilla-release/media/mtransport/third_party/nICEr/src/stun/addrs.c 2014-03-16 18:41:03.000000000 +0100 +@@ -45,7 +45,9 @@ static char *RCSSTRING __UNUSED__="$Id: + #include <sys/param.h> + #include <sys/socket.h> + #ifndef ANDROID ++#ifdef __GLIBC__ + #include <sys/sysctl.h> ++#endif + #include <sys/syslog.h> + #else + #include <syslog.h> +@@ -53,7 +55,9 @@ static char *RCSSTRING __UNUSED__="$Id: #undef __unused #include <linux/sysctl.h> #endif @@ -10,7 +20,7 @@ #ifndef LINUX #if !defined(__OpenBSD__) && !defined(__NetBSD__) #include <net/if_var.h> -@@ -61,14 +63,17 @@ static char *RCSSTRING __UNUSED__="$Id: +@@ -61,14 +65,17 @@ static char *RCSSTRING __UNUSED__="$Id: #include <net/if_dl.h> #include <net/if_types.h> #include <sys/sockio.h> diff --git a/package/firefox/patches/patch-media_webrtc_trunk_webrtc_system_wrappers_source_cpu_info_cc b/package/firefox/patches/patch-media_webrtc_trunk_webrtc_system_wrappers_source_cpu_info_cc index 809dff52a..5e066a88a 100644 --- a/package/firefox/patches/patch-media_webrtc_trunk_webrtc_system_wrappers_source_cpu_info_cc +++ b/package/firefox/patches/patch-media_webrtc_trunk_webrtc_system_wrappers_source_cpu_info_cc @@ -1,6 +1,6 @@ --- mozilla-release.orig/media/webrtc/trunk/webrtc/system_wrappers/source/cpu_info.cc 2013-12-05 17:07:50.000000000 +0100 -+++ mozilla-release/media/webrtc/trunk/webrtc/system_wrappers/source/cpu_info.cc 2014-02-05 07:19:01.000000000 +0100 -@@ -36,11 +36,6 @@ uint32_t CpuInfo::DetectNumberOfCores() ++++ mozilla-release/media/webrtc/trunk/webrtc/system_wrappers/source/cpu_info.cc 2014-03-16 10:56:09.000000000 +0100 +@@ -36,11 +36,6 @@ uint32_t CpuInfo::DetectNumberOfCores() WEBRTC_TRACE(kTraceStateInfo, kTraceUtility, -1, "Available number of cores:%d", number_of_cores_); @@ -12,7 +12,7 @@ #elif defined(WEBRTC_BSD) || defined(WEBRTC_MAC) int name[] = { CTL_HW, -@@ -61,8 +56,6 @@ uint32_t CpuInfo::DetectNumberOfCores() +@@ -61,8 +56,6 @@ uint32_t CpuInfo::DetectNumberOfCores() "Failed to get number of cores"); number_of_cores_ = 1; } diff --git a/package/firefox/patches/patch-netwerk_sctp_src_user_environment_c b/package/firefox/patches/patch-netwerk_sctp_src_user_environment_c new file mode 100644 index 000000000..a31543c75 --- /dev/null +++ b/package/firefox/patches/patch-netwerk_sctp_src_user_environment_c @@ -0,0 +1,14 @@ +--- mozilla-release.orig/netwerk/sctp/src/user_environment.c 2013-12-05 17:07:52.000000000 +0100 ++++ mozilla-release/netwerk/sctp/src/user_environment.c 2014-03-16 17:53:08.000000000 +0100 +@@ -35,9 +35,11 @@ + #include <stdint.h> + #if !defined(__Userspace_os_FreeBSD) + #if !defined(ANDROID) ++#if defined(__GLIBC__) + #include <sys/sysctl.h> + #endif + #endif ++#endif + #include <netinet/sctp_os_userspace.h> + #endif + #include <user_environment.h> diff --git a/package/fping/Makefile b/package/fping/Makefile index fc8b845aa..7009b540e 100644 --- a/package/fping/Makefile +++ b/package/fping/Makefile @@ -4,15 +4,13 @@ include ${TOPDIR}/rules.mk PKG_NAME:= fping -PKG_VERSION:= 2.4b2_to -PKG_RELEASE:= 1 -PKG_MD5SUM:= d5e8be59e307cef76bc479e1684df705 -PKG_DESCR:= A program to ping hosts in parallel +PKG_VERSION:= 3.9 +PKG_RELEASE:= 2 +PKG_MD5SUM:= 7ad0313646681c33e975f7b946d8d283 +PKG_DESCR:= program to ping hosts in parallel PKG_SECTION:= net -PKG_URL:= http://fping.sourceforge.net/ -PKG_SITES:= http://fping.sourceforge.net/download/ - -DISTFILES:= ${PKG_NAME}.tar.gz +PKG_URL:= http://fping.org +PKG_SITES:= http://fping.org/dist/ include ${TOPDIR}/mk/package.mk diff --git a/package/freetype/Makefile b/package/freetype/Makefile index 55fdd98af..e8bcb24ff 100644 --- a/package/freetype/Makefile +++ b/package/freetype/Makefile @@ -4,10 +4,10 @@ include ${TOPDIR}/rules.mk PKG_NAME:= freetype -PKG_VERSION:= 2.5.1 +PKG_VERSION:= 2.5.3 PKG_RELEASE:= 1 -PKG_MD5SUM:= a359993ad0dc23323c676b04fdb57110 -PKG_DESCR:= A free, high-quality and portable font engine +PKG_MD5SUM:= cafe9f210e45360279c730d27bf071e9 +PKG_DESCR:= free, high-quality and portable font engine PKG_SECTION:= libs PKG_DEPENDS:= zlib PKG_BUILDDEP:= zlib freetype-host @@ -27,8 +27,12 @@ $(eval $(call HOST_template,LIBFREETYPE,libfreetype,${PKG_VERSION}-${PKG_RELEASE $(eval $(call PKG_template,LIBFREETYPE,libfreetype,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS})) HOST_STYLE:= auto -HOST_CONFIGURE_ARGS+= --without-png -CONFIGURE_ARGS+= --without-png +HOST_CONFIGURE_ARGS+= --with-zlib \ + --without-png \ + --without-bzip2 +CONFIGURE_ARGS+= --with-zlib \ + --without-png \ + --without-bzip2 libfreetype-install: ${INSTALL_DIR} ${IDIR_LIBFREETYPE}/usr/lib diff --git a/package/gcc/Makefile b/package/gcc/Makefile index c0c5f749a..76e58d954 100644 --- a/package/gcc/Makefile +++ b/package/gcc/Makefile @@ -21,7 +21,7 @@ include ${TOPDIR}/mk/package.mk $(eval $(call PKG_template,GCC,gcc,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) $(eval $(call PKG_template,GXX,g++,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) -CPPFLAGS_FOR_BUILD:= -I$(STAGING_HOST_DIR)/include +CPPFLAGS_FOR_BUILD:= -I$(STAGING_HOST_DIR)/usr/include CFLAGS_FOR_BUILD:= LDFLAGS_FOR_BUILD:= TARGET_CPPFLAGS:= diff --git a/package/gdb/Makefile b/package/gdb/Makefile index d8b9a26bd..e282052e3 100644 --- a/package/gdb/Makefile +++ b/package/gdb/Makefile @@ -11,8 +11,6 @@ PKG_DEPENDS:= libthread-db libncurses libexpat libgcc zlib PKG_BUILDDEP:= ncurses readline libiconv-tiny expat zlib PKG_NOPARALLEL:= 1 -PKG_ARCH_DEPENDS:= !m68k - include ${TOPDIR}/mk/package.mk $(eval $(call PKG_template,GDB,gdb,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) @@ -22,27 +20,28 @@ TARGET_CFLAGS+= -static CONFIGURE_ARGS+= --enable-static endif -TARGET_CFLAGS:= $(filter-out -flto,$(TARGET_CFLAGS)) TARGET_CFLAGS+= ${TARGET_CPPFLAGS} -fPIC -CONFIGURE_ARGS+= --without-uiout --enable-gdbmi \ - --disable-tui --disable-gdbtk --without-x \ - --without-included-gettext --disable-sim \ - --with-curses --disable-werror \ - --without-auto-load-safe-path \ +CONFIGURE_ARGS+= --without-uiout \ + --disable-tui \ + --disable-gdbtk \ + --without-x \ + --disable-sim \ + --disable-werror \ --disable-gdbserver \ - --without-python + --without-python \ + --without-included-gettext \ + --without-auto-load-safe-path \ + --with-curses \ + --enable-gdbmi + XAKE_FLAGS+= LDFLAGS='${TARGET_LDFLAGS}' # disable honour cflags stuff XAKE_FLAGS+= GCC_HONOUR_COPTS:=s -post-extract: - -mv $(STAGING_TARGET_DIR)/usr/lib/libiberty.a $(STAGING_TARGET_DIR)/usr/lib/libiberty.a.bak - gdb-install: ${INSTALL_DIR} ${IDIR_GDB}/usr/bin ${INSTALL_BIN} ${WRKINST}/usr/bin/gdb ${IDIR_GDB}/usr/bin/ # shipped libbfd conflicts with system wide one rm -f ${WRKINST}/usr/lib/libbfd* - -mv $(STAGING_TARGET_DIR)/usr/lib/libiberty.a.bak $(STAGING_TARGET_DIR)/usr/lib/libiberty.a include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/gdb/patches/microblaze.patch b/package/gdb/patches/microblaze.patch new file mode 100644 index 000000000..ce3f9b35b --- /dev/null +++ b/package/gdb/patches/microblaze.patch @@ -0,0 +1,1842 @@ +diff -Nur gdb-7.7.orig/bfd/bfd-in2.h gdb-7.7/bfd/bfd-in2.h +--- gdb-7.7.orig/bfd/bfd-in2.h 2014-02-06 03:21:29.000000000 +0100 ++++ gdb-7.7/bfd/bfd-in2.h 2014-03-26 19:43:36.000000000 +0100 +@@ -5378,6 +5378,11 @@ + expressions of the form "Symbol Op Symbol" */ + BFD_RELOC_MICROBLAZE_32_SYM_OP_SYM, + ++/* This is a 32 bit reloc that stores the 32 bit pc relative ++value in two words (with an imm instruction). No relocation is ++done here - only used for relaxing */ ++ BFD_RELOC_MICROBLAZE_32_NONE, ++ + /* This is a 64 bit reloc that stores the 32 bit pc relative + value in two words (with an imm instruction). No relocation is + done here - only used for relaxing */ +diff -Nur gdb-7.7.orig/bfd/elf32-microblaze.c gdb-7.7/bfd/elf32-microblaze.c +--- gdb-7.7.orig/bfd/elf32-microblaze.c 2013-12-08 05:55:47.000000000 +0100 ++++ gdb-7.7/bfd/elf32-microblaze.c 2014-03-27 08:30:48.000000000 +0100 +@@ -177,6 +177,20 @@ + FALSE), /* PC relative offset? */ + + /* This reloc does nothing. Used for relaxation. */ ++ HOWTO (R_MICROBLAZE_32_NONE, /* Type. */ ++ 0, /* Rightshift. */ ++ 2, /* Size (0 = byte, 1 = short, 2 = long). */ ++ 32, /* Bitsize. */ ++ TRUE, /* PC_relative. */ ++ 0, /* Bitpos. */ ++ complain_overflow_bitfield, /* Complain on overflow. */ ++ NULL, /* Special Function. */ ++ "R_MICROBLAZE_32_NONE",/* Name. */ ++ FALSE, /* Partial Inplace. */ ++ 0, /* Source Mask. */ ++ 0, /* Dest Mask. */ ++ FALSE), /* PC relative offset? */ ++ + HOWTO (R_MICROBLAZE_64_NONE, /* Type. */ + 0, /* Rightshift. */ + 2, /* Size (0 = byte, 1 = short, 2 = long). */ +@@ -532,7 +546,10 @@ + case BFD_RELOC_NONE: + microblaze_reloc = R_MICROBLAZE_NONE; + break; +- case BFD_RELOC_MICROBLAZE_64_NONE: ++ case BFD_RELOC_MICROBLAZE_32_NONE: ++ microblaze_reloc = R_MICROBLAZE_32_NONE; ++ break; ++ case BFD_RELOC_MICROBLAZE_64_NONE: + microblaze_reloc = R_MICROBLAZE_64_NONE; + break; + case BFD_RELOC_32: +@@ -668,6 +685,67 @@ + return _bfd_elf_is_local_label_name (abfd, name); + } + ++/* Support for core dump NOTE sections. */ ++static bfd_boolean ++microblaze_elf_grok_prstatus (bfd *abfd, Elf_Internal_Note *note) ++{ ++ int offset; ++ unsigned int size; ++ ++ switch (note->descsz) ++ { ++ default: ++ return FALSE; ++ ++ case 228: /* Linux/MicroBlaze */ ++ /* pr_cursig */ ++ elf_tdata (abfd)->core->signal = bfd_get_16 (abfd, note->descdata + 12); ++ ++ /* pr_pid */ ++ elf_tdata (abfd)->core->pid = bfd_get_32 (abfd, note->descdata + 24); ++ ++ /* pr_reg */ ++ offset = 72; ++ size = 50 * 4; ++ ++ break; ++ } ++ ++ /* Make a ".reg/999" section. */ ++ return _bfd_elfcore_make_pseudosection (abfd, ".reg", ++ size, note->descpos + offset); ++} ++ ++static bfd_boolean ++microblaze_elf_grok_psinfo (bfd *abfd, Elf_Internal_Note *note) ++{ ++ switch (note->descsz) ++ { ++ default: ++ return FALSE; ++ ++ case 128: /* Linux/MicroBlaze elf_prpsinfo */ ++ elf_tdata (abfd)->core->program ++ = _bfd_elfcore_strndup (abfd, note->descdata + 32, 16); ++ elf_tdata (abfd)->core->command ++ = _bfd_elfcore_strndup (abfd, note->descdata + 48, 80); ++ } ++ ++ /* Note that for some reason, a spurious space is tacked ++ onto the end of the args in some (at least one anyway) ++ implementations, so strip it off if it exists. */ ++ ++ { ++ char *command = elf_tdata (abfd)->core->command; ++ int n = strlen (command); ++ ++ if (0 < n && command[n - 1] == ' ') ++ command[n - 1] = '\0'; ++ } ++ ++ return TRUE; ++} ++ + /* The microblaze linker (like many others) needs to keep track of + the number of relocs that it decides to copy as dynamic relocs in + check_relocs for each symbol. This is so that it can later discard +@@ -1023,7 +1101,7 @@ + { + /* External symbol. */ + bfd_boolean warned ATTRIBUTE_UNUSED; +- bfd_boolean ignored ATTRIBUTE_UNUSED; ++ bfd_boolean ignored; + + RELOC_FOR_GLOBAL_SYMBOL (info, input_bfd, input_section, rel, + r_symndx, symtab_hdr, sym_hashes, +@@ -1852,14 +1930,22 @@ + } + break; + case R_MICROBLAZE_NONE: ++ case R_MICROBLAZE_32_NONE: + { + /* This was a PC-relative instruction that was + completely resolved. */ + int sfix, efix; ++ unsigned int val; + bfd_vma target_address; + target_address = irel->r_addend + irel->r_offset; + sfix = calc_fixup (irel->r_offset, 0, sec); + efix = calc_fixup (target_address, 0, sec); ++ ++ /* Validate the in-band val. */ ++ val = bfd_get_32 (abfd, contents + irel->r_offset); ++ if (val != irel->r_addend && ELF32_R_TYPE (irel->r_info) == R_MICROBLAZE_32_NONE) { ++ fprintf(stderr, "%d: CORRUPT relax reloc %x %lx\n", __LINE__, val, irel->r_addend); ++ } + irel->r_addend -= (efix - sfix); + /* Should use HOWTO. */ + microblaze_bfd_write_imm_value_32 (abfd, contents + irel->r_offset, +@@ -1907,6 +1993,49 @@ + irelscanend = irelocs + o->reloc_count; + for (irelscan = irelocs; irelscan < irelscanend; irelscan++) + { ++ if (1 && ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_32_NONE) ++ { ++ unsigned int val; ++ ++ isym = isymbuf + ELF32_R_SYM (irelscan->r_info); ++ ++ /* hax: We only do the following fixup for debug location lists. */ ++ if (strcmp(".debug_loc", o->name)) ++ continue; ++ ++ /* This was a PC-relative instruction that was completely resolved. */ ++ if (ocontents == NULL) ++ { ++ if (elf_section_data (o)->this_hdr.contents != NULL) ++ ocontents = elf_section_data (o)->this_hdr.contents; ++ else ++ { ++ /* We always cache the section contents. ++ Perhaps, if info->keep_memory is FALSE, we ++ should free them, if we are permitted to. */ ++ ++ if (o->rawsize == 0) ++ o->rawsize = o->size; ++ ocontents = (bfd_byte *) bfd_malloc (o->rawsize); ++ if (ocontents == NULL) ++ goto error_return; ++ if (!bfd_get_section_contents (abfd, o, ocontents, ++ (file_ptr) 0, ++ o->rawsize)) ++ goto error_return; ++ elf_section_data (o)->this_hdr.contents = ocontents; ++ } ++ } ++ ++ val = bfd_get_32 (abfd, ocontents + irelscan->r_offset); ++ if (val != irelscan->r_addend) { ++ fprintf(stderr, "%d: CORRUPT relax reloc! %x %lx\n", __LINE__, val, irelscan->r_addend); ++ } ++ ++ irelscan->r_addend -= calc_fixup (irelscan->r_addend, 0, sec); ++ microblaze_bfd_write_imm_value_32 (abfd, ocontents + irelscan->r_offset, ++ irelscan->r_addend); ++ } + if (ELF32_R_TYPE (irelscan->r_info) == (int) R_MICROBLAZE_32) + { + isym = isymbuf + ELF32_R_SYM (irelscan->r_info); +@@ -1966,7 +2095,7 @@ + elf_section_data (o)->this_hdr.contents = ocontents; + } + } +- irelscan->r_addend -= calc_fixup (irel->r_addend ++ irelscan->r_addend -= calc_fixup (irelscan->r_addend + + isym->st_value, + 0, + sec); +@@ -3506,4 +3635,7 @@ + #define elf_backend_size_dynamic_sections microblaze_elf_size_dynamic_sections + #define elf_backend_add_symbol_hook microblaze_elf_add_symbol_hook + ++#define elf_backend_grok_prstatus microblaze_elf_grok_prstatus ++#define elf_backend_grok_psinfo microblaze_elf_grok_psinfo ++ + #include "elf32-target.h" +diff -Nur gdb-7.7.orig/bfd/libbfd.h gdb-7.7/bfd/libbfd.h +--- gdb-7.7.orig/bfd/libbfd.h 2014-02-06 03:21:29.000000000 +0100 ++++ gdb-7.7/bfd/libbfd.h 2014-03-26 20:02:00.000000000 +0100 +@@ -2615,6 +2615,7 @@ + "BFD_RELOC_MICROBLAZE_32_ROSDA", + "BFD_RELOC_MICROBLAZE_32_RWSDA", + "BFD_RELOC_MICROBLAZE_32_SYM_OP_SYM", ++ "BFD_RELOC_MICROBLAZE_32_NONE", + "BFD_RELOC_MICROBLAZE_64_NONE", + "BFD_RELOC_MICROBLAZE_64_GOTPC", + "BFD_RELOC_MICROBLAZE_64_GOT", +diff -Nur gdb-7.7.orig/gdb/Makefile.in gdb-7.7/gdb/Makefile.in +--- gdb-7.7.orig/gdb/Makefile.in 2014-02-06 03:21:29.000000000 +0100 ++++ gdb-7.7/gdb/Makefile.in 2014-03-26 20:33:32.000000000 +0100 +@@ -849,7 +849,7 @@ + annotate.h sim-regno.h dictionary.h dfp.h main.h frame-unwind.h \ + remote-fileio.h i386-linux-tdep.h vax-tdep.h objc-lang.h \ + sentinel-frame.h bcache.h symfile.h windows-tdep.h linux-tdep.h \ +-gdb_usleep.h jit.h xml-syscall.h microblaze-tdep.h \ ++gdb_usleep.h jit.h xml-syscall.h microblaze-tdep.h microblaze-linux-tdep.h \ + psymtab.h psympriv.h progspace.h bfin-tdep.h ia64-hpux-tdep.h \ + amd64-darwin-tdep.h charset-list.h \ + config/djgpp/langinfo.h config/djgpp/nl_types.h darwin-nat.h \ +@@ -1547,7 +1547,7 @@ + m68kbsd-nat.c m68kbsd-tdep.c \ + m68klinux-nat.c m68klinux-tdep.c \ + m88k-tdep.c m88kbsd-nat.c \ +- microblaze-tdep.c microblaze-linux-tdep.c \ ++ microblaze-tdep.c microblaze-linux-nat.c microblaze-linux-tdep.c \ + mingw-hdep.c \ + mips-linux-nat.c mips-linux-tdep.c \ + mips-irix-tdep.c \ +diff -Nur gdb-7.7.orig/gdb/config/microblaze/linux.mh gdb-7.7/gdb/config/microblaze/linux.mh +--- gdb-7.7.orig/gdb/config/microblaze/linux.mh 1970-01-01 01:00:00.000000000 +0100 ++++ gdb-7.7/gdb/config/microblaze/linux.mh 2014-03-24 15:52:56.000000000 +0100 +@@ -0,0 +1,10 @@ ++# Host: Microblaze, running Linux ++ ++NAT_FILE= config/nm-linux.h ++NATDEPFILES= inf-ptrace.o fork-child.o \ ++ microblaze-linux-nat.o proc-service.o linux-thread-db.o \ ++ linux-nat.o linux-osdata.o linux-fork.o linux-procfs.o linux-ptrace.o \ ++ linux-waitpid.o ++NAT_CDEPS = $(srcdir)/proc-service.list ++ ++LOADLIBES = -ldl $(RDYNAMIC) +diff -Nur gdb-7.7.orig/gdb/configure.host gdb-7.7/gdb/configure.host +--- gdb-7.7.orig/gdb/configure.host 2013-12-08 05:55:47.000000000 +0100 ++++ gdb-7.7/gdb/configure.host 2014-03-26 20:34:44.000000000 +0100 +@@ -59,6 +59,7 @@ + m68*) gdb_host_cpu=m68k ;; + m88*) gdb_host_cpu=m88k ;; + mips*) gdb_host_cpu=mips ;; ++microblaze*) gdb_host_cpu=microblaze ;; + powerpc* | rs6000) gdb_host_cpu=powerpc ;; + sparcv9 | sparc64) gdb_host_cpu=sparc ;; + s390*) gdb_host_cpu=s390 ;; +@@ -133,6 +134,8 @@ + gdb_host=nbsd ;; + mips64*-*-openbsd*) gdb_host=obsd64 ;; + ++microblaze*-*linux*) gdb_host=linux ;; ++ + powerpc-*-aix* | rs6000-*-* | powerpc64-*-aix*) + gdb_host=aix ;; + powerpc*-*-freebsd*) gdb_host=fbsd ;; +diff -Nur gdb-7.7.orig/gdb/configure.tgt gdb-7.7/gdb/configure.tgt +--- gdb-7.7.orig/gdb/configure.tgt 2014-02-06 03:21:29.000000000 +0100 ++++ gdb-7.7/gdb/configure.tgt 2014-03-26 20:36:23.000000000 +0100 +@@ -340,9 +340,10 @@ + + microblaze*-linux-*|microblaze*-*-linux*) + # Target: Xilinx MicroBlaze running Linux +- gdb_target_obs="microblaze-tdep.o microblaze-linux-tdep.o microblaze-rom.o \ ++ gdb_target_obs="microblaze-tdep.o microblaze-linux-tdep.o microblaze-rom.o glibc-tdep.o \ + monitor.o dsrec.o solib-svr4.o symfile-mem.o linux-tdep.o" + gdb_sim=../sim/microblaze/libsim.a ++ build_gdbserver=yes + ;; + microblaze*-*-*) + # Target: Xilinx MicroBlaze running standalone +diff -Nur gdb-7.7.orig/gdb/gdbserver/Makefile.in gdb-7.7/gdb/gdbserver/Makefile.in +--- gdb-7.7.orig/gdb/gdbserver/Makefile.in 2014-02-06 03:21:29.000000000 +0100 ++++ gdb-7.7/gdb/gdbserver/Makefile.in 2014-03-26 20:39:22.000000000 +0100 +@@ -148,6 +148,7 @@ + $(srcdir)/linux-ia64-low.c $(srcdir)/linux-low.c \ + $(srcdir)/linux-m32r-low.c \ + $(srcdir)/linux-m68k-low.c $(srcdir)/linux-mips-low.c \ ++ $(srcdir)/linux-microblaze-low.c \ + $(srcdir)/linux-nios2-low.c \ + $(srcdir)/linux-ppc-low.c \ + $(srcdir)/linux-s390-low.c \ +@@ -328,6 +329,7 @@ + rm -f arm-with-iwmmxt.c + rm -f arm-with-vfpv2.c arm-with-vfpv3.c arm-with-neon.c + rm -f mips-linux.c mips64-linux.c ++ rm -f microblaze-linux.c + rm -f nios2-linux.c + rm -f powerpc-32.c powerpc-32l.c powerpc-64l.c powerpc-e500l.c + rm -f powerpc-altivec32l.c powerpc-cell32l.c powerpc-vsx32l.c +@@ -600,6 +602,8 @@ + $(SHELL) $(regdat_sh) $(srcdir)/../regformats/mips64-linux.dat mips64-linux.c + mips64-dsp-linux.c : $(srcdir)/../regformats/mips64-dsp-linux.dat $(regdat_sh) + $(SHELL) $(regdat_sh) $(srcdir)/../regformats/mips64-dsp-linux.dat mips64-dsp-linux.c ++microblaze-linux.c : $(srcdir)/../regformats/reg-microblaze.dat $(regdat_sh) ++ $(SHELL) $(regdat_sh) $(srcdir)/../regformats/reg-microblaze.dat microblaze-linux.c + nios2-linux.c : $(srcdir)/../regformats/nios2-linux.dat $(regdat_sh) + $(SHELL) $(regdat_sh) $(srcdir)/../regformats/nios2-linux.dat nios2-linux.c + powerpc-32.c : $(srcdir)/../regformats/rs6000/powerpc-32.dat $(regdat_sh) +diff -Nur gdb-7.7.orig/gdb/gdbserver/configure.srv gdb-7.7/gdb/gdbserver/configure.srv +--- gdb-7.7.orig/gdb/gdbserver/configure.srv 2014-01-08 10:23:36.000000000 +0100 ++++ gdb-7.7/gdb/gdbserver/configure.srv 2014-03-26 20:40:44.000000000 +0100 +@@ -198,6 +198,13 @@ + srv_linux_usrregs=yes + srv_linux_thread_db=yes + ;; ++ microblaze*-*-linux*) srv_regobj=microblaze-linux.o ++ srv_tgtobj="$srv_linux_obj linux-microblaze-low.o" ++ srv_linux_usrregs=yes ++ srv_linux_regsets=yes ++ srv_linux_thread_db=yes ++ ;; ++ + nios2*-*-linux*) srv_regobj="nios2-linux.o" + srv_tgtobj="$srv_linux_obj linux-nios2-low.o" + srv_xmlfiles="nios2-linux.xml" +diff -Nur gdb-7.7.orig/gdb/gdbserver/linux-microblaze-low.c gdb-7.7/gdb/gdbserver/linux-microblaze-low.c +--- gdb-7.7.orig/gdb/gdbserver/linux-microblaze-low.c 1970-01-01 01:00:00.000000000 +0100 ++++ gdb-7.7/gdb/gdbserver/linux-microblaze-low.c 2014-03-26 20:41:13.000000000 +0100 +@@ -0,0 +1,228 @@ ++/* GNU/Linux/Microblaze specific low level interface, for the remote server for ++ GDB. ++ Copyright (C) 1995-2013 Free Software Foundation, Inc. ++ ++ This file is part of GDB. ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 3 of the License, or ++ (at your option) any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program. If not, see <http://www.gnu.org/licenses/>. */ ++ ++#include "server.h" ++#include "linux-low.h" ++ ++#include <asm/ptrace.h> ++#include <sys/procfs.h> ++#include <sys/ptrace.h> ++ ++#include "gdb_proc_service.h" ++ ++static int microblaze_regmap[] = ++ {PT_GPR(0), PT_GPR(1), PT_GPR(2), PT_GPR(3), ++ PT_GPR(4), PT_GPR(5), PT_GPR(6), PT_GPR(7), ++ PT_GPR(8), PT_GPR(9), PT_GPR(10), PT_GPR(11), ++ PT_GPR(12), PT_GPR(13), PT_GPR(14), PT_GPR(15), ++ PT_GPR(16), PT_GPR(17), PT_GPR(18), PT_GPR(19), ++ PT_GPR(20), PT_GPR(21), PT_GPR(22), PT_GPR(23), ++ PT_GPR(24), PT_GPR(25), PT_GPR(26), PT_GPR(27), ++ PT_GPR(28), PT_GPR(29), PT_GPR(30), PT_GPR(31), ++ PT_PC, PT_MSR, PT_EAR, PT_ESR, ++ PT_FSR ++ }; ++ ++#define microblaze_num_regs (sizeof microblaze_regmap / sizeof microblaze_regmap[0]) ++ ++/* Defined in auto-generated file microblaze-linux.c. */ ++void init_registers_microblaze (void); ++extern const struct target_desc *tdesc_microblaze; ++ ++static int ++microblaze_cannot_store_register (int regno) ++{ ++ if (microblaze_regmap[regno] == -1 || regno == 0) ++ return 1; ++ ++ return 0; ++} ++ ++static int ++microblaze_cannot_fetch_register (int regno) ++{ ++ return 0; ++} ++ ++static CORE_ADDR ++microblaze_get_pc (struct regcache *regcache) ++{ ++ unsigned long pc; ++ ++ collect_register_by_name (regcache, "pc", &pc); ++ return (CORE_ADDR) pc; ++} ++ ++static void ++microblaze_set_pc (struct regcache *regcache, CORE_ADDR pc) ++{ ++ unsigned long newpc = pc; ++ ++ supply_register_by_name (regcache, "pc", &newpc); ++} ++ ++/* dbtrap insn */ ++/* brki r16, 0x18; */ ++static const unsigned long microblaze_breakpoint = 0xba0c0018; ++#define microblaze_breakpoint_len 4 ++ ++static int ++microblaze_breakpoint_at (CORE_ADDR where) ++{ ++ unsigned long insn; ++ ++ (*the_target->read_memory) (where, (unsigned char *) &insn, 4); ++ if (insn == microblaze_breakpoint) ++ return 1; ++ /* If necessary, recognize more trap instructions here. GDB only uses the ++ one. */ ++ return 0; ++} ++ ++static CORE_ADDR ++microblaze_reinsert_addr (struct regcache *regcache) ++{ ++ unsigned long pc; ++ collect_register_by_name (regcache, "r15", &pc); ++ return pc; ++} ++ ++#ifdef HAVE_PTRACE_GETREGS ++ ++static void ++microblaze_collect_ptrace_register (struct regcache *regcache, int regno, char *buf) ++{ ++ int size = register_size (regcache->tdesc, regno); ++ ++ memset (buf, 0, sizeof (long)); ++ ++ if (size < sizeof (long)) ++ collect_register (regcache, regno, buf + sizeof (long) - size); ++ else ++ collect_register (regcache, regno, buf); ++} ++ ++static void ++microblaze_supply_ptrace_register (struct regcache *regcache, ++ int regno, const char *buf) ++{ ++ int size = register_size (regcache->tdesc, regno); ++ ++ if (regno == 0) { ++ unsigned long regbuf_0 = 0; ++ /* clobbering r0 so that it is always 0 as enforced by hardware */ ++ supply_register (regcache, regno, (const char*)®buf_0); ++ } else { ++ if (size < sizeof (long)) ++ supply_register (regcache, regno, buf + sizeof (long) - size); ++ else ++ supply_register (regcache, regno, buf); ++ } ++} ++ ++/* Provide only a fill function for the general register set. ps_lgetregs ++ will use this for NPTL support. */ ++ ++static void microblaze_fill_gregset (struct regcache *regcache, void *buf) ++{ ++ int i; ++ ++ for (i = 0; i < 32; i++) ++ microblaze_collect_ptrace_register (regcache, i, (char *) buf + microblaze_regmap[i]); ++} ++ ++static void ++microblaze_store_gregset (struct regcache *regcache, const void *buf) ++{ ++ int i; ++ ++ for (i = 0; i < 32; i++) ++ supply_register (regcache, i, (char *) buf + microblaze_regmap[i]); ++} ++ ++#endif /* HAVE_PTRACE_GETREGS */ ++ ++static struct regset_info microblaze_regsets[] = { ++#ifdef HAVE_PTRACE_GETREGS ++ { PTRACE_GETREGS, PTRACE_SETREGS, 0, sizeof (elf_gregset_t), GENERAL_REGS, microblaze_fill_gregset, microblaze_store_gregset }, ++ { 0, 0, 0, -1, -1, NULL, NULL }, ++#endif /* HAVE_PTRACE_GETREGS */ ++ { 0, 0, 0, -1, -1, NULL, NULL } ++}; ++ ++static struct regsets_info microblaze_regsets_info = ++ { ++ microblaze_regsets, /* regsets */ ++ 0, /* num_regsets */ ++ NULL, /* disabled_regsets */ ++ }; ++ ++static struct usrregs_info microblaze_usrregs_info = ++ { ++ microblaze_num_regs, ++ microblaze_regmap, ++ }; ++ ++static struct regs_info regs_info = ++ { ++ NULL, /* regset_bitmap */ ++ µblaze_usrregs_info, ++ µblaze_regsets_info ++ }; ++ ++static const struct regs_info * ++microblaze_regs_info (void) ++{ ++ return ®s_info; ++} ++ ++static void ++microblaze_arch_setup (void) ++{ ++ current_process ()->tdesc = tdesc_microblaze; ++} ++ ++struct linux_target_ops the_low_target = { ++ microblaze_arch_setup, ++ microblaze_regs_info, ++ microblaze_cannot_fetch_register, ++ microblaze_cannot_store_register, ++ NULL, /* fetch_register */ ++ microblaze_get_pc, ++ microblaze_set_pc, ++ (const unsigned char *) µblaze_breakpoint, ++ microblaze_breakpoint_len, ++ microblaze_reinsert_addr, ++ 0, ++ microblaze_breakpoint_at, ++ NULL, ++ NULL, ++ NULL, ++ NULL, ++ microblaze_collect_ptrace_register, ++ microblaze_supply_ptrace_register, ++}; ++ ++void ++initialize_low_arch (void) ++{ ++ init_registers_microblaze (); ++ ++ initialize_regsets_info (µblaze_regsets_info); ++} +\ No newline at end of file +diff -Nur gdb-7.7.orig/gdb/microblaze-linux-nat.c gdb-7.7/gdb/microblaze-linux-nat.c +--- gdb-7.7.orig/gdb/microblaze-linux-nat.c 1970-01-01 01:00:00.000000000 +0100 ++++ gdb-7.7/gdb/microblaze-linux-nat.c 2014-03-27 09:51:56.000000000 +0100 +@@ -0,0 +1,430 @@ ++/* Microblaze GNU/Linux native support. ++ ++ Copyright (C) 1988-1989, 1991-1992, 1994, 1996, 2000-2012 Free ++ Software Foundation, Inc. ++ ++ This file is part of GDB. ++ ++ This program is free software; you can redistribute it and/or modify ++ it under the terms of the GNU General Public License as published by ++ the Free Software Foundation; either version 3 of the License, or ++ (at your option) any later version. ++ ++ This program is distributed in the hope that it will be useful, ++ but WITHOUT ANY WARRANTY; without even the implied warranty of ++ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++ GNU General Public License for more details. ++ ++ You should have received a copy of the GNU General Public License ++ along with this program. If not, see <http://www.gnu.org/licenses/>. */ ++ ++#include "defs.h" ++#include "arch-utils.h" ++#include "dis-asm.h" ++#include "frame.h" ++#include "trad-frame.h" ++#include "symtab.h" ++#include "value.h" ++#include "gdbcmd.h" ++#include "breakpoint.h" ++#include "inferior.h" ++#include "regcache.h" ++#include "target.h" ++#include "frame.h" ++#include "frame-base.h" ++#include "frame-unwind.h" ++#include "dwarf2-frame.h" ++#include "osabi.h" ++ ++#include "gdb_assert.h" ++#include "target-descriptions.h" ++#include "opcodes/microblaze-opcm.h" ++#include "opcodes/microblaze-dis.h" ++ ++#include "linux-nat.h" ++#include "target-descriptions.h" ++ ++#include <sys/user.h> ++#include <sys/utsname.h> ++#include <sys/procfs.h> ++#include <sys/ptrace.h> ++ ++/* Prototypes for supply_gregset etc. */ ++#include "gregset.h" ++ ++#include "microblaze-tdep.h" ++ ++#include <elf/common.h> ++#include "auxv.h" ++ ++/* Defines ps_err_e, struct ps_prochandle. */ ++#include "gdb_proc_service.h" ++ ++/* On GNU/Linux, threads are implemented as pseudo-processes, in which ++ case we may be tracing more than one process at a time. In that ++ case, inferior_ptid will contain the main process ID and the ++ individual thread (process) ID. get_thread_id () is used to get ++ the thread id if it's available, and the process id otherwise. */ ++ ++int ++get_thread_id (ptid_t ptid) ++{ ++ int tid = ptid_get_lwp (ptid); ++ if (0 == tid) ++ tid = ptid_get_pid (ptid); ++ return tid; ++} ++ ++#define GET_THREAD_ID(PTID) get_thread_id (PTID) ++ ++/* Non-zero if our kernel may support the PTRACE_GETREGS and ++ PTRACE_SETREGS requests, for reading and writing the ++ general-purpose registers. Zero if we've tried one of ++ them and gotten an error. */ ++int have_ptrace_getsetregs = 1; ++ ++static int ++microblaze_register_u_addr (struct gdbarch *gdbarch, int regno) ++{ ++ int u_addr = -1; ++ struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); ++ /* NOTE: cagney/2003-11-25: This is the word size used by the ptrace ++ interface, and not the wordsize of the program's ABI. */ ++ int wordsize = sizeof (long); ++ ++ /* General purpose registers occupy 1 slot each in the buffer. */ ++ if (regno >= MICROBLAZE_R0_REGNUM ++ && regno <= MICROBLAZE_FSR_REGNUM) ++ u_addr = (regno * wordsize); ++ ++ return u_addr; ++} ++ ++ ++static void ++fetch_register (struct regcache *regcache, int tid, int regno) ++{ ++ struct gdbarch *gdbarch = get_regcache_arch (regcache); ++ struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); ++ /* This isn't really an address. But ptrace thinks of it as one. */ ++ CORE_ADDR regaddr = microblaze_register_u_addr (gdbarch, regno); ++ int bytes_transferred; ++ unsigned int offset; /* Offset of registers within the u area. */ ++ char buf[MAX_REGISTER_SIZE]; ++ ++ if (regaddr == -1) ++ { ++ memset (buf, '\0', register_size (gdbarch, regno)); /* Supply zeroes */ ++ regcache_raw_supply (regcache, regno, buf); ++ return; ++ } ++ ++ /* Read the raw register using sizeof(long) sized chunks. On a ++ 32-bit platform, 64-bit floating-point registers will require two ++ transfers. */ ++ for (bytes_transferred = 0; ++ bytes_transferred < register_size (gdbarch, regno); ++ bytes_transferred += sizeof (long)) ++ { ++ long l; ++ ++ errno = 0; ++ l = ptrace (PTRACE_PEEKUSER, tid, (PTRACE_TYPE_ARG3) regaddr, 0); ++ regaddr += sizeof (long); ++ if (errno != 0) ++ { ++ char message[128]; ++ sprintf (message, "reading register %s (#%d)", ++ gdbarch_register_name (gdbarch, regno), regno); ++ perror_with_name (message); ++ } ++ memcpy (&buf[bytes_transferred], &l, sizeof (l)); ++ } ++ ++ /* Now supply the register. Keep in mind that the regcache's idea ++ of the register's size may not be a multiple of sizeof ++ (long). */ ++ if (gdbarch_byte_order (gdbarch) == BFD_ENDIAN_LITTLE) ++ { ++ /* Little-endian values are always found at the left end of the ++ bytes transferred. */ ++ regcache_raw_supply (regcache, regno, buf); ++ } ++ else if (gdbarch_byte_order (gdbarch) == BFD_ENDIAN_BIG) ++ { ++ /* Big-endian values are found at the right end of the bytes ++ transferred. */ ++ size_t padding = (bytes_transferred - register_size (gdbarch, regno)); ++ regcache_raw_supply (regcache, regno, buf + padding); ++ } ++ else ++ internal_error (__FILE__, __LINE__, ++ _("fetch_register: unexpected byte order: %d"), ++ gdbarch_byte_order (gdbarch)); ++} ++ ++/* This function actually issues the request to ptrace, telling ++ it to get all general-purpose registers and put them into the ++ specified regset. ++ ++ If the ptrace request does not exist, this function returns 0 ++ and properly sets the have_ptrace_* flag. If the request fails, ++ this function calls perror_with_name. Otherwise, if the request ++ succeeds, then the regcache gets filled and 1 is returned. */ ++static int ++fetch_all_gp_regs (struct regcache *regcache, int tid) ++{ ++ struct gdbarch *gdbarch = get_regcache_arch (regcache); ++ struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); ++ gdb_gregset_t gregset; ++ ++ if (ptrace (PTRACE_GETREGS, tid, 0, (void *) &gregset) < 0) ++ { ++ if (errno == EIO) ++ { ++ have_ptrace_getsetregs = 0; ++ return 0; ++ } ++ perror_with_name (_("Couldn't get general-purpose registers.")); ++ } ++ ++ supply_gregset (regcache, (const gdb_gregset_t *) &gregset); ++ ++ return 1; ++} ++ ++ ++/* This is a wrapper for the fetch_all_gp_regs function. It is ++ responsible for verifying if this target has the ptrace request ++ that can be used to fetch all general-purpose registers at one ++ shot. If it doesn't, then we should fetch them using the ++ old-fashioned way, which is to iterate over the registers and ++ request them one by one. */ ++static void ++fetch_gp_regs (struct regcache *regcache, int tid) ++{ ++ struct gdbarch *gdbarch = get_regcache_arch (regcache); ++ struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); ++ int i; ++ ++ if (have_ptrace_getsetregs) ++ if (fetch_all_gp_regs (regcache, tid)) ++ return; ++ ++ /* If we've hit this point, it doesn't really matter which ++ architecture we are using. We just need to read the ++ registers in the "old-fashioned way". */ ++ for (i = MICROBLAZE_R0_REGNUM; i <= MICROBLAZE_FSR_REGNUM; i++) ++ fetch_register (regcache, tid, i); ++} ++ ++ ++static void ++store_register (const struct regcache *regcache, int tid, int regno) ++{ ++ struct gdbarch *gdbarch = get_regcache_arch (regcache); ++ struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); ++ /* This isn't really an address. But ptrace thinks of it as one. */ ++ CORE_ADDR regaddr = microblaze_register_u_addr (gdbarch, regno); ++ int i; ++ size_t bytes_to_transfer; ++ char buf[MAX_REGISTER_SIZE]; ++ ++ if (regaddr == -1) ++ return; ++ ++ /* First collect the register. Keep in mind that the regcache's ++ idea of the register's size may not be a multiple of sizeof ++ (long). */ ++ memset (buf, 0, sizeof buf); ++ bytes_to_transfer = align_up (register_size (gdbarch, regno), sizeof (long)); ++ if (gdbarch_byte_order (gdbarch) == BFD_ENDIAN_LITTLE) ++ { ++ /* Little-endian values always sit at the left end of the buffer. */ ++ regcache_raw_collect (regcache, regno, buf); ++ } ++ else if (gdbarch_byte_order (gdbarch) == BFD_ENDIAN_BIG) ++ { ++ /* Big-endian values sit at the right end of the buffer. */ ++ size_t padding = (bytes_to_transfer - register_size (gdbarch, regno)); ++ regcache_raw_collect (regcache, regno, buf + padding); ++ } ++ ++ for (i = 0; i < bytes_to_transfer; i += sizeof (long)) ++ { ++ long l; ++ ++ memcpy (&l, &buf[i], sizeof (l)); ++ errno = 0; ++ ptrace (PTRACE_POKEUSER, tid, (PTRACE_TYPE_ARG3) regaddr, l); ++ regaddr += sizeof (long); ++ ++ if (errno != 0) ++ { ++ char message[128]; ++ sprintf (message, "writing register %s (#%d)", ++ gdbarch_register_name (gdbarch, regno), regno); ++ perror_with_name (message); ++ } ++ } ++} ++ ++/* This function actually issues the request to ptrace, telling ++ it to store all general-purpose registers present in the specified ++ regset. ++ ++ If the ptrace request does not exist, this function returns 0 ++ and properly sets the have_ptrace_* flag. If the request fails, ++ this function calls perror_with_name. Otherwise, if the request ++ succeeds, then the regcache is stored and 1 is returned. */ ++static int ++store_all_gp_regs (const struct regcache *regcache, int tid, int regno) ++{ ++ struct gdbarch *gdbarch = get_regcache_arch (regcache); ++ struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); ++ gdb_gregset_t gregset; ++ ++ if (ptrace (PTRACE_GETREGS, tid, 0, (void *) &gregset) < 0) ++ { ++ if (errno == EIO) ++ { ++ have_ptrace_getsetregs = 0; ++ return 0; ++ } ++ perror_with_name (_("Couldn't get general-purpose registers.")); ++ } ++ ++ fill_gregset (regcache, &gregset, regno); ++ ++ if (ptrace (PTRACE_SETREGS, tid, 0, (void *) &gregset) < 0) ++ { ++ if (errno == EIO) ++ { ++ have_ptrace_getsetregs = 0; ++ return 0; ++ } ++ perror_with_name (_("Couldn't set general-purpose registers.")); ++ } ++ ++ return 1; ++} ++ ++/* This is a wrapper for the store_all_gp_regs function. It is ++ responsible for verifying if this target has the ptrace request ++ that can be used to store all general-purpose registers at one ++ shot. If it doesn't, then we should store them using the ++ old-fashioned way, which is to iterate over the registers and ++ store them one by one. */ ++static void ++store_gp_regs (const struct regcache *regcache, int tid, int regno) ++{ ++ struct gdbarch *gdbarch = get_regcache_arch (regcache); ++ struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); ++ int i; ++ ++ if (have_ptrace_getsetregs) ++ if (store_all_gp_regs (regcache, tid, regno)) ++ return; ++ ++ /* If we hit this point, it doesn't really matter which ++ architecture we are using. We just need to store the ++ registers in the "old-fashioned way". */ ++ for (i = MICROBLAZE_R0_REGNUM; i <= MICROBLAZE_FSR_REGNUM; i++) ++ store_register (regcache, tid, i); ++} ++ ++ ++/* Fetch registers from the child process. Fetch all registers if ++ regno == -1, otherwise fetch all general registers or all floating ++ point registers depending upon the value of regno. */ ++ ++static void ++microblaze_linux_fetch_inferior_registers (struct target_ops *ops, ++ struct regcache *regcache, int regno) ++{ ++ /* Get the thread id for the ptrace call. */ ++ int tid = GET_THREAD_ID (inferior_ptid); ++ ++ if (regno == -1) ++ fetch_gp_regs (regcache, tid); ++ else ++ fetch_register (regcache, tid, regno); ++} ++ ++/* Store registers back into the inferior. Store all registers if ++ regno == -1, otherwise store all general registers or all floating ++ point registers depending upon the value of regno. */ ++ ++static void ++microblaze_linux_store_inferior_registers (struct target_ops *ops, ++ struct regcache *regcache, int regno) ++{ ++ /* Get the thread id for the ptrace call. */ ++ int tid = GET_THREAD_ID (inferior_ptid); ++ ++ if (regno >= 0) ++ store_register (regcache, tid, regno); ++ else ++ store_gp_regs (regcache, tid, -1); ++} ++ ++/* Wrapper functions for the standard regset handling, used by ++ thread debugging. */ ++ ++void ++fill_gregset (const struct regcache *regcache, ++ gdb_gregset_t *gregsetp, int regno) ++{ ++ microblaze_collect_gregset (NULL, regcache, regno, gregsetp); ++} ++ ++void ++supply_gregset (struct regcache *regcache, const gdb_gregset_t *gregsetp) ++{ ++ microblaze_supply_gregset (NULL, regcache, -1, gregsetp); ++} ++ ++void ++fill_fpregset (const struct regcache *regcache, ++ gdb_fpregset_t *fpregsetp, int regno) ++{ ++ /* FIXME. */ ++} ++ ++void ++supply_fpregset (struct regcache *regcache, const gdb_fpregset_t *fpregsetp) ++{ ++ /* FIXME. */ ++} ++ ++static const struct target_desc * ++microblaze_linux_read_description (struct target_ops *ops) ++{ ++ CORE_ADDR microblaze_hwcap = 0; ++ ++ if (target_auxv_search (ops, AT_HWCAP, µblaze_hwcap) != 1) ++ return NULL; ++ ++ return NULL; ++} ++ ++ ++void _initialize_microblaze_linux_nat (void); ++ ++void ++_initialize_microblaze_linux_nat (void) ++{ ++ struct target_ops *t; ++ ++ /* Fill in the generic GNU/Linux methods. */ ++ t = linux_target (); ++ ++ /* Add our register access methods. */ ++ t->to_fetch_registers = microblaze_linux_fetch_inferior_registers; ++ t->to_store_registers = microblaze_linux_store_inferior_registers; ++ ++ t->to_read_description = microblaze_linux_read_description; ++ ++ /* Register the target. */ ++ linux_nat_add_target (t); ++} +diff -Nur gdb-7.7.orig/gdb/microblaze-linux-tdep.c gdb-7.7/gdb/microblaze-linux-tdep.c +--- gdb-7.7.orig/gdb/microblaze-linux-tdep.c 2014-01-08 10:23:36.000000000 +0100 ++++ gdb-7.7/gdb/microblaze-linux-tdep.c 2014-03-26 10:11:41.000000000 +0100 +@@ -1,6 +1,6 @@ + /* Target-dependent code for Xilinx MicroBlaze. + +- Copyright (C) 2009-2014 Free Software Foundation, Inc. ++ Copyright (C) 2009-2013 Free Software Foundation, Inc. + + This file is part of GDB. + +@@ -32,11 +32,28 @@ + #include "regset.h" + #include "solib-svr4.h" + #include "microblaze-tdep.h" ++#include "glibc-tdep.h" + #include "trad-frame.h" + #include "frame-unwind.h" + #include "tramp-frame.h" + #include "linux-tdep.h" + ++static int microblaze_debug_flag = 0; ++ ++static void ++microblaze_debug (const char *fmt, ...) ++{ ++ if (microblaze_debug_flag) ++ { ++ va_list args; ++ ++ va_start (args, fmt); ++ printf_unfiltered ("MICROBLAZE LINUX: "); ++ vprintf_unfiltered (fmt, args); ++ va_end (args); ++ } ++} ++ + static int + microblaze_linux_memory_remove_breakpoint (struct gdbarch *gdbarch, + struct bp_target_info *bp_tgt) +@@ -46,20 +63,27 @@ + int val; + int bplen; + gdb_byte old_contents[BREAKPOINT_MAX]; ++ struct cleanup *cleanup; + + /* Determine appropriate breakpoint contents and size for this address. */ + bp = gdbarch_breakpoint_from_pc (gdbarch, &addr, &bplen); + if (bp == NULL) + error (_("Software breakpoints not implemented for this target.")); + ++ /* Make sure we see the memory breakpoints. */ ++ cleanup = make_show_memory_breakpoints_cleanup (1); + val = target_read_memory (addr, old_contents, bplen); + + /* If our breakpoint is no longer at the address, this means that the + program modified the code on us, so it is wrong to put back the + old value. */ + if (val == 0 && memcmp (bp, old_contents, bplen) == 0) +- val = target_write_raw_memory (addr, bp_tgt->shadow_contents, bplen); ++ { ++ val = target_write_raw_memory (addr, bp_tgt->shadow_contents, bplen); ++ microblaze_debug ("microblaze_linux_memory_remove_breakpoint writing back to memory at addr 0x%lx\n", addr); ++ } + ++ do_cleanups (cleanup); + return val; + } + +@@ -116,6 +140,43 @@ + microblaze_linux_sighandler_cache_init + }; + ++const struct microblaze_gregset microblaze_linux_core_gregset; ++ ++static void ++microblaze_linux_supply_core_gregset (const struct regset *regset, ++ struct regcache *regcache, ++ int regnum, const void *gregs, size_t len) ++{ ++ microblaze_supply_gregset (µblaze_linux_core_gregset, regcache, ++ regnum, gregs); ++} ++ ++static void ++microblaze_linux_collect_core_gregset (const struct regset *regset, ++ const struct regcache *regcache, ++ int regnum, void *gregs, size_t len) ++{ ++ microblaze_collect_gregset (µblaze_linux_core_gregset, regcache, ++ regnum, gregs); ++} ++ ++static void ++microblaze_linux_supply_core_fpregset (const struct regset *regset, ++ struct regcache *regcache, ++ int regnum, const void *fpregs, size_t len) ++{ ++ /* FIXME. */ ++ microblaze_supply_fpregset (regcache, regnum, fpregs); ++} ++ ++static void ++microblaze_linux_collect_core_fpregset (const struct regset *regset, ++ const struct regcache *regcache, ++ int regnum, void *fpregs, size_t len) ++{ ++ /* FIXME. */ ++ microblaze_collect_fpregset (regcache, regnum, fpregs); ++} + + static void + microblaze_linux_init_abi (struct gdbarch_info info, +@@ -123,6 +184,10 @@ + { + struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); + ++ tdep->gregset = regset_alloc (gdbarch, microblaze_linux_supply_core_gregset, ++ microblaze_linux_collect_core_gregset); ++ tdep->sizeof_gregset = 200; ++ + linux_init_abi (info, gdbarch); + + set_gdbarch_memory_remove_breakpoint (gdbarch, +@@ -135,6 +200,25 @@ + /* Trampolines. */ + tramp_frame_prepend_unwinder (gdbarch, + µblaze_linux_sighandler_tramp_frame); ++ ++ /* BFD target for core files. */ ++ if (gdbarch_byte_order (gdbarch) == BFD_ENDIAN_BIG) ++ set_gdbarch_gcore_bfd_target (gdbarch, "elf32-microblaze"); ++ else ++ set_gdbarch_gcore_bfd_target (gdbarch, "elf32-microblazeel"); ++ ++ ++ /* Shared library handling. */ ++ set_gdbarch_skip_trampoline_code (gdbarch, find_solib_trampoline_target); ++ set_gdbarch_skip_solib_resolver (gdbarch, glibc_skip_solib_resolver); ++ ++ set_gdbarch_regset_from_core_section (gdbarch, ++ microblaze_regset_from_core_section); ++ ++ /* Enable TLS support. */ ++ set_gdbarch_fetch_tls_load_module_address (gdbarch, ++ svr4_fetch_objfile_link_map); ++ + } + + /* -Wmissing-prototypes */ +diff -Nur gdb-7.7.orig/gdb/microblaze-rom.c gdb-7.7/gdb/microblaze-rom.c +--- gdb-7.7.orig/gdb/microblaze-rom.c 2014-01-08 10:23:36.000000000 +0100 ++++ gdb-7.7/gdb/microblaze-rom.c 2014-03-27 08:56:48.000000000 +0100 +@@ -1,6 +1,6 @@ + /* Remote debugging interface to Xilinx MicroBlaze. + +- Copyright (C) 2009-2014 Free Software Foundation, Inc. ++ Copyright (C) 2009-2013 Free Software Foundation, Inc. + + This file is part of GDB. + +@@ -21,7 +21,6 @@ + #include "gdbcore.h" + #include "target.h" + #include "monitor.h" +-#include <string.h> + #include "serial.h" + #include "regcache.h" + +diff -Nur gdb-7.7.orig/gdb/microblaze-tdep.c gdb-7.7/gdb/microblaze-tdep.c +--- gdb-7.7.orig/gdb/microblaze-tdep.c 2014-02-06 03:21:29.000000000 +0100 ++++ gdb-7.7/gdb/microblaze-tdep.c 2014-03-27 08:46:21.000000000 +0100 +@@ -1,6 +1,6 @@ + /* Target-dependent code for Xilinx MicroBlaze. + +- Copyright (C) 2009-2014 Free Software Foundation, Inc. ++ Copyright (C) 2009-2013 Free Software Foundation, Inc. + + This file is part of GDB. + +@@ -29,13 +29,13 @@ + #include "inferior.h" + #include "regcache.h" + #include "target.h" ++#include "frame.h" + #include "frame-base.h" + #include "frame-unwind.h" + #include "dwarf2-frame.h" + #include "osabi.h" + + #include "gdb_assert.h" +-#include <string.h> + #include "target-descriptions.h" + #include "opcodes/microblaze-opcm.h" + #include "opcodes/microblaze-dis.h" +@@ -73,7 +73,8 @@ + "rpc", "rmsr", "rear", "resr", "rfsr", "rbtr", + "rpvr0", "rpvr1", "rpvr2", "rpvr3", "rpvr4", "rpvr5", "rpvr6", + "rpvr7", "rpvr8", "rpvr9", "rpvr10", "rpvr11", +- "redr", "rpid", "rzpr", "rtlbx", "rtlbsx", "rtlblo", "rtlbhi" ++ "redr", "rpid", "rzpr", "rtlbx", "rtlbsx", "rtlblo", "rtlbhi", ++ "rslr", "rshr" + }; + + #define MICROBLAZE_NUM_REGS ARRAY_SIZE (microblaze_register_names) +@@ -145,6 +146,14 @@ + return sp; + } + ++static CORE_ADDR ++microblaze_store_arguments (struct regcache *regcache, int nargs, ++ struct value **args, CORE_ADDR sp, ++ int struct_return, CORE_ADDR struct_addr) ++{ ++ error (_("store_arguments not implemented")); ++ return sp; ++} + + static CORE_ADDR + microblaze_push_dummy_call (struct gdbarch *gdbarch, struct value *function, +@@ -156,14 +165,52 @@ + return sp; + } + ++static int ++microblaze_linux_memory_remove_breakpoint (struct gdbarch *gdbarch, ++ struct bp_target_info *bp_tgt) ++{ ++ CORE_ADDR addr = bp_tgt->placed_address; ++ const unsigned char *bp; ++ int val; ++ int bplen; ++ gdb_byte old_contents[BREAKPOINT_MAX]; ++ struct cleanup *cleanup; ++ ++ /* Determine appropriate breakpoint contents and size for this address. */ ++ bp = gdbarch_breakpoint_from_pc (gdbarch, &addr, &bplen); ++ if (bp == NULL) ++ error (_("Software breakpoints not implemented for this target.")); ++ ++ /* Make sure we see the memory breakpoints. */ ++ cleanup = make_show_memory_breakpoints_cleanup (1); ++ val = target_read_memory (addr, old_contents, bplen); ++ ++ /* If our breakpoint is no longer at the address, this means that the ++ program modified the code on us, so it is wrong to put back the ++ old value. */ ++ if (val == 0 && memcmp (bp, old_contents, bplen) == 0) ++ { ++ val = target_write_raw_memory (addr, bp_tgt->shadow_contents, bplen); ++ microblaze_debug ("microblaze_linux_memory_remove_breakpoint writing back to memory at addr 0x%lx\n", addr); ++ } ++ ++ do_cleanups (cleanup); ++ return val; ++} ++ + static const gdb_byte * + microblaze_breakpoint_from_pc (struct gdbarch *gdbarch, CORE_ADDR *pc, + int *len) + { ++ enum bfd_endian byte_order = gdbarch_byte_order (gdbarch); + static gdb_byte break_insn[] = MICROBLAZE_BREAKPOINT; ++ static gdb_byte break_insn_le[] = MICROBLAZE_BREAKPOINT_LE; + + *len = sizeof (break_insn); +- return break_insn; ++ if (byte_order == BFD_ENDIAN_BIG) ++ return break_insn; ++ else ++ return break_insn_le; + } + + /* Allocate and initialize a frame cache. */ +@@ -178,6 +225,7 @@ + /* Base address. */ + cache->base = 0; + cache->pc = 0; ++ cache->saved_sp = 0; + + /* Frameless until proven otherwise. */ + cache->frameless_p = 1; +@@ -234,6 +282,8 @@ + int flags = 0; + int save_hidden_pointer_found = 0; + int non_stack_instruction_found = 0; ++ int n_insns; ++ unsigned int *insn_block; + + /* Find the start of this function. */ + find_pc_partial_function (pc, &name, &func_addr, &func_end); +@@ -273,11 +323,18 @@ + name, paddress (gdbarch, func_addr), + paddress (gdbarch, stop)); + ++/* Do a block read to minimize the transaction with the Debug Agent */ ++ n_insns = (stop == func_addr) ? 1 : ((stop - func_addr) / INST_WORD_SIZE); ++ insn_block = calloc(n_insns, sizeof(unsigned long)); ++ ++ target_read_memory (func_addr, (void*) insn_block, n_insns * INST_WORD_SIZE ); ++ + for (addr = func_addr; addr < stop; addr += INST_WORD_SIZE) + { + insn = microblaze_fetch_instruction (addr); ++ //insn = insn_block[(addr - func_addr) / INST_WORD_SIZE]; + op = microblaze_decode_insn (insn, &rd, &ra, &rb, &imm); +- microblaze_debug ("%s %08lx\n", paddress (gdbarch, pc), insn); ++ microblaze_debug ("%s %08lx op=%x r%d r%d imm=%d\n", paddress (gdbarch, addr), insn, op, rd, ra, imm); + + /* This code is very sensitive to what functions are present in the + prologue. It assumes that the (addi, addik, swi, sw) can be the +@@ -291,6 +348,7 @@ + cache->frameless_p = 0; /* Frame found. */ + save_hidden_pointer_found = 0; + non_stack_instruction_found = 0; ++ cache->register_offsets[rd] = -imm; + continue; + } + else if (IS_SPILL_SP(op, rd, ra)) +@@ -401,8 +459,8 @@ + part of the prologue. */ + if (save_hidden_pointer_found) + prologue_end_addr -= INST_WORD_SIZE; +- +- return prologue_end_addr; ++ free(insn_block); ++ return prologue_end_addr; + } + + static CORE_ADDR +@@ -452,6 +510,7 @@ + return start_pc; + } + ++enum { REG_UNAVAIL = (CORE_ADDR) -1 }; + /* Normal frames. */ + + static struct microblaze_frame_cache * +@@ -459,7 +518,7 @@ + { + struct microblaze_frame_cache *cache; + struct gdbarch *gdbarch = get_frame_arch (next_frame); +- CORE_ADDR func; ++ CORE_ADDR current_pc; + int rn; + + if (*this_cache) +@@ -473,9 +532,18 @@ + for (rn = 0; rn < gdbarch_num_regs (gdbarch); rn++) + cache->register_offsets[rn] = -1; + +- func = get_frame_func (next_frame); ++ cache->pc = get_frame_func (next_frame); ++ current_pc = get_frame_pc (next_frame); ++ ++ if (cache->pc) ++ microblaze_analyze_prologue (gdbarch, cache->pc, current_pc, ++ cache); + +- cache->pc = get_frame_address_in_block (next_frame); ++ cache->base = get_frame_register_unsigned (next_frame, gdbarch_sp_regnum (gdbarch)); ++ cache->saved_sp = cache->base + cache->framesize; ++ ++ cache->register_offsets[MICROBLAZE_PREV_PC_REGNUM] = cache->base; ++ cache->register_offsets[MICROBLAZE_SP_REGNUM] = cache->saved_sp; + + return cache; + } +@@ -501,6 +569,14 @@ + struct microblaze_frame_cache *cache = + microblaze_frame_cache (this_frame, this_cache); + ++ if ((regnum == MICROBLAZE_SP_REGNUM && ++ cache->register_offsets[MICROBLAZE_SP_REGNUM]) ++ || (regnum == MICROBLAZE_FP_REGNUM && ++ cache->register_offsets[MICROBLAZE_SP_REGNUM])) ++ ++ return frame_unwind_got_constant (this_frame, regnum, ++ cache->register_offsets[MICROBLAZE_SP_REGNUM]); ++ + if (cache->frameless_p) + { + if (regnum == MICROBLAZE_PC_REGNUM) +@@ -508,11 +584,18 @@ + if (regnum == MICROBLAZE_SP_REGNUM) + regnum = 1; + return trad_frame_get_prev_register (this_frame, +- cache->saved_regs, regnum); ++ cache->saved_regs, regnum); + } +- else +- return trad_frame_get_prev_register (this_frame, cache->saved_regs, +- regnum); ++ ++ if (regnum == MICROBLAZE_PC_REGNUM) ++ { ++ regnum = 15; ++ return frame_unwind_got_memory (this_frame, regnum, ++ cache->register_offsets[MICROBLAZE_PREV_PC_REGNUM]); ++ } ++ ++ return trad_frame_get_prev_register (this_frame, cache->saved_regs, ++ regnum); + + } + +@@ -536,6 +619,12 @@ + return cache->base; + } + ++static const struct frame_unwind * ++microblaze_frame_sniffer (struct frame_info *next_frame) ++{ ++ return µblaze_frame_unwind; ++} ++ + static const struct frame_base microblaze_frame_base = + { + µblaze_frame_unwind, +@@ -628,6 +717,109 @@ + return (TYPE_LENGTH (type) == 16); + } + ++int ++microblaze_software_single_step (struct frame_info *frame) ++{ ++ struct gdbarch *arch = get_frame_arch (frame); ++ struct address_space *aspace = get_frame_address_space (frame); ++ struct gdbarch_tdep *tdep = gdbarch_tdep (arch); ++ static char le_breakp[] = MICROBLAZE_BREAKPOINT_LE; ++ static char be_breakp[] = MICROBLAZE_BREAKPOINT; ++ enum bfd_endian byte_order = gdbarch_byte_order (arch); ++ char *breakp = byte_order == BFD_ENDIAN_BIG ? be_breakp : le_breakp; ++ int ret = 0; ++ ++ /* Save the address and the values of the next_pc and the target */ ++ static struct sstep_breaks ++ { ++ CORE_ADDR address; ++ bfd_boolean valid; ++ /* Shadow contents. */ ++ char data[INST_WORD_SIZE]; ++ } stepbreaks[2]; ++ int ii; ++ ++ if (1) ++ { ++ CORE_ADDR pc; ++ long insn; ++ enum microblaze_instr minstr; ++ bfd_boolean isunsignednum; ++ enum microblaze_instr_type insn_type; ++ short delay_slots; ++ int imm; ++ bfd_boolean immfound = FALSE; ++ ++ /* Set a breakpoint at the next instruction */ ++ /* If the current instruction is an imm, set it at the inst after */ ++ /* If the instruction has a delay slot, skip the delay slot */ ++ pc = get_frame_pc (frame); ++ insn = microblaze_fetch_instruction (pc); ++ minstr = get_insn_microblaze (insn, &isunsignednum, &insn_type, &delay_slots); ++ if (insn_type == immediate_inst) ++ { ++ int rd, ra, rb; ++ immfound = TRUE; ++ minstr = microblaze_decode_insn (insn, &rd, &ra, &rb, &imm); ++ pc = pc + INST_WORD_SIZE; ++ insn = microblaze_fetch_instruction (pc); ++ minstr = get_insn_microblaze (insn, &isunsignednum, &insn_type, &delay_slots); ++ } ++ stepbreaks[0].address = pc + (delay_slots * INST_WORD_SIZE) + INST_WORD_SIZE; ++ if (insn_type != return_inst) { ++ stepbreaks[0].valid = TRUE; ++ } else { ++ stepbreaks[0].valid = FALSE; ++ } ++ ++ microblaze_debug ("single-step insn_type=%x insn=%x\n", insn_type, insn); ++ /* Now check for branch or return instructions */ ++ if (insn_type == branch_inst || insn_type == return_inst) { ++ int limm; ++ int lrd, lra, lrb; ++ int ra, rb; ++ bfd_boolean targetvalid; ++ bfd_boolean unconditionalbranch; ++ microblaze_decode_insn(insn, &lrd, &lra, &lrb, &limm); ++ if (lra >= 0 && lra < MICROBLAZE_NUM_REGS) ++ ra = get_frame_register_unsigned (frame, lra); ++ else ++ ra = 0; ++ if (lrb >= 0 && lrb < MICROBLAZE_NUM_REGS) ++ rb = get_frame_register_unsigned (frame, lrb); ++ else ++ rb = 0; ++ ++ stepbreaks[1].address = microblaze_get_target_address (insn, immfound, imm, pc, ra, rb, &targetvalid, &unconditionalbranch); ++ microblaze_debug ("single-step uncondbr=%d targetvalid=%d target=%x\n", unconditionalbranch, targetvalid, stepbreaks[1].address); ++ ++ if (unconditionalbranch) ++ stepbreaks[0].valid = FALSE; /* This is a unconditional branch: will not come to the next address */ ++ if (targetvalid && (stepbreaks[0].valid == FALSE || ++ (stepbreaks[0].address != stepbreaks[1].address)) ++ && (stepbreaks[1].address != pc)) { ++ stepbreaks[1].valid = TRUE; ++ } else { ++ stepbreaks[1].valid = FALSE; ++ } ++ } else { ++ stepbreaks[1].valid = FALSE; ++ } ++ ++ /* Insert the breakpoints */ ++ for (ii = 0; ii < 2; ++ii) ++ { ++ ++ /* ignore invalid breakpoint. */ ++ if (stepbreaks[ii].valid) { ++ insert_single_step_breakpoint (arch, aspace, stepbreaks[ii].address); ++ ret = 1; ++ } ++ } ++ } ++ return ret; ++} ++ + static void + microblaze_write_pc (struct regcache *regcache, CORE_ADDR pc) + { +@@ -664,6 +856,70 @@ + return dwarf2_to_reg_map[reg]; + } + ++ ++void ++microblaze_supply_gregset (const struct microblaze_gregset *gregset, ++ struct regcache *regcache, ++ int regnum, const void *gregs) ++{ ++ unsigned int *regs = gregs; ++ if (regnum >= 0) ++ regcache_raw_supply (regcache, regnum, regs + regnum); ++ ++ if (regnum == -1) { ++ int i; ++ ++ for (i = 0; i < 50; i++) { ++ regcache_raw_supply (regcache, i, regs + i); ++ } ++ } ++} ++ ++ ++void ++microblaze_collect_gregset (const struct microblaze_gregset *gregset, ++ const struct regcache *regcache, ++ int regnum, void *gregs) ++{ ++ /* FIXME. */ ++} ++ ++void ++microblaze_supply_fpregset (struct regcache *regcache, ++ int regnum, const void *fpregs) ++{ ++ /* FIXME. */ ++} ++ ++void ++microblaze_collect_fpregset (const struct regcache *regcache, ++ int regnum, void *fpregs) ++{ ++ /* FIXME. */ ++} ++ ++ ++/* Return the appropriate register set for the core section identified ++ by SECT_NAME and SECT_SIZE. */ ++ ++const struct regset * ++microblaze_regset_from_core_section (struct gdbarch *gdbarch, ++ const char *sect_name, size_t sect_size) ++{ ++ struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch); ++ ++ microblaze_debug ("microblaze_regset_from_core_section, sect_name = %s\n", sect_name); ++ ++ if (strcmp (sect_name, ".reg") == 0 && sect_size >= tdep->sizeof_gregset) ++ return tdep->gregset; ++ ++ if (strcmp (sect_name, ".reg2") == 0 && sect_size >= tdep->sizeof_fpregset) ++ return tdep->fpregset; ++ ++ microblaze_debug ("microblaze_regset_from_core_section returning null :-( \n"); ++ return NULL; ++} ++ + static struct gdbarch * + microblaze_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches) + { +@@ -679,6 +935,11 @@ + tdep = XMALLOC (struct gdbarch_tdep); + gdbarch = gdbarch_alloc (&info, tdep); + ++ tdep->gregset = NULL; ++ tdep->sizeof_gregset = 0; ++ tdep->fpregset = NULL; ++ tdep->sizeof_fpregset = 0; ++ + set_gdbarch_long_double_bit (gdbarch, 128); + + set_gdbarch_num_regs (gdbarch, MICROBLAZE_NUM_REGS); +@@ -706,7 +967,10 @@ + /* Stack grows downward. */ + set_gdbarch_inner_than (gdbarch, core_addr_lessthan); + ++ set_gdbarch_memory_remove_breakpoint (gdbarch, microblaze_linux_memory_remove_breakpoint); ++ + set_gdbarch_breakpoint_from_pc (gdbarch, microblaze_breakpoint_from_pc); ++ set_gdbarch_software_single_step (gdbarch, microblaze_software_single_step); + + set_gdbarch_frame_args_skip (gdbarch, 8); + +@@ -725,6 +989,13 @@ + dwarf2_append_unwinders (gdbarch); + frame_unwind_append_unwinder (gdbarch, µblaze_frame_unwind); + frame_base_append_sniffer (gdbarch, dwarf2_frame_base_sniffer); ++ //frame_base_append_sniffer (gdbarch, microblaze_frame_sniffer); ++ ++ /* If we have register sets, enable the generic core file support. */ ++ if (tdep->gregset) { ++ set_gdbarch_regset_from_core_section (gdbarch, ++ microblaze_regset_from_core_section); ++ } + + return gdbarch; + } +diff -Nur gdb-7.7.orig/gdb/microblaze-tdep.h gdb-7.7/gdb/microblaze-tdep.h +--- gdb-7.7.orig/gdb/microblaze-tdep.h 2014-01-08 10:23:36.000000000 +0100 ++++ gdb-7.7/gdb/microblaze-tdep.h 2014-03-26 10:11:41.000000000 +0100 +@@ -1,6 +1,6 @@ + /* Target-dependent code for Xilinx MicroBlaze. + +- Copyright (C) 2009-2014 Free Software Foundation, Inc. ++ Copyright (C) 2009-2013 Free Software Foundation, Inc. + + This file is part of GDB. + +@@ -22,8 +22,22 @@ + + + /* Microblaze architecture-specific information. */ ++struct microblaze_gregset ++{ ++ unsigned int gregs[32]; ++ unsigned int fpregs[32]; ++ unsigned int pregs[16]; ++}; ++ + struct gdbarch_tdep + { ++ int dummy; // declare something. ++ ++ /* Register sets. */ ++ struct regset *gregset; ++ size_t sizeof_gregset; ++ struct regset *fpregset; ++ size_t sizeof_fpregset; + }; + + struct microblaze_frame_cache +@@ -42,7 +56,8 @@ + int fp_regnum; + + /* Offsets to saved registers. */ +- int register_offsets[57]; /* Must match MICROBLAZE_NUM_REGS. */ ++ int register_offsets[59]; /* Must match MICROBLAZE_NUM_REGS. */ ++ CORE_ADDR saved_sp; + + /* Table of saved registers. */ + struct trad_frame_saved_reg *saved_regs; +@@ -66,11 +81,11 @@ + MICROBLAZE_R12_REGNUM, + MICROBLAZE_R13_REGNUM, + MICROBLAZE_R14_REGNUM, +- MICROBLAZE_R15_REGNUM, ++ MICROBLAZE_R15_REGNUM, MICROBLAZE_PREV_PC_REGNUM = MICROBLAZE_R15_REGNUM, + MICROBLAZE_R16_REGNUM, + MICROBLAZE_R17_REGNUM, + MICROBLAZE_R18_REGNUM, +- MICROBLAZE_R19_REGNUM, ++ MICROBLAZE_R19_REGNUM, MICROBLAZE_FP_REGNUM = MICROBLAZE_R19_REGNUM, + MICROBLAZE_R20_REGNUM, + MICROBLAZE_R21_REGNUM, + MICROBLAZE_R22_REGNUM, +@@ -107,7 +122,9 @@ + MICROBLAZE_RTLBX_REGNUM, + MICROBLAZE_RTLBSX_REGNUM, + MICROBLAZE_RTLBLO_REGNUM, +- MICROBLAZE_RTLBHI_REGNUM ++ MICROBLAZE_RTLBHI_REGNUM, ++ MICROBLAZE_SLR_REGNUM, ++ MICROBLAZE_SHR_REGNUM + }; + + /* All registers are 32 bits. */ +@@ -115,6 +132,21 @@ + + /* MICROBLAZE_BREAKPOINT defines the breakpoint that should be used. + Only used for native debugging. */ +-#define MICROBLAZE_BREAKPOINT {0xb9, 0xcc, 0x00, 0x60} ++#define MICROBLAZE_BREAKPOINT {0xba, 0x0c, 0x00, 0x18} ++#define MICROBLAZE_BREAKPOINT_LE {0x18, 0x00, 0x0c, 0xba} ++ ++extern void microblaze_supply_gregset (const struct microblaze_gregset *gregset, ++ struct regcache *regcache, ++ int regnum, const void *gregs); ++extern void microblaze_collect_gregset (const struct microblaze_gregset *gregset, ++ const struct regcache *regcache, ++ int regnum, void *gregs); ++extern void microblaze_supply_fpregset (struct regcache *regcache, ++ int regnum, const void *fpregs); ++extern void microblaze_collect_fpregset (const struct regcache *regcache, ++ int regnum, void *fpregs); ++ ++extern const struct regset * microblaze_regset_from_core_section (struct gdbarch *gdbarch, ++ const char *sect_name, size_t sect_size); + + #endif /* microblaze-tdep.h */ +diff -Nur gdb-7.7.orig/gdb/regformats/reg-microblaze.dat gdb-7.7/gdb/regformats/reg-microblaze.dat +--- gdb-7.7.orig/gdb/regformats/reg-microblaze.dat 1970-01-01 01:00:00.000000000 +0100 ++++ gdb-7.7/gdb/regformats/reg-microblaze.dat 2014-03-26 20:43:54.000000000 +0100 +@@ -0,0 +1,41 @@ ++name:microblaze ++expedite:r1,pc ++32:r0 ++32:r1 ++32:r2 ++32:r3 ++32:r4 ++32:r5 ++32:r6 ++32:r7 ++32:r8 ++32:r9 ++32:r10 ++32:r11 ++32:r12 ++32:r13 ++32:r14 ++32:r15 ++32:r16 ++32:r17 ++32:r18 ++32:r19 ++32:r20 ++32:r21 ++32:r22 ++32:r23 ++32:r24 ++32:r25 ++32:r26 ++32:r27 ++32:r28 ++32:r29 ++32:r30 ++32:r31 ++32:pc ++32:msr ++32:ear ++32:esr ++32:fsr ++32:slr ++32:shr +diff -Nur gdb-7.7.orig/include/elf/microblaze.h gdb-7.7/include/elf/microblaze.h +--- gdb-7.7.orig/include/elf/microblaze.h 2013-12-08 05:11:51.000000000 +0100 ++++ gdb-7.7/include/elf/microblaze.h 2014-03-26 20:44:34.000000000 +0100 +@@ -58,6 +58,7 @@ + RELOC_NUMBER (R_MICROBLAZE_TLSDTPREL64, 27) /* TLS Offset Within TLS Block */ + RELOC_NUMBER (R_MICROBLAZE_TLSGOTTPREL32, 28) /* TLS Offset From Thread Pointer */ + RELOC_NUMBER (R_MICROBLAZE_TLSTPREL32, 29) /* TLS Offset From Thread Pointer */ ++ RELOC_NUMBER (R_MICROBLAZE_32_NONE, 30) + + END_RELOC_NUMBERS (R_MICROBLAZE_max) + +diff -Nur gdb-7.7.orig/opcodes/microblaze-opc.h gdb-7.7/opcodes/microblaze-opc.h +--- gdb-7.7.orig/opcodes/microblaze-opc.h 2013-12-08 05:11:52.000000000 +0100 ++++ gdb-7.7/opcodes/microblaze-opc.h 2014-03-26 20:45:46.000000000 +0100 +@@ -91,6 +91,7 @@ + #define OPCODE_MASK_H3 0xFC000600 /* High 6 bits and bits 21, 22. */ + #define OPCODE_MASK_H32 0xFC00FC00 /* High 6 bits and bit 16-21. */ + #define OPCODE_MASK_H34B 0xFC0000FF /* High 6 bits and low 8 bits. */ ++#define OPCODE_MASK_H35B 0xFC0004FF /* High 6 bits and low 9 bits. */ + #define OPCODE_MASK_H34C 0xFC0007E0 /* High 6 bits and bits 21-26. */ + + /* New Mask for msrset, msrclr insns. */ +@@ -101,7 +102,7 @@ + #define DELAY_SLOT 1 + #define NO_DELAY_SLOT 0 + +-#define MAX_OPCODES 289 ++#define MAX_OPCODES 291 + + struct op_code_struct + { +@@ -174,7 +175,9 @@ + {"wic", INST_TYPE_R1_R2_SPECIAL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x90000068, OPCODE_MASK_H34B, wic, special_inst }, + {"wdc", INST_TYPE_R1_R2_SPECIAL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x90000064, OPCODE_MASK_H34B, wdc, special_inst }, + {"wdc.clear", INST_TYPE_R1_R2_SPECIAL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x90000066, OPCODE_MASK_H34B, wdcclear, special_inst }, ++ {"wdc.ext.clear", INST_TYPE_R1_R2_SPECIAL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x90000466, OPCODE_MASK_H35B, wdcextclear, special_inst }, + {"wdc.flush", INST_TYPE_R1_R2_SPECIAL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x90000074, OPCODE_MASK_H34B, wdcflush, special_inst }, ++ {"wdc.ext.flush", INST_TYPE_R1_R2_SPECIAL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x90000476, OPCODE_MASK_H35B, wdcextflush, special_inst }, + {"mts", INST_TYPE_SPECIAL_R1, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_MTS, 0x9400C000, OPCODE_MASK_H13S, mts, special_inst }, + {"mfs", INST_TYPE_RD_SPECIAL, INST_NO_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_MFS, 0x94008000, OPCODE_MASK_H23S, mfs, special_inst }, + {"br", INST_TYPE_R2, INST_PC_OFFSET, NO_DELAY_SLOT, IMMVAL_MASK_NON_SPECIAL, 0x98000000, OPCODE_MASK_H124, br, branch_inst }, +diff -Nur gdb-7.7.orig/opcodes/microblaze-opcm.h gdb-7.7/opcodes/microblaze-opcm.h +--- gdb-7.7.orig/opcodes/microblaze-opcm.h 2013-12-08 05:11:52.000000000 +0100 ++++ gdb-7.7/opcodes/microblaze-opcm.h 2014-03-26 20:45:46.000000000 +0100 +@@ -31,9 +31,9 @@ + idiv, idivu, bsll, bsra, bsrl, get, put, nget, nput, cget, cput, + ncget, ncput, muli, bslli, bsrai, bsrli, mului, or, and, xor, + andn, pcmpbf, pcmpbc, pcmpeq, pcmpne, sra, src, srl, sext8, sext16, +- wic, wdc, wdcclear, wdcflush, mts, mfs, mbar, br, brd, +- brld, bra, brad, brald, microblaze_brk, beq, beqd, bne, bned, blt, +- bltd, ble, bled, bgt, bgtd, bge, bged, ori, andi, xori, andni, ++ wic, wdc, wdcclear, wdcextclear, wdcflush, wdcextflush, mts, mfs, mbar, ++ br, brd, brld, bra, brad, brald, microblaze_brk, beq, beqd, bne, bned, ++ blt, bltd, ble, bled, bgt, bgtd, bge, bged, ori, andi, xori, andni, + imm, rtsd, rtid, rtbd, rted, bri, brid, brlid, brai, braid, bralid, + brki, beqi, beqid, bnei, bneid, blti, bltid, blei, bleid, bgti, + bgtid, bgei, bgeid, lbu, lbur, lhu, lhur, lw, lwr, lwx, sb, sbr, sh, diff --git a/package/genext2fs/Makefile b/package/genext2fs/Makefile new file mode 100644 index 000000000..4e8fea5bd --- /dev/null +++ b/package/genext2fs/Makefile @@ -0,0 +1,24 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(TOPDIR)/rules.mk + +PKG_NAME:= genext2fs +PKG_VERSION:= 1.4.1 +PKG_RELEASE:= 1 +PKG_MD5SUM:= b7b6361bcce2cedff1ae437fadafe53b +PKG_DESCR:= genext2fs utility +PKG_SECTION:= fs +PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=genext2fs/} + +PKG_CFLINE_GENEXT2FS:= depends on ADK_HOST_ONLY + +include $(TOPDIR)/mk/host.mk +include $(TOPDIR)/mk/package.mk + +$(eval $(call HOST_template,GENEXT2FS,genext2fs,$(PKG_VERSION)-${PKG_RELEASE})) + +HOST_STYLE:= auto + +include ${TOPDIR}/mk/host-bottom.mk +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/gkrellm/Makefile b/package/gkrellm/Makefile index 1b4a6b118..e8efdabd4 100644 --- a/package/gkrellm/Makefile +++ b/package/gkrellm/Makefile @@ -4,10 +4,10 @@ include ${TOPDIR}/rules.mk PKG_NAME:= gkrellm -PKG_VERSION:= 2.3.4 +PKG_VERSION:= 2.3.5 PKG_RELEASE:= 1 -PKG_MD5SUM:= 600f4daa395112ed19a3633deb0829ff -PKG_DESCR:= The GNU Krell Monitors Server +PKG_MD5SUM:= 05d00fa8d6376038b0c7e967583c0b8d +PKG_DESCR:= GNU krell monitors server PKG_SECTION:= net/misc PKG_DEPENDS:= glib libpthread PKG_BUILDDEP:= glib diff --git a/package/gkrellm/patches/patch-server_Makefile b/package/gkrellm/patches/patch-server_Makefile deleted file mode 100644 index a1a8747e7..000000000 --- a/package/gkrellm/patches/patch-server_Makefile +++ /dev/null @@ -1,30 +0,0 @@ ---- gkrellm-2.3.4.orig/server/Makefile 2008-10-03 23:52:48.000000000 +0200 -+++ gkrellm-2.3.4/server/Makefile 2011-05-17 11:34:14.926610183 +0200 -@@ -26,7 +26,7 @@ SMANDIR ?= $(INSTALLROOT)/share/man/man1 - MANMODE ?= 644 - MANDIRMODE ?= 755 - INSTALL ?= install --LINK_FLAGS ?= -Wl,-E -+LINK_FLAGS ?= -Wl,-E $(LDFLAGS) - EXTRAOBJS = - - SHARED_PATH = ../shared -@@ -109,15 +109,15 @@ endif - - override CC += -Wall $(FLAGS) - --OS_NAME=$(shell uname -s) --OS_RELEASE=$(shell uname -r) -+OS_NAME=Linux -+OS_RELEASE=2.6 - - OBJS = main.o monitor.o mail.o plugins.o glib.o utils.o sysdeps-unix.o log.o - - all: gkrellmd - - gkrellmd: $(OBJS) $(EXTRAOBJS) -- $(CC) $(OBJS) $(EXTRAOBJS) -o gkrellmd $(LIBS) $(LINK_FLAGS) -+ $(CC) $(OBJS) $(EXTRAOBJS) -o gkrellmd $(LINK_FLAGS) $(LIBS) - - static: $(OBJS) $(EXTRAOBJS) - $(CC) $(OBJS) $(EXTRAOBJS) -o gkrellmd.static -static \ diff --git a/package/gkrellm/patches/patch-server_main_c b/package/gkrellm/patches/patch-server_main_c new file mode 100644 index 000000000..c02fb8930 --- /dev/null +++ b/package/gkrellm/patches/patch-server_main_c @@ -0,0 +1,24 @@ +--- gkrellm-2.3.5.orig/server/main.c 2010-10-02 18:13:29.000000000 +0200 ++++ gkrellm-2.3.5/server/main.c 2014-03-23 16:06:59.000000000 +0100 +@@ -39,21 +39,6 @@ + #include <syslog.h> + #endif // !WIN32 + +-// win32 defines addrinfo but only supports getaddrinfo call on winxp or newer +-#if !defined(HAVE_GETADDRINFO) && !defined(WIN32) +-struct addrinfo +- { +- int ai_flags; /* AI_PASSIVE, AI_CANONNAME, AI_NUMERICHOST */ +- int ai_family; /* PF_xxx */ +- int ai_socktype; /* SOCK_xxx */ +- int ai_protocol; /* 0 or IPPROTO_xxx for IPv4 and IPv6 */ +- size_t ai_addrlen; /* length of ai_addr */ +- char *ai_canonname; /* canonical name for hostname */ +- struct sockaddr *ai_addr; /* binary address */ +- struct addrinfo *ai_next; /* next structure in linked list */ +- }; +-#endif // !HAVE_GETADDRINFO +- + #if !defined(IPV6_V6ONLY) && defined(IPV6_BINDV6ONLY) + #define IPV6_V6ONLY IPV6_BINDV6ONLY + #endif diff --git a/package/gkrellm/patches/patch-server_sysdeps-unix_c b/package/gkrellm/patches/patch-server_sysdeps-unix_c new file mode 100644 index 000000000..e69631735 --- /dev/null +++ b/package/gkrellm/patches/patch-server_sysdeps-unix_c @@ -0,0 +1,10 @@ +--- gkrellm-2.3.5.orig/server/sysdeps-unix.c 2010-09-14 18:34:34.000000000 +0200 ++++ gkrellm-2.3.5/server/sysdeps-unix.c 2014-03-23 16:13:57.000000000 +0100 +@@ -145,6 +145,7 @@ gkrellm_sensors_linux_name_fix(gchar *id + #endif + } + ++#define HAVE_GETADDRINFO 1 + #ifdef SENSORS_COMMON + gint + gkrellm_connect_to(gchar *server, gint server_port) diff --git a/package/glib/Makefile b/package/glib/Makefile index e1ce6bca4..d92294b8e 100644 --- a/package/glib/Makefile +++ b/package/glib/Makefile @@ -5,13 +5,14 @@ include ${TOPDIR}/rules.mk PKG_NAME:= glib PKG_VERSION:= 2.38.2 -PKG_RELEASE:= 1 +PKG_RELEASE:= 3 PKG_EXTRAVER:= 2.38 PKG_MD5SUM:= 26d1d08e478fc48c181ca8be44f5b69f PKG_DESCR:= low-level core library that forms the basis of GTK+ PKG_SECTION:= libs PKG_DEPENDS:= libpthread -PKG_BUILDDEP:= libffi gettext-tiny libiconv-tiny glib-host zlib libelf dbus +PKG_BUILDDEP:= glib-host libffi gettext-tiny libiconv-tiny zlib libelf dbus +HOST_BUILDDEP:= libffi-host gettext-tiny-host libiconv-tiny-host PKG_URL:= http://www.gtk.org/ PKG_SITES:= http://ftp.gnome.org/pub/gnome/sources/glib/${PKG_EXTRAVER}/ PKG_NOPARALLEL:= 1 @@ -29,9 +30,7 @@ include ${TOPDIR}/mk/package.mk $(eval $(call HOST_template,GLIB,glib,${PKG_VERSION}-${PKG_RELEASE})) $(eval $(call PKG_template,GLIB,glib,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS})) -HOST_STYLE:= auto TARGET_CPPFLAGS+= -D_GNU_SOURCE -TARGET_CFLAGS:= $(filter-out -flto,$(TARGET_CFLAGS)) CONFIGURE_ARGS+= --disable-mem-pools \ --disable-rebuilds \ --disable-fam \ @@ -43,7 +42,9 @@ CONFIGURE_ENV+= glib_cv_long_long_format=ll \ ac_cv_func_posix_getpwuid_r=yes \ ac_cv_func_posix_getgrgid_r=yes +HOST_STYLE:= auto HOST_CONFIGURE_ARGS+= --disable-fam \ + --enable-static \ --disable-compile-warnings glib-install: diff --git a/package/glibc/Makefile b/package/glibc/Makefile index 17c49f3af..9fa4cf7bb 100644 --- a/package/glibc/Makefile +++ b/package/glibc/Makefile @@ -32,7 +32,7 @@ INSTALL_STYLE:= manual do-install: ${INSTALL_DIR} ${IDIR_GLIBC}/$(ADK_TARGET_LIBC_PATH) $(CP) $(STAGING_TARGET_DIR)/lib/ld*.so* $(IDIR_GLIBC)/$(ADK_TARGET_LIBC_PATH) - for file in libc libcrypt libdl libm libnsl libresolv libutil libnss_compat libnss_dns libnss_files; do \ + for file in libc libcrypt libdl libm libnsl libresolv libutil libnss_dns libnss_files; do \ $(CP) $(STAGING_TARGET_DIR)/lib/$$file.so* $(IDIR_GLIBC)/$(ADK_TARGET_LIBC_PATH); \ $(CP) $(STAGING_TARGET_DIR)/lib/$$file-$(PKG_VERSION).so $(IDIR_GLIBC)/$(ADK_TARGET_LIBC_PATH); \ done diff --git a/package/glproto/Makefile b/package/glproto/Makefile index 6c3e5e715..437d208e6 100644 --- a/package/glproto/Makefile +++ b/package/glproto/Makefile @@ -4,11 +4,11 @@ include $(TOPDIR)/rules.mk PKG_NAME:= glproto -PKG_VERSION:= 1.4.15 +PKG_VERSION:= 1.4.17 PKG_RELEASE:= 1 PKG_DESCR:= OpenGL headers PKG_SECTION:= devel -PKG_MD5SUM:= be7c4e3c289db480b9e1238c03637eb7 +PKG_MD5SUM:= d69554c1b51a83f2c6976a640819911b PKG_SITES:= ${MASTER_SITE_XORG} PKG_OPTS:= dev devonly diff --git a/package/gnutls/Makefile b/package/gnutls/Makefile index b160c1d5f..c75f02ea9 100644 --- a/package/gnutls/Makefile +++ b/package/gnutls/Makefile @@ -4,9 +4,9 @@ include ${TOPDIR}/rules.mk PKG_NAME:= gnutls -PKG_VERSION:= 3.2.9 +PKG_VERSION:= 3.2.12 PKG_RELEASE:= 1 -PKG_MD5SUM:= 9ae2bfa55d4c12dd6005cfb7014977f9 +PKG_MD5SUM:= f507365940de8f095e1d867c6f0842f6 PKG_DESCR:= GNU TLS library PKG_SECTION:= crypto PKG_DEPENDS:= libgcrypt libtasn1 zlib libnettle libgmp @@ -45,7 +45,6 @@ ifneq ($(ADK_PACKAGE_LIBGNUTLS_WITH_CRYPTODEV),) CONFIGURE_ARGS+= --enable-cryptodev endif -TARGET_CFLAGS:= $(filter-out -flto,$(TARGET_CFLAGS)) TARGET_LDFLAGS+= -pthread CONFIGURE_ARGS+= --disable-rpath \ --without-libz-prefix \ diff --git a/package/gpsd/Makefile b/package/gpsd/Makefile index a161d860f..4c21e15ee 100644 --- a/package/gpsd/Makefile +++ b/package/gpsd/Makefile @@ -5,12 +5,12 @@ include ${TOPDIR}/rules.mk PKG_NAME:= gpsd PKG_VERSION:= 3.10 -PKG_RELEASE:= 1 +PKG_RELEASE:= 2 PKG_MD5SUM:= fc5b03aae38b9b5b6880b31924d0ace3 PKG_DESCR:= An interface daemon for GPS receivers PKG_SECTION:= misc PKG_DEPENDS:= libpthread -PKG_BUILDDEP:= ncurses scons-host bzip2-host python2-host +PKG_BUILDDEP:= scons-host ncurses PKG_URL:= http://catb.org/gpsd/ PKG_SITES:= http://download-mirror.savannah.gnu.org/releases/gpsd/ diff --git a/package/gpsd/patches/patch-gpsmon_c b/package/gpsd/patches/patch-gpsmon_c new file mode 100644 index 000000000..ac52866d0 --- /dev/null +++ b/package/gpsd/patches/patch-gpsmon_c @@ -0,0 +1,13 @@ +--- gpsd-3.10.orig/gpsmon.c 2013-11-21 09:57:44.000000000 +0100 ++++ gpsd-3.10/gpsmon.c 2014-03-16 09:08:34.000000000 +0100 +@@ -505,6 +505,10 @@ static /*@null@*/ char *curses_get_comma + static char line[80]; + int c; + ++#ifndef __GLIBC__ ++#define CTRL(x) (x&037) ++#endif ++ + c = wgetch(cmdwin); + if (c == CTRL('L')) { + (void)clearok(stdscr, true); diff --git a/package/grub-bin/Makefile b/package/grub-bin/Makefile index 7b52cdafa..352c2b572 100644 --- a/package/grub-bin/Makefile +++ b/package/grub-bin/Makefile @@ -18,7 +18,6 @@ PKG_ARCH_DEPENDS:= x86 x86_64 PKG_CFLINE_GRUB_BIN:= select BUSYBOX_FEATURE_STAT_FORMAT@ PKG_CFLINE_GRUB_BIN+= depends on !ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK && !ADK_TARGET_ROOTFS_INITRAMFS -PKG_DFLT_GRUB_BIN:= y if !ADK_TOOLCHAIN_ONLY && !ADK_TOOLCHAIN_ARCHIVE include ${TOPDIR}/mk/package.mk diff --git a/package/hdparm/Makefile b/package/hdparm/Makefile index 61925e59c..91d0d0c03 100644 --- a/package/hdparm/Makefile +++ b/package/hdparm/Makefile @@ -7,7 +7,7 @@ PKG_NAME:= hdparm PKG_VERSION:= 9.43 PKG_RELEASE:= 1 PKG_MD5SUM:= f73233be118d86c779a8463d8b6a3cdb -PKG_DESCR:= get/set ATA drive parameters +PKG_DESCR:= get/set ATA/SATA drive parameters PKG_SECTION:= fs PKG_URL:= http://sourceforge.net/projects/hdparm PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=hdparm/} diff --git a/package/heirloom-cpio/Makefile b/package/heirloom-cpio/Makefile new file mode 100644 index 000000000..a91b71ecf --- /dev/null +++ b/package/heirloom-cpio/Makefile @@ -0,0 +1,32 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include ${TOPDIR}/rules.mk + +PKG_NAME:= heirloom-cpio +PKG_VERSION:= 1.0 +PKG_RELEASE:= 1 +PKG_DESCR:= patched version of heirloom cpio +PKG_SECTION:= archive + +PKG_CFLINE_HEIRLOOM_CPIO:= depends on ADK_HOST_ONLY + +NO_DISTFILES:= 1 + +include ${TOPDIR}/mk/host.mk +include ${TOPDIR}/mk/package.mk + +$(eval $(call HOST_template,HEIRLOOM_CPIO,heirloom-cpio,${PKG_VERSION}-${PKG_RELEASE})) + +HOST_STYLE:= manual + +host-build: + (cd ${WRKBUILD} && env ${HOST_MAKE_ENV} ${MAKE} -f ${MAKE_FILE} \ + ${HOST_MAKE_FLAGS} ${HOST_ALL_TARGET}) + +heirloom-cpio-hostinstall: + ${INSTALL_DIR} ${STAGING_HOST_DIR}/usr/bin + ${INSTALL_BIN} ${WRKBUILD}/cpio ${STAGING_HOST_DIR}/usr/bin + +include ${TOPDIR}/mk/host-bottom.mk +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/heirloom-cpio/src/Makefile b/package/heirloom-cpio/src/Makefile new file mode 100644 index 000000000..ecaf82243 --- /dev/null +++ b/package/heirloom-cpio/src/Makefile @@ -0,0 +1,28 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +all: cpio + +SRCS:= ib_open.c \ + ib_close.c \ + ib_read.c \ + ib_alloc.c \ + ib_free.c \ + ib_getlin.c \ + sfile.c \ + gmatch.c \ + sigset.c \ + memalign.c \ + version.c \ + blast.c \ + crc32.c \ + expand.c \ + explode.c \ + flags.c \ + inflate.c \ + unshrink.c \ + nonpax.c \ + cpio.c + +cpio: ${SRCS} + $(CC) $(CFLAGS_FOR_BUILD) -D_GNU_SOURCE -I. -o $@ $^ diff --git a/tools/cpio/src/_alloca.h b/package/heirloom-cpio/src/_alloca.h index dc2afe5b4..dc2afe5b4 100644 --- a/tools/cpio/src/_alloca.h +++ b/package/heirloom-cpio/src/_alloca.h diff --git a/tools/cpio/src/_malloc.h b/package/heirloom-cpio/src/_malloc.h index 1693e3673..1693e3673 100644 --- a/tools/cpio/src/_malloc.h +++ b/package/heirloom-cpio/src/_malloc.h diff --git a/tools/cpio/src/_utmpx.h b/package/heirloom-cpio/src/_utmpx.h index c32bd9527..c32bd9527 100644 --- a/tools/cpio/src/_utmpx.h +++ b/package/heirloom-cpio/src/_utmpx.h diff --git a/tools/cpio/src/asciitype.c b/package/heirloom-cpio/src/asciitype.c index f7f322173..f7f322173 100644 --- a/tools/cpio/src/asciitype.c +++ b/package/heirloom-cpio/src/asciitype.c diff --git a/tools/cpio/src/asciitype.h b/package/heirloom-cpio/src/asciitype.h index 6ac1961a1..6ac1961a1 100644 --- a/tools/cpio/src/asciitype.h +++ b/package/heirloom-cpio/src/asciitype.h diff --git a/tools/cpio/src/atoll.h b/package/heirloom-cpio/src/atoll.h index 8283aff64..8283aff64 100644 --- a/tools/cpio/src/atoll.h +++ b/package/heirloom-cpio/src/atoll.h diff --git a/tools/cpio/src/blank.h b/package/heirloom-cpio/src/blank.h index 1ab3d57b8..1ab3d57b8 100644 --- a/tools/cpio/src/blank.h +++ b/package/heirloom-cpio/src/blank.h diff --git a/tools/cpio/src/blast.c b/package/heirloom-cpio/src/blast.c index b62efd585..b62efd585 100644 --- a/tools/cpio/src/blast.c +++ b/package/heirloom-cpio/src/blast.c diff --git a/tools/cpio/src/blast.h b/package/heirloom-cpio/src/blast.h index 0c16d1391..0c16d1391 100644 --- a/tools/cpio/src/blast.h +++ b/package/heirloom-cpio/src/blast.h diff --git a/tools/cpio/src/cpio.1 b/package/heirloom-cpio/src/cpio.1 index 9c8b1f98c..9c8b1f98c 100644 --- a/tools/cpio/src/cpio.1 +++ b/package/heirloom-cpio/src/cpio.1 diff --git a/tools/cpio/src/cpio.c b/package/heirloom-cpio/src/cpio.c index e5090e4c9..e5090e4c9 100644 --- a/tools/cpio/src/cpio.c +++ b/package/heirloom-cpio/src/cpio.c diff --git a/tools/cpio/src/cpio.h b/package/heirloom-cpio/src/cpio.h index 131a3d388..131a3d388 100644 --- a/tools/cpio/src/cpio.h +++ b/package/heirloom-cpio/src/cpio.h diff --git a/tools/cpio/src/crc32.c b/package/heirloom-cpio/src/crc32.c index 084cb52cf..084cb52cf 100644 --- a/tools/cpio/src/crc32.c +++ b/package/heirloom-cpio/src/crc32.c diff --git a/tools/cpio/src/expand.c b/package/heirloom-cpio/src/expand.c index 5a5233f3e..5a5233f3e 100644 --- a/tools/cpio/src/expand.c +++ b/package/heirloom-cpio/src/expand.c diff --git a/tools/cpio/src/explode.c b/package/heirloom-cpio/src/explode.c index 863dbf672..863dbf672 100644 --- a/tools/cpio/src/explode.c +++ b/package/heirloom-cpio/src/explode.c diff --git a/tools/cpio/src/flags.c b/package/heirloom-cpio/src/flags.c index e06c8e80d..e06c8e80d 100644 --- a/tools/cpio/src/flags.c +++ b/package/heirloom-cpio/src/flags.c diff --git a/tools/cpio/src/getdir.c b/package/heirloom-cpio/src/getdir.c index 245b7641e..245b7641e 100644 --- a/tools/cpio/src/getdir.c +++ b/package/heirloom-cpio/src/getdir.c diff --git a/tools/cpio/src/getdir.h b/package/heirloom-cpio/src/getdir.h index 29d107b6f..29d107b6f 100644 --- a/tools/cpio/src/getdir.h +++ b/package/heirloom-cpio/src/getdir.h diff --git a/tools/cpio/src/getopt.c b/package/heirloom-cpio/src/getopt.c index 0a68ac8e9..0a68ac8e9 100644 --- a/tools/cpio/src/getopt.c +++ b/package/heirloom-cpio/src/getopt.c diff --git a/tools/cpio/src/gmatch.c b/package/heirloom-cpio/src/gmatch.c index a2c5eb7ba..a2c5eb7ba 100644 --- a/tools/cpio/src/gmatch.c +++ b/package/heirloom-cpio/src/gmatch.c diff --git a/tools/cpio/src/ib_alloc.c b/package/heirloom-cpio/src/ib_alloc.c index 4020940ce..4020940ce 100644 --- a/tools/cpio/src/ib_alloc.c +++ b/package/heirloom-cpio/src/ib_alloc.c diff --git a/tools/cpio/src/ib_close.c b/package/heirloom-cpio/src/ib_close.c index 946bb9ef6..946bb9ef6 100644 --- a/tools/cpio/src/ib_close.c +++ b/package/heirloom-cpio/src/ib_close.c diff --git a/tools/cpio/src/ib_free.c b/package/heirloom-cpio/src/ib_free.c index 72143afef..72143afef 100644 --- a/tools/cpio/src/ib_free.c +++ b/package/heirloom-cpio/src/ib_free.c diff --git a/tools/cpio/src/ib_getlin.c b/package/heirloom-cpio/src/ib_getlin.c index ddee226b4..ddee226b4 100644 --- a/tools/cpio/src/ib_getlin.c +++ b/package/heirloom-cpio/src/ib_getlin.c diff --git a/tools/cpio/src/ib_getw.c b/package/heirloom-cpio/src/ib_getw.c index b7f2e6762..b7f2e6762 100644 --- a/tools/cpio/src/ib_getw.c +++ b/package/heirloom-cpio/src/ib_getw.c diff --git a/tools/cpio/src/ib_open.c b/package/heirloom-cpio/src/ib_open.c index 18e09c776..18e09c776 100644 --- a/tools/cpio/src/ib_open.c +++ b/package/heirloom-cpio/src/ib_open.c diff --git a/tools/cpio/src/ib_popen.c b/package/heirloom-cpio/src/ib_popen.c index 9aa873042..9aa873042 100644 --- a/tools/cpio/src/ib_popen.c +++ b/package/heirloom-cpio/src/ib_popen.c diff --git a/tools/cpio/src/ib_read.c b/package/heirloom-cpio/src/ib_read.c index 3794f3e95..3794f3e95 100644 --- a/tools/cpio/src/ib_read.c +++ b/package/heirloom-cpio/src/ib_read.c diff --git a/tools/cpio/src/ib_seek.c b/package/heirloom-cpio/src/ib_seek.c index 48b2f99bc..48b2f99bc 100644 --- a/tools/cpio/src/ib_seek.c +++ b/package/heirloom-cpio/src/ib_seek.c diff --git a/tools/cpio/src/iblok.h b/package/heirloom-cpio/src/iblok.h index 66964627f..66964627f 100644 --- a/tools/cpio/src/iblok.h +++ b/package/heirloom-cpio/src/iblok.h diff --git a/tools/cpio/src/inflate.c b/package/heirloom-cpio/src/inflate.c index 2c6d3e59f..2c6d3e59f 100644 --- a/tools/cpio/src/inflate.c +++ b/package/heirloom-cpio/src/inflate.c diff --git a/tools/cpio/src/mbtowi.h b/package/heirloom-cpio/src/mbtowi.h index 525ad08d1..525ad08d1 100644 --- a/tools/cpio/src/mbtowi.h +++ b/package/heirloom-cpio/src/mbtowi.h diff --git a/tools/cpio/src/memalign.c b/package/heirloom-cpio/src/memalign.c index 268949b20..268949b20 100644 --- a/tools/cpio/src/memalign.c +++ b/package/heirloom-cpio/src/memalign.c diff --git a/tools/cpio/src/memalign.h b/package/heirloom-cpio/src/memalign.h index edaef031b..edaef031b 100644 --- a/tools/cpio/src/memalign.h +++ b/package/heirloom-cpio/src/memalign.h diff --git a/tools/cpio/src/msgselect.h b/package/heirloom-cpio/src/msgselect.h index 94a5daa9f..94a5daa9f 100644 --- a/tools/cpio/src/msgselect.h +++ b/package/heirloom-cpio/src/msgselect.h diff --git a/tools/cpio/src/nonpax.c b/package/heirloom-cpio/src/nonpax.c index d0eb585b7..d0eb585b7 100644 --- a/tools/cpio/src/nonpax.c +++ b/package/heirloom-cpio/src/nonpax.c diff --git a/tools/cpio/src/oblok.c b/package/heirloom-cpio/src/oblok.c index 38859ba6d..38859ba6d 100644 --- a/tools/cpio/src/oblok.c +++ b/package/heirloom-cpio/src/oblok.c diff --git a/tools/cpio/src/oblok.h b/package/heirloom-cpio/src/oblok.h index 1ee91b1c5..1ee91b1c5 100644 --- a/tools/cpio/src/oblok.h +++ b/package/heirloom-cpio/src/oblok.h diff --git a/tools/cpio/src/pathconf.c b/package/heirloom-cpio/src/pathconf.c index a6b91ef86..a6b91ef86 100644 --- a/tools/cpio/src/pathconf.c +++ b/package/heirloom-cpio/src/pathconf.c diff --git a/tools/cpio/src/pathconf.h b/package/heirloom-cpio/src/pathconf.h index 79696b6da..79696b6da 100644 --- a/tools/cpio/src/pathconf.h +++ b/package/heirloom-cpio/src/pathconf.h diff --git a/tools/cpio/src/pax.1 b/package/heirloom-cpio/src/pax.1 index 4fb9206f9..4fb9206f9 100644 --- a/tools/cpio/src/pax.1 +++ b/package/heirloom-cpio/src/pax.1 diff --git a/tools/cpio/src/pax.c b/package/heirloom-cpio/src/pax.c index 50632b6b1..50632b6b1 100644 --- a/tools/cpio/src/pax.c +++ b/package/heirloom-cpio/src/pax.c diff --git a/tools/cpio/src/pfmt.c b/package/heirloom-cpio/src/pfmt.c index 8adc22f23..8adc22f23 100644 --- a/tools/cpio/src/pfmt.c +++ b/package/heirloom-cpio/src/pfmt.c diff --git a/tools/cpio/src/pfmt.h b/package/heirloom-cpio/src/pfmt.h index 012667b0b..012667b0b 100644 --- a/tools/cpio/src/pfmt.h +++ b/package/heirloom-cpio/src/pfmt.h diff --git a/tools/cpio/src/pfmt_label.c b/package/heirloom-cpio/src/pfmt_label.c index 5b1a53f0a..5b1a53f0a 100644 --- a/tools/cpio/src/pfmt_label.c +++ b/package/heirloom-cpio/src/pfmt_label.c diff --git a/tools/cpio/src/regexp.h b/package/heirloom-cpio/src/regexp.h index 5b1fee5e6..5b1fee5e6 100644 --- a/tools/cpio/src/regexp.h +++ b/package/heirloom-cpio/src/regexp.h diff --git a/tools/cpio/src/regexpr.c b/package/heirloom-cpio/src/regexpr.c index 40dceb525..40dceb525 100644 --- a/tools/cpio/src/regexpr.c +++ b/package/heirloom-cpio/src/regexpr.c diff --git a/tools/cpio/src/regexpr.h b/package/heirloom-cpio/src/regexpr.h index 74f4a1426..74f4a1426 100644 --- a/tools/cpio/src/regexpr.h +++ b/package/heirloom-cpio/src/regexpr.h diff --git a/tools/cpio/src/setlabel.c b/package/heirloom-cpio/src/setlabel.c index a1db0646e..a1db0646e 100644 --- a/tools/cpio/src/setlabel.c +++ b/package/heirloom-cpio/src/setlabel.c diff --git a/tools/cpio/src/setuxlabel.c b/package/heirloom-cpio/src/setuxlabel.c index 9d304869e..9d304869e 100644 --- a/tools/cpio/src/setuxlabel.c +++ b/package/heirloom-cpio/src/setuxlabel.c diff --git a/tools/cpio/src/sfile.c b/package/heirloom-cpio/src/sfile.c index 089d85fdf..089d85fdf 100644 --- a/tools/cpio/src/sfile.c +++ b/package/heirloom-cpio/src/sfile.c diff --git a/tools/cpio/src/sfile.h b/package/heirloom-cpio/src/sfile.h index 53d832a6f..53d832a6f 100644 --- a/tools/cpio/src/sfile.h +++ b/package/heirloom-cpio/src/sfile.h diff --git a/tools/cpio/src/sighold.c b/package/heirloom-cpio/src/sighold.c index bae3bc393..bae3bc393 100644 --- a/tools/cpio/src/sighold.c +++ b/package/heirloom-cpio/src/sighold.c diff --git a/tools/cpio/src/sigignore.c b/package/heirloom-cpio/src/sigignore.c index 6938ef676..6938ef676 100644 --- a/tools/cpio/src/sigignore.c +++ b/package/heirloom-cpio/src/sigignore.c diff --git a/tools/cpio/src/signal.c b/package/heirloom-cpio/src/signal.c index 1f9d51cb7..1f9d51cb7 100644 --- a/tools/cpio/src/signal.c +++ b/package/heirloom-cpio/src/signal.c diff --git a/tools/cpio/src/sigpause.c b/package/heirloom-cpio/src/sigpause.c index 504a5ed4d..504a5ed4d 100644 --- a/tools/cpio/src/sigpause.c +++ b/package/heirloom-cpio/src/sigpause.c diff --git a/tools/cpio/src/sigrelse.c b/package/heirloom-cpio/src/sigrelse.c index d74de74bf..d74de74bf 100644 --- a/tools/cpio/src/sigrelse.c +++ b/package/heirloom-cpio/src/sigrelse.c diff --git a/tools/cpio/src/sigset.c b/package/heirloom-cpio/src/sigset.c index d561d541d..d561d541d 100644 --- a/tools/cpio/src/sigset.c +++ b/package/heirloom-cpio/src/sigset.c diff --git a/tools/cpio/src/sigset.h b/package/heirloom-cpio/src/sigset.h index ada73a884..ada73a884 100644 --- a/tools/cpio/src/sigset.h +++ b/package/heirloom-cpio/src/sigset.h diff --git a/tools/cpio/src/strtol.c b/package/heirloom-cpio/src/strtol.c index cd8ecfe7a..cd8ecfe7a 100644 --- a/tools/cpio/src/strtol.c +++ b/package/heirloom-cpio/src/strtol.c diff --git a/tools/cpio/src/unshrink.c b/package/heirloom-cpio/src/unshrink.c index 61f5c507c..61f5c507c 100644 --- a/tools/cpio/src/unshrink.c +++ b/package/heirloom-cpio/src/unshrink.c diff --git a/tools/cpio/src/unzip.h b/package/heirloom-cpio/src/unzip.h index d53f81024..d53f81024 100644 --- a/tools/cpio/src/unzip.h +++ b/package/heirloom-cpio/src/unzip.h diff --git a/tools/cpio/src/utmpx.c b/package/heirloom-cpio/src/utmpx.c index d88a627a7..d88a627a7 100644 --- a/tools/cpio/src/utmpx.c +++ b/package/heirloom-cpio/src/utmpx.c diff --git a/tools/cpio/src/version.c b/package/heirloom-cpio/src/version.c index a9d4a4681..a9d4a4681 100644 --- a/tools/cpio/src/version.c +++ b/package/heirloom-cpio/src/version.c diff --git a/tools/cpio/src/vpfmt.c b/package/heirloom-cpio/src/vpfmt.c index fdbb4ccb0..fdbb4ccb0 100644 --- a/tools/cpio/src/vpfmt.c +++ b/package/heirloom-cpio/src/vpfmt.c diff --git a/package/hostapd/Makefile b/package/hostapd/Makefile index 0b8d3aa7a..99ca40234 100644 --- a/package/hostapd/Makefile +++ b/package/hostapd/Makefile @@ -16,7 +16,7 @@ PKG_SITES:= http://hostap.epitest.fi/releases/ PKG_MULTI:= 1 PKG_SUBPKGS:= HOSTAPD HOSTAPD_UTILS -PKG_CHOICES_HOSTAPD:= WITH_OPENSSL WITH_GNUTLS +PKG_CHOICES_HOSTAPD:= WITH_GNUTLS WITH_OPENSSL PKGCD_WITH_OPENSSL:= use OpenSSL for crypto PKGCS_WITH_OPENSSL:= libopenssl PKGCB_WITH_OPENSSL:= openssl diff --git a/package/igmpproxy/patches/patch-src_igmpproxy_h b/package/igmpproxy/patches/patch-src_igmpproxy_h new file mode 100644 index 000000000..0d2bbbc4d --- /dev/null +++ b/package/igmpproxy/patches/patch-src_igmpproxy_h @@ -0,0 +1,10 @@ +--- igmpproxy-0.1.orig/src/igmpproxy.h 2009-10-05 20:19:26.000000000 +0200 ++++ igmpproxy-0.1/src/igmpproxy.h 2014-03-26 18:05:47.000000000 +0100 +@@ -48,6 +48,7 @@ + #include <sys/socket.h> + #include <sys/un.h> + #include <sys/time.h> ++#include <sys/types.h> + #include <sys/ioctl.h> + #include <sys/param.h> + diff --git a/package/inputproto/Makefile b/package/inputproto/Makefile index 53180cfbe..6f873ba0b 100644 --- a/package/inputproto/Makefile +++ b/package/inputproto/Makefile @@ -4,12 +4,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:= inputproto -PKG_VERSION:= 2.2 +PKG_VERSION:= 2.3 PKG_RELEASE:= 1 PKG_DESCR:= X Input Extension headers PKG_SECTION:= devel PKG_BUILDDEP:= inputproto-host -PKG_MD5SUM:= e0047823230413e67d74e92af77fbe58 +PKG_MD5SUM:= 5ea366d32a9a78d6204a47ea35d9dc5c PKG_SITES:= ${MASTER_SITE_XORG} PKG_OPTS:= dev devonly diff --git a/package/ipcad/Makefile b/package/ipcad/Makefile index 5ee22cba2..57b4d7111 100644 --- a/package/ipcad/Makefile +++ b/package/ipcad/Makefile @@ -5,7 +5,7 @@ include ${TOPDIR}/rules.mk PKG_NAME:= ipcad PKG_VERSION:= 3.7.3 -PKG_RELEASE:= 1 +PKG_RELEASE:= 2 PKG_MD5SUM:= 125605249958894148ec26d3c88189f5 PKG_DESCR:= IP Cisco Accounting Daemon PKG_SECTION:= net diff --git a/package/ipcad/patches/patch-Makefile b/package/ipcad/patches/patch-Makefile new file mode 100644 index 000000000..8ced9f13a --- /dev/null +++ b/package/ipcad/patches/patch-Makefile @@ -0,0 +1,169 @@ +--- ipcad-3.7.3.orig/Makefile 2007-04-22 10:08:45.000000000 +0200 ++++ ipcad-3.7.3/Makefile 2014-03-23 17:59:56.000000000 +0100 +@@ -1,4 +1,163 @@ +-all: bootstrap + +-bootstrap: +- ./configure && make ++prefix= /usr ++exec_prefix= ${prefix} ++bindir= /usr/bin ++sysconfdir= /etc ++datadir= /usr/share ++ ++CC= /home/wbx/hudson/toolchain_x86_64-linux-gnu/usr/bin/arm-openadk-linux-muslgnueabihf-gcc ++LDFLAGS= -L/home/wbx/hudson/target_arm_musl_eabihf/lib -L/home/wbx/hudson/target_arm_musl_eabihf/usr/lib -Wl,-O1 -Wl,-rpath -Wl,/usr/lib -Wl,-rpath-link -Wl,/home/wbx/hudson/target_arm_musl_eabihf/usr/lib -Wl,-z,relro,-z,now ++LIBS= -lpcap ++CFLAGS= -march=armv6 -mtune=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -fwrapv -fno-ident -fhonour-copts -fomit-frame-pointer -Os -pipe -fno-unwind-tables -fno-asynchronous-unwind-tables -g3 -DHAVE_CONFIG_H -W -Wall ++CPPFLAGS=-DIPCAD_VERSION=\"3.7.3\" ++CPPFLAGS+=-DCONFIG_FILE=\"${sysconfdir}/ipcad.conf\" ++CPPFLAGS+=-DHAVE_CONFIG_H -D_REENTRANT -D_THREAD_SAFE ++CPPFLAGS+=-DPSRC_pcap -DIFST_linux ++ ++YACC=bison -y ++LEX=flex ++INSTALL=/usr/bin/install -c ++ ++MANROOT=/usr/share/man/man ++MAN8=${MANROOT}8 ++MAN5=${MANROOT}5 ++ ++NROFF= groff -Tascii -mandoc ++ ++PACKAGE=ipcad ++TARGETS=ipcad ++VERSION=3.7.3 ++ ++IPCAD_OBJS= main.o process.o pps.o disp.o storage.o usage.o cfgy.o cfglex.o cfgread.o cfgvar.o dump.o import.o nflow.o cshelly.o cslex.o csparse.o service.o rw.o servers.o opt.o pidfile.o sf_lite.o ++IPCAD_OBJS+= ifst_linux.o # Interface statistics ++IPCAD_OBJS+= ifs_list.o # Interface statistics ++IPCAD_OBJS+= loop-pcap.o # Method of capturing ++IPCAD_OBJS+= loop-file.o # Method of capturing ++IPCAD_OBJS+= loop-divert.o # Method of capturing ++IPCAD_OBJS+= loop-dynamic.o # Method of capturing ++IPCAD_OBJS+= loop-ulog.o loop-ipq.o # Methods of capturing ++IPCAD_OBJS+= psrc.o psrc-pcap.o # Initialize capturers ++IPCAD_OBJS+= psrc-ipq.o psrc-ulog.o # Initialize capturers ++IPCAD_OBJS+= psrc-file.o # Initialize capturers ++IPCAD_OBJS+= psrc-dynamic.o # Initialize capturers ++IPCAD_OBJS+= psrc-divert.o # Initialize capturers ++IPCAD_OBJS+= wrap_oclose.o # Special file descriptors cache ++IPCAD_OBJS+= genhash.o # General hashing ++ ++all: ${TARGETS} man ++ ++ipcad: ${IPCAD_OBJS} ++ ${CC} ${CFLAGS} -o $@ ${IPCAD_OBJS} ${LDFLAGS} ${LIBS} ++ ++.SUFFIXES: ++.SUFFIXES: .o .c .0 .8 .5 ++ ++.c.o: ++ ${CC} ${CPPFLAGS} ${CFLAGS} -o $@ -c $< ++ ++.8.0: ++ ${NROFF} $< > $@ ++ ++.5.0: ++ ${NROFF} $< > $@ ++ ++cfgy.h cfgy.c: cfg.y ++ ${YACC} -p ipcacfg -d cfg.y ++ @mv y.tab.c cfgy.c ++ @mv y.tab.h cfgy.h ++ ++cshelly.h cshelly.c: cshell.y ++ ${YACC} -p CS -d cshell.y ++ @mv y.tab.c cshelly.c ++ @mv y.tab.h cshelly.h ++ ++cslex.c: cslex.l ++ ${LEX} -s -p -Cem -ocslex.c -PCS cslex.l ++ ++cfglex.c: cfglex.l ++ ${LEX} -s -p -Cem -ocfglex.c -Pipcacfg cfglex.l ++ ++ ++man: ipcad.8 ipcad.conf.5 ++ ++distdir = $(PACKAGE)-$(VERSION) ++distdir: ++ rm -rf $(distdir) ++ mkdir $(distdir) ++ cp *.c *.h $(distdir) ++ cp ipcad.8 ipcad.conf.5 $(distdir) ++ cp *.y *.l $(distdir) ++ cp *.in configure install-sh $(distdir) ++ cp ipcad.conf.default $(distdir) ++ cp ipcad.conf.simple $(distdir) ++ cp ipcad.spec.in $(distdir) ++ cp Makefile.in Makefile $(distdir) ++ cp ChangeLog INSTALL README TODO BUGS AUTHORS COPYING FAQ $(distdir) ++ cd $(distdir) && make distclean ++ ++dist: distdir ++ tar chof - $(distdir) | GZIP="--best" gzip -c > $(distdir).tar.gz ++ rm -rf $(distdir) ++ ++clean: ++ rm -f *.o ${TARGETS} *.core 1 ++ rm -f *.0 ++ ++distclean: clean ++ rm -f config.h ++ rm -f config.cache config.log config.status ++ rm -f Makefile ++ rm -f $(distdir).tar.gz ++ rm -f ipcad.spec ++ (echo "all: bootstrap"; echo; echo "bootstrap:"; \ ++ echo " ./configure && make") > Makefile ++ ++maintainer-clean: distclean ++ @echo "This command is intended for maintainers to use; it" ++ @echo "deletes files that may need special tools to rebuild." ++ rm -f Makefile ++ rm -f *.tab.* cfgy.? *lex.c ++ rm -f config.h.in configure ++ ++install: all install-bin install-conf ++ ++install-bin: ++ @${INSTALL} -d $(DESTDIR)${bindir} ++ ${INSTALL} ipcad $(DESTDIR)${bindir} ++ ++install-man: man ++ ${INSTALL} -m 444 ipcad.8 $(DESTDIR)${MAN8}/ipcad.8 ++ ${INSTALL} -m 444 ipcad.conf.5 $(DESTDIR)${MAN5}/ipcad.conf.5 ++ ++install-conf: ++ @${INSTALL} -d $(DESTDIR)${sysconfdir} ++ ${INSTALL} -m 644 ipcad.conf.simple $(DESTDIR)${sysconfdir}/ipcad.conf.simple ++ -@diff ${sysconfdir}/ipcad.conf \ ++ ${sysconfdir}/ipcad.conf.default >/dev/null 2>&1; \ ++ if [ "$$?" -eq 0 ] || [ ! -f ${sysconfdir}/ipcad.conf ]; then \ ++ echo ${INSTALL} -m 644 ipcad.conf.default $(DESTDIR)${sysconfdir}/ipcad.conf.default; \ ++ ${INSTALL} -m 644 ipcad.conf.default $(DESTDIR)${sysconfdir}/ipcad.conf.default; \ ++ echo ${INSTALL} -m 644 ipcad.conf.default $(DESTDIR)${sysconfdir}/ipcad.conf; \ ++ ${INSTALL} -m 644 ipcad.conf.default $(DESTDIR)${sysconfdir}/ipcad.conf; \ ++ echo "**********************************************"; \ ++ echo "* Please customize ${sysconfdir}/ipcad.conf *"; \ ++ echo "**********************************************"; \ ++ else \ ++ echo ${INSTALL} -m 644 ipcad.conf.default $(DESTDIR)${sysconfdir}/ipcad.conf.default; \ ++ ${INSTALL} -m 644 ipcad.conf.default $(DESTDIR)${sysconfdir}/ipcad.conf.default; \ ++ echo "*********************************************"; \ ++ echo "* Updated ${sysconfdir}/ipcad.conf.default *"; \ ++ echo "*********************************************"; \ ++ fi ++ @echo "" ++ @echo "Now you might want to 'make install-man'" ++ @echo "" ++ ++ ++uninstall: ++ rm -f ${bindir}/ipcad ++ rm -f ${sysconfdir}/ipcad.conf.default ++ rm -f ${sysconfdir}/ipcad.conf.simple ++ rm -f ${MAN8}/ipcad.8 ++ rm -f ${MAN5}/ipcad.conf.5 ++ diff --git a/package/ipcad/patches/patch-Makefile_in b/package/ipcad/patches/patch-Makefile_in index 40bcdf546..2fb2eaece 100644 --- a/package/ipcad/patches/patch-Makefile_in +++ b/package/ipcad/patches/patch-Makefile_in @@ -1,5 +1,5 @@ --- ipcad-3.7.3.orig/Makefile.in 2007-04-22 10:08:45.000000000 +0200 -+++ ipcad-3.7.3/Makefile.in 2011-01-11 17:16:15.000000000 +0100 ++++ ipcad-3.7.3/Makefile.in 2014-03-23 17:58:49.000000000 +0100 @@ -6,10 +6,10 @@ sysconfdir= @sysconfdir@ datadir= @datadir@ @@ -15,3 +15,12 @@ CPPFLAGS+=-DCONFIG_FILE=\"${sysconfdir}/ipcad.conf\" CPPFLAGS+=@DEFS@ -D_REENTRANT -D_THREAD_SAFE CPPFLAGS+=-DPSRC_@PSRC@ -DIFST_@IFST@ +@@ -28,7 +28,7 @@ PACKAGE=ipcad + TARGETS=ipcad + VERSION=@IPCAD_VERSION@ + +-IPCAD_OBJS= main.o process.o pps.o disp.o storage.o usage.o cfgy.o cfglex.o cfgread.o cfgvar.o rsh.o rshp.o dump.o import.o nflow.o cshelly.o cslex.o csparse.o service.o rw.o servers.o opt.o pidfile.o sf_lite.o ++IPCAD_OBJS= main.o process.o pps.o disp.o storage.o usage.o cfgy.o cfglex.o cfgread.o cfgvar.o dump.o import.o nflow.o cshelly.o cslex.o csparse.o service.o rw.o servers.o opt.o pidfile.o sf_lite.o + IPCAD_OBJS+= ifst_@IFST@.o # Interface statistics + IPCAD_OBJS+= ifs_list.o # Interface statistics + IPCAD_OBJS+= loop-@PSRC@.o # Method of capturing diff --git a/package/ipcad/patches/patch-cfg_y b/package/ipcad/patches/patch-cfg_y new file mode 100644 index 000000000..11fbc7564 --- /dev/null +++ b/package/ipcad/patches/patch-cfg_y @@ -0,0 +1,60 @@ +--- ipcad-3.7.3.orig/cfg.y 2007-04-22 10:08:45.000000000 +0200 ++++ ipcad-3.7.3/cfg.y 2014-03-23 18:03:07.000000000 +0100 +@@ -3,7 +3,6 @@ + #include "headers.h" + #include "cfgvar.h" + #include "servers.h" +-#include "rsh.h" + #include "opt.h" + #include "storage.h" + +@@ -214,49 +213,6 @@ block: + | CAPTURE_PORTS DENY { + conf->capture_ports = 0; + } +- | RSH ALLOW at_ip { +- if(add_server(rsh_server, "RSH Server", &($3), 514)) +- return yyerror("Failed to install RSH server"); +- fprintf(stderr, "Configured RSH Server listening at %s\n", +- inet_ntoa($3)); +- } +- | RSH DENY at_ip { +- fprintf(stderr, "Warning: Option at line %d has no effect\n", +- ipcacfglineno); +- } +- | RSH TIMEOUT EQ TOK_STRING { +- int to_ms; +- to_ms = atoi($4); +- free($4); +- if(to_ms < 0) +- to_ms = -1; /* INFTIM */ +- else +- to_ms = to_ms * 1000; +- rsh_rw_timeout = to_ms; +- } +- | RSH TOK_STRING privlevel { +- cfg_add_rsh_host("", $2, $3); +- free($2); +- } +- | RSH AT TOK_STRING privlevel { +- cfg_add_rsh_host("", $3, $4); +- free($3); +- } +- | RSH TOK_STRING AT TOK_STRING privlevel { +- cfg_add_rsh_host($2, $4, $5); +- free($2); free($4); +- } +- | RSH TTL EQ TOK_STRING { +- conf->rsh_ttl = atoi($4); +- free($4); +- } +- | TTL EQ TOK_STRING { +- fprintf(stderr, "WARNING: \"ttl = %s;\" at line %d: " +- "Obsolete syntax. Please use \"rsh ttl = %s;\"\n", +- $3, ipcacfglineno, $3); +- conf->rsh_ttl = atoi($3); +- free($3); +- } + | NetFlow + | CHROOT EQ TOK_STRING { + if(conf->chroot_to) diff --git a/package/iptables-snmp/Makefile b/package/iptables-snmp/Makefile index 28aa8c8ef..130872cf9 100644 --- a/package/iptables-snmp/Makefile +++ b/package/iptables-snmp/Makefile @@ -13,6 +13,8 @@ PKG_BUILDDEP:= net-snmp PKG_URL:= http://www.nobiscuit.com/iptables-snmp/ PKG_SITES:= http://www.nobiscuit.com/iptables-snmp/ +PKG_LIBC_DEPENDS:= uclibc glibc + include $(TOPDIR)/mk/package.mk $(eval $(call PKG_template,IPTABLES_SNMP,iptables-snmp,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) diff --git a/package/iptables/Makefile b/package/iptables/Makefile index 89c9994c9..d9fa9fd2a 100644 --- a/package/iptables/Makefile +++ b/package/iptables/Makefile @@ -5,7 +5,7 @@ include ${TOPDIR}/rules.mk PKG_NAME:= iptables PKG_VERSION:= 1.4.21 -PKG_RELEASE:= 1 +PKG_RELEASE:= 2 PKG_MD5SUM:= 536d048c8e8eeebcd9757d0863ebb0c0 PKG_DESCR:= The netfilter firewalling software PKG_SECTION:= firewall diff --git a/package/iptables/patches/patch-include_linux_netfilter_xt_osf_h b/package/iptables/patches/patch-include_linux_netfilter_xt_osf_h deleted file mode 100644 index 00dd62ca8..000000000 --- a/package/iptables/patches/patch-include_linux_netfilter_xt_osf_h +++ /dev/null @@ -1,12 +0,0 @@ ---- iptables-1.4.20.orig/include/linux/netfilter/xt_osf.h 2013-08-06 17:48:43.000000000 +0200 -+++ iptables-1.4.20/include/linux/netfilter/xt_osf.h 2013-09-04 11:34:30.000000000 +0200 -@@ -21,6 +21,9 @@ - #define _XT_OSF_H - - #include <linux/types.h> -+#if !defined(__GLIBC__) -+#include <linux/tcp.h> -+#endif - - #define MAXGENRELEN 32 - diff --git a/package/kbd/Makefile b/package/kbd/Makefile index 0293849de..7923783ca 100644 --- a/package/kbd/Makefile +++ b/package/kbd/Makefile @@ -4,17 +4,22 @@ include $(TOPDIR)/rules.mk PKG_NAME:= kbd -PKG_VERSION:= 1.15.3 -PKG_RELEASE:= 1 -PKG_MD5SUM:= 8143e179a0f3c25646ce5085e8777200 +PKG_VERSION:= 2.0.1 +PKG_RELEASE:= 2 +PKG_MD5SUM:= e9f2b7046312c11cec9e52e22f307b6a PKG_DESCR:= keyboard utility PKG_SECTION:= utils -PKG_SITES:= ftp://ftp.altlinux.org/pub/people/legion/kbd/ +PKG_DEPENDS:= libcheck +PKG_BUILDDEP:= flex-host bison-host check +PKG_URL:= http://kbd-project.org/ +PKG_SITES:= http://kbd-project.org/download/ include $(TOPDIR)/mk/package.mk $(eval $(call PKG_template,KBD,kbd,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +CONFIGURE_ARGS+= --disable-vlock + kbd-install: $(INSTALL_DIR) $(IDIR_KBD)/usr/bin $(INSTALL_BIN) $(WRKINST)/usr/bin/loadkeys \ diff --git a/package/kbd/patches/patch-src_dumpkeys_c b/package/kbd/patches/patch-src_dumpkeys_c new file mode 100644 index 000000000..f77b2d841 --- /dev/null +++ b/package/kbd/patches/patch-src_dumpkeys_c @@ -0,0 +1,11 @@ +--- kbd-2.0.1.orig/src/dumpkeys.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/src/dumpkeys.c 2014-03-24 22:38:21.000000000 +0100 +@@ -3,6 +3,8 @@ + * + * derived from version 0.81 - aeb@cwi.nl + */ ++ ++#include <stdarg.h> + #include <stdio.h> + #include <stdlib.h> + #include <ctype.h> diff --git a/package/kbd/patches/patch-src_kbdinfo_c b/package/kbd/patches/patch-src_kbdinfo_c new file mode 100644 index 000000000..cd322eb3c --- /dev/null +++ b/package/kbd/patches/patch-src_kbdinfo_c @@ -0,0 +1,46 @@ +--- kbd-2.0.1.orig/src/kbdinfo.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/src/kbdinfo.c 2014-03-24 13:24:51.000000000 +0100 +@@ -1,6 +1,6 @@ + #include <stdio.h> + #include <errno.h> +-#include <error.h> ++#include <err.h> + #include <unistd.h> + #include <sys/ioctl.h> + #include <linux/kd.h> +@@ -75,7 +75,7 @@ main(int argc, char **argv) { + + if (!strcasecmp("GETMODE", action)) { + if (ioctl(fd, KDGETMODE, &mode) == -1) +- error(EXIT_FAILURE, errno, "ioctl"); ++ err(EXIT_FAILURE, "ioctl"); + + switch (mode) { + case KD_TEXT: rc = answer("text"); break; +@@ -84,7 +84,7 @@ main(int argc, char **argv) { + + } else if (!strcasecmp("GKBMODE", action)) { + if (ioctl(fd, KDGKBMODE, &mode) == -1) +- error(EXIT_FAILURE, errno, "ioctl"); ++ err(EXIT_FAILURE, "ioctl"); + + switch (mode) { + case K_RAW: rc = answer("raw"); break; +@@ -95,7 +95,7 @@ main(int argc, char **argv) { + + } else if (!strcasecmp("GKBMETA", action)) { + if (ioctl(fd, KDGKBMETA, &mode) == -1) +- error(EXIT_FAILURE, errno, "ioctl"); ++ err(EXIT_FAILURE, "ioctl"); + + switch (mode) { + case K_METABIT: rc = answer("metabit"); break; +@@ -104,7 +104,7 @@ main(int argc, char **argv) { + + } else if (!strcasecmp("GKBLED", action)) { + if (ioctl(fd, KDGKBLED, &flags) == -1) +- error(EXIT_FAILURE, errno, "ioctl"); ++ err(EXIT_FAILURE, "ioctl"); + + mode = (flags & 0x7); + diff --git a/package/kbd/patches/patch-src_kbdrate_c b/package/kbd/patches/patch-src_kbdrate_c new file mode 100644 index 000000000..8d267789d --- /dev/null +++ b/package/kbd/patches/patch-src_kbdrate_c @@ -0,0 +1,10 @@ +--- kbd-2.0.1.orig/src/kbdrate.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/src/kbdrate.c 2014-03-24 12:40:34.000000000 +0100 +@@ -68,6 +68,7 @@ beats rebuilding the kernel! + + */ + ++#include <fcntl.h> + #include <stdio.h> + #include <unistd.h> + #include <stdlib.h> diff --git a/package/kbd/patches/patch-src_libkeymap_analyze_l b/package/kbd/patches/patch-src_libkeymap_analyze_l new file mode 100644 index 000000000..56396f23e --- /dev/null +++ b/package/kbd/patches/patch-src_libkeymap_analyze_l @@ -0,0 +1,11 @@ +--- kbd-2.0.1.orig/src/libkeymap/analyze.l 2013-10-04 15:28:49.000000000 +0200 ++++ kbd-2.0.1/src/libkeymap/analyze.l 2014-03-24 22:34:35.000000000 +0100 +@@ -12,6 +12,8 @@ + %} + + %top { ++#include <stdarg.h> ++#include <stdio.h> + #include "keymap.h" + int stack_push(struct lk_ctx *ctx, lkfile_t *fp, void *scanner); + int stack_pop(struct lk_ctx *ctx, void *scanner); diff --git a/package/kbd/patches/patch-src_libkeymap_common_c b/package/kbd/patches/patch-src_libkeymap_common_c new file mode 100644 index 000000000..bbdb8726f --- /dev/null +++ b/package/kbd/patches/patch-src_libkeymap_common_c @@ -0,0 +1,8 @@ +--- kbd-2.0.1.orig/src/libkeymap/common.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/src/libkeymap/common.c 2014-03-24 21:30:58.000000000 +0100 +@@ -1,4 +1,5 @@ + #include <string.h> ++#include <stdio.h> + #include <stdlib.h> + #include <stdarg.h> + diff --git a/package/kbd/patches/patch-src_libkeymap_dump_c b/package/kbd/patches/patch-src_libkeymap_dump_c new file mode 100644 index 000000000..cf3aca4d8 --- /dev/null +++ b/package/kbd/patches/patch-src_libkeymap_dump_c @@ -0,0 +1,12 @@ +--- kbd-2.0.1.orig/src/libkeymap/dump.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/src/libkeymap/dump.c 2014-03-24 21:46:08.000000000 +0100 +@@ -9,6 +9,9 @@ + * This file is covered by the GNU General Public License, + * which should be included with kbd as the file COPYING. + */ ++ ++#include <sys/types.h> ++#include <stdarg.h> + #include <stdio.h> + #include <string.h> + #include <ctype.h> diff --git a/package/kbd/patches/patch-src_libkeymap_kernel_c b/package/kbd/patches/patch-src_libkeymap_kernel_c new file mode 100644 index 000000000..70cff9735 --- /dev/null +++ b/package/kbd/patches/patch-src_libkeymap_kernel_c @@ -0,0 +1,13 @@ +--- kbd-2.0.1.orig/src/libkeymap/kernel.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/src/libkeymap/kernel.c 2014-03-24 21:45:01.000000000 +0100 +@@ -6,7 +6,10 @@ + * This file is covered by the GNU General Public License, + * which should be included with kbd as the file COPYING. + */ ++ ++#include <stdarg.h> + #include <string.h> ++#include <stdio.h> + #include <errno.h> + #include <sys/ioctl.h> + diff --git a/package/kbd/patches/patch-src_libkeymap_kmap_c b/package/kbd/patches/patch-src_libkeymap_kmap_c new file mode 100644 index 000000000..3f945e5da --- /dev/null +++ b/package/kbd/patches/patch-src_libkeymap_kmap_c @@ -0,0 +1,10 @@ +--- kbd-2.0.1.orig/src/libkeymap/kmap.c 2013-10-07 16:13:31.000000000 +0200 ++++ kbd-2.0.1/src/libkeymap/kmap.c 2014-03-24 21:46:56.000000000 +0100 +@@ -1,4 +1,7 @@ ++#include <sys/types.h> ++#include <stdarg.h> + #include <stdlib.h> ++#include <stdio.h> + #include <string.h> + + #include "nls.h" diff --git a/package/kbd/patches/patch-src_libkeymap_ksyms_c b/package/kbd/patches/patch-src_libkeymap_ksyms_c new file mode 100644 index 000000000..13c1be329 --- /dev/null +++ b/package/kbd/patches/patch-src_libkeymap_ksyms_c @@ -0,0 +1,8 @@ +--- kbd-2.0.1.orig/src/libkeymap/ksyms.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/src/libkeymap/ksyms.c 2014-03-24 22:37:11.000000000 +0100 +@@ -1,4 +1,5 @@ + #include <linux/keyboard.h> ++#include <stdarg.h> + #include <stdio.h> + #include <string.h> + #include <stdlib.h> diff --git a/package/kbd/patches/patch-src_libkeymap_loadkeys_c b/package/kbd/patches/patch-src_libkeymap_loadkeys_c new file mode 100644 index 000000000..ca368041b --- /dev/null +++ b/package/kbd/patches/patch-src_libkeymap_loadkeys_c @@ -0,0 +1,8 @@ +--- kbd-2.0.1.orig/src/libkeymap/loadkeys.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/src/libkeymap/loadkeys.c 2014-03-24 21:48:35.000000000 +0100 +@@ -1,4 +1,5 @@ + #include <errno.h> ++#include <stdarg.h> + #include <stdlib.h> + #include <string.h> + #include <sys/ioctl.h> diff --git a/package/kbd/patches/patch-src_libkeymap_parser_y b/package/kbd/patches/patch-src_libkeymap_parser_y new file mode 100644 index 000000000..f06797961 --- /dev/null +++ b/package/kbd/patches/patch-src_libkeymap_parser_y @@ -0,0 +1,11 @@ +--- kbd-2.0.1.orig/src/libkeymap/parser.y 2013-10-07 16:13:39.000000000 +0200 ++++ kbd-2.0.1/src/libkeymap/parser.y 2014-03-24 21:49:52.000000000 +0100 +@@ -12,6 +12,8 @@ + %{ + #define YY_HEADER_EXPORT_START_CONDITIONS 1 + ++#include <stdarg.h> ++ + #include "nls.h" + #include "kbd.h" + diff --git a/package/kbd/patches/patch-src_libkeymap_summary_c b/package/kbd/patches/patch-src_libkeymap_summary_c new file mode 100644 index 000000000..de2ec90b7 --- /dev/null +++ b/package/kbd/patches/patch-src_libkeymap_summary_c @@ -0,0 +1,13 @@ +--- kbd-2.0.1.orig/src/libkeymap/summary.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/src/libkeymap/summary.c 2014-03-24 21:47:48.000000000 +0100 +@@ -6,6 +6,10 @@ + * This file is covered by the GNU General Public License, + * which should be included with kbd as the file COPYING. + */ ++ ++#include <sys/types.h> ++#include <stdarg.h> ++#include <stdio.h> + #include <string.h> + #include <errno.h> + #include <sys/ioctl.h> diff --git a/package/kbd/patches/patch-src_loadkeys_c b/package/kbd/patches/patch-src_loadkeys_c new file mode 100644 index 000000000..11d44825f --- /dev/null +++ b/package/kbd/patches/patch-src_loadkeys_c @@ -0,0 +1,10 @@ +--- kbd-2.0.1.orig/src/loadkeys.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/src/loadkeys.c 2014-03-24 22:39:26.000000000 +0100 +@@ -10,6 +10,7 @@ + * which should be included with kbd as the file COPYING. + */ + ++#include <stdarg.h> + #include <stdio.h> + #include <stdlib.h> + #include <string.h> diff --git a/package/kbd/patches/patch-src_openvt_c b/package/kbd/patches/patch-src_openvt_c new file mode 100644 index 000000000..efb8736cc --- /dev/null +++ b/package/kbd/patches/patch-src_openvt_c @@ -0,0 +1,8 @@ +--- kbd-2.0.1.orig/src/openvt.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/src/openvt.c 2014-03-24 12:48:07.000000000 +0100 +@@ -1,3 +1,5 @@ ++#include <fcntl.h> ++#include <limits.h> + #include <stdio.h> + #include <stdarg.h> + #include <unistd.h> diff --git a/package/kbd/patches/patch-src_setvtrgb_c b/package/kbd/patches/patch-src_setvtrgb_c new file mode 100644 index 000000000..fc72c2409 --- /dev/null +++ b/package/kbd/patches/patch-src_setvtrgb_c @@ -0,0 +1,70 @@ +--- kbd-2.0.1.orig/src/setvtrgb.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/src/setvtrgb.c 2014-03-24 13:10:47.000000000 +0100 +@@ -5,7 +5,7 @@ + #include <sys/ioctl.h> + #include <linux/kd.h> + #include <errno.h> +-#include <error.h> ++#include <err.h> + #include "kbd.h" + #include "getfd.h" + #include "nls.h" +@@ -60,7 +60,7 @@ set_colormap(unsigned char *colormap) + + /* Apply the color map to the tty via ioctl */ + if (ioctl(fd, PIO_CMAP, colormap) == -1) +- error(EXIT_FAILURE, errno, "ioctl"); ++ err(EXIT_FAILURE, "ioctl"); + + close(fd); + } +@@ -72,7 +72,7 @@ parse_file(FILE *fd, const char *filenam + unsigned int rows, cols, val; + + if ((cmap = calloc(3 * 16, sizeof(unsigned char))) == NULL) +- error(EXIT_FAILURE, errno, "calloc"); ++ err(EXIT_FAILURE, "calloc"); + + for (rows = 0; rows < 3; rows++) { + cols = 0; +@@ -80,26 +80,26 @@ parse_file(FILE *fd, const char *filenam + while (cols < 16) { + if ((c = fscanf(fd, "%u", &val)) != 1) { + if (c == EOF) +- error(EXIT_FAILURE, errno, "fscanf"); ++ err(EXIT_FAILURE, "fscanf"); + +- error(EXIT_FAILURE, 0, _("Error: %s: Invalid value in field %u in line %u."), ++ err(EXIT_FAILURE, _("Error: %s: Invalid value in field %u in line %u."), + filename, rows + 1, cols + 1); + } + + cmap[rows + cols * 3] = (unsigned char) val; + + if (cols < 15 && fgetc(fd) != ',') +- error(EXIT_FAILURE, 0, _("Error: %s: Insufficient number of fields in line %u."), ++ err(EXIT_FAILURE, _("Error: %s: Insufficient number of fields in line %u."), + filename, rows + 1); + cols++; + } + + if ((c = fgetc(fd)) == EOF) +- error(EXIT_FAILURE, 0, _("Error: %s: Line %u has ended unexpectedly.\n"), ++ err(EXIT_FAILURE, _("Error: %s: Line %u has ended unexpectedly.\n"), + filename, rows + 1); + + if (c != '\n') +- error(EXIT_FAILURE, 0, _("Error: %s: Line %u is too long.\n"), ++ err(EXIT_FAILURE, _("Error: %s: Line %u is too long.\n"), + filename, rows + 1); + } + } +@@ -141,7 +141,7 @@ main(int argc, char **argv) { + + } else { + if ((fd = fopen(file, "r")) == NULL) +- error(EXIT_FAILURE, errno, "fopen"); ++ err(EXIT_FAILURE, "fopen"); + + parse_file(fd, file); + fclose(fd); diff --git a/package/kbd/patches/patch-tests_libkeymap-bkeymap_c b/package/kbd/patches/patch-tests_libkeymap-bkeymap_c new file mode 100644 index 000000000..66247229b --- /dev/null +++ b/package/kbd/patches/patch-tests_libkeymap-bkeymap_c @@ -0,0 +1,7 @@ +--- kbd-2.0.1.orig/tests/libkeymap-bkeymap.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/tests/libkeymap-bkeymap.c 2014-03-24 22:43:01.000000000 +0100 +@@ -1,3 +1,4 @@ ++#include <stdarg.h> + #include <stdio.h> + #include <stdlib.h> + #include <string.h> diff --git a/package/kbd/patches/patch-tests_libkeymap-charset_c b/package/kbd/patches/patch-tests_libkeymap-charset_c new file mode 100644 index 000000000..629bc06cd --- /dev/null +++ b/package/kbd/patches/patch-tests_libkeymap-charset_c @@ -0,0 +1,7 @@ +--- kbd-2.0.1.orig/tests/libkeymap-charset.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/tests/libkeymap-charset.c 2014-03-24 22:51:27.000000000 +0100 +@@ -1,3 +1,4 @@ ++#include <stdarg.h> + #include <stdio.h> + #include <stdlib.h> + #include <check.h> diff --git a/package/kbd/patches/patch-tests_libkeymap-dumpkeys_c b/package/kbd/patches/patch-tests_libkeymap-dumpkeys_c new file mode 100644 index 000000000..85c242608 --- /dev/null +++ b/package/kbd/patches/patch-tests_libkeymap-dumpkeys_c @@ -0,0 +1,7 @@ +--- kbd-2.0.1.orig/tests/libkeymap-dumpkeys.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/tests/libkeymap-dumpkeys.c 2014-03-24 22:40:50.000000000 +0100 +@@ -1,3 +1,4 @@ ++#include <stdarg.h> + #include <stdio.h> + #include <stdlib.h> + #include <string.h> diff --git a/package/kbd/patches/patch-tests_libkeymap-init_c b/package/kbd/patches/patch-tests_libkeymap-init_c new file mode 100644 index 000000000..7c9d9f1e1 --- /dev/null +++ b/package/kbd/patches/patch-tests_libkeymap-init_c @@ -0,0 +1,7 @@ +--- kbd-2.0.1.orig/tests/libkeymap-init.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/tests/libkeymap-init.c 2014-03-24 22:45:25.000000000 +0100 +@@ -1,3 +1,4 @@ ++#include <stdarg.h> + #include <stdio.h> + #include <stdlib.h> + #include <check.h> diff --git a/package/kbd/patches/patch-tests_libkeymap-keys_c b/package/kbd/patches/patch-tests_libkeymap-keys_c new file mode 100644 index 000000000..b2656fa25 --- /dev/null +++ b/package/kbd/patches/patch-tests_libkeymap-keys_c @@ -0,0 +1,7 @@ +--- kbd-2.0.1.orig/tests/libkeymap-keys.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/tests/libkeymap-keys.c 2014-03-24 22:49:03.000000000 +0100 +@@ -1,3 +1,4 @@ ++#include <stdarg.h> + #include <stdio.h> + #include <stdlib.h> + #include <check.h> diff --git a/package/kbd/patches/patch-tests_libkeymap-kmap_c b/package/kbd/patches/patch-tests_libkeymap-kmap_c new file mode 100644 index 000000000..a07347d55 --- /dev/null +++ b/package/kbd/patches/patch-tests_libkeymap-kmap_c @@ -0,0 +1,7 @@ +--- kbd-2.0.1.orig/tests/libkeymap-kmap.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/tests/libkeymap-kmap.c 2014-03-24 22:46:30.000000000 +0100 +@@ -1,3 +1,4 @@ ++#include <stdarg.h> + #include <stdio.h> + #include <stdlib.h> + #include <check.h> diff --git a/package/kbd/patches/patch-tests_libkeymap-mktable_c b/package/kbd/patches/patch-tests_libkeymap-mktable_c new file mode 100644 index 000000000..adc5b722d --- /dev/null +++ b/package/kbd/patches/patch-tests_libkeymap-mktable_c @@ -0,0 +1,7 @@ +--- kbd-2.0.1.orig/tests/libkeymap-mktable.c 2013-08-27 22:45:33.000000000 +0200 ++++ kbd-2.0.1/tests/libkeymap-mktable.c 2014-03-24 22:41:52.000000000 +0100 +@@ -1,3 +1,4 @@ ++#include <stdarg.h> + #include <stdio.h> + #include <stdlib.h> + #include <string.h> diff --git a/package/kbd/patches/patch-tests_libkeymap-parse_c b/package/kbd/patches/patch-tests_libkeymap-parse_c new file mode 100644 index 000000000..53293e773 --- /dev/null +++ b/package/kbd/patches/patch-tests_libkeymap-parse_c @@ -0,0 +1,7 @@ +--- kbd-2.0.1.orig/tests/libkeymap-parse.c 2013-10-07 14:55:01.000000000 +0200 ++++ kbd-2.0.1/tests/libkeymap-parse.c 2014-03-24 22:50:11.000000000 +0100 +@@ -1,3 +1,4 @@ ++#include <stdarg.h> + #include <stdio.h> + #include <stdlib.h> + #include <check.h> diff --git a/package/kbd/patches/patch-tests_libkeymap-showmaps_c b/package/kbd/patches/patch-tests_libkeymap-showmaps_c new file mode 100644 index 000000000..29bc6dea9 --- /dev/null +++ b/package/kbd/patches/patch-tests_libkeymap-showmaps_c @@ -0,0 +1,7 @@ +--- kbd-2.0.1.orig/tests/libkeymap-showmaps.c 2013-10-07 16:13:31.000000000 +0200 ++++ kbd-2.0.1/tests/libkeymap-showmaps.c 2014-03-24 22:44:16.000000000 +0100 +@@ -1,3 +1,4 @@ ++#include <stdarg.h> + #include <stdio.h> + #include <stdlib.h> + #include <string.h> diff --git a/package/kexec-tools/Makefile b/package/kexec-tools/Makefile index 157d9db03..3ebdc2f6b 100644 --- a/package/kexec-tools/Makefile +++ b/package/kexec-tools/Makefile @@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:= kexec-tools PKG_VERSION:= 2.0.5 -PKG_RELEASE:= 1 +PKG_RELEASE:= 3 PKG_MD5SUM:= da5887e30eec16895e9d98ef072dc257 PKG_DESCR:= kexec tools PKG_SECTION:= misc diff --git a/package/kexec-tools/patches/patch-kexec_kexec_c b/package/kexec-tools/patches/patch-kexec_kexec_c index 68dc2bee9..8ce2ac370 100644 --- a/package/kexec-tools/patches/patch-kexec_kexec_c +++ b/package/kexec-tools/patches/patch-kexec_kexec_c @@ -1,6 +1,6 @@ ---- kexec-tools-2.0.2.orig/kexec/kexec.c 2010-07-29 06:19:59.000000000 +0200 -+++ kexec-tools-2.0.2/kexec/kexec.c 2011-09-05 18:50:27.679232756 +0200 -@@ -796,17 +796,14 @@ int k_unload (unsigned long kexec_flags) +--- kexec-tools-2.0.5.orig/kexec/kexec.c 2013-12-13 01:52:47.000000000 +0100 ++++ kexec-tools-2.0.5/kexec/kexec.c 2014-03-18 14:46:58.000000000 +0100 +@@ -807,17 +807,14 @@ static int k_unload (unsigned long kexec static int my_shutdown(void) { char *args[] = { diff --git a/package/kexec-tools/patches/patch-vmcore-dmesg_vmcore-dmesg_c b/package/kexec-tools/patches/patch-vmcore-dmesg_vmcore-dmesg_c new file mode 100644 index 000000000..5f6484789 --- /dev/null +++ b/package/kexec-tools/patches/patch-vmcore-dmesg_vmcore-dmesg_c @@ -0,0 +1,41 @@ +--- kexec-tools-2.0.5.orig/vmcore-dmesg/vmcore-dmesg.c 2014-01-15 00:51:14.000000000 +0100 ++++ kexec-tools-2.0.5/vmcore-dmesg/vmcore-dmesg.c 2014-03-18 15:00:45.000000000 +0100 +@@ -26,14 +26,14 @@ static Elf64_Ehdr ehdr; + static Elf64_Phdr *phdr; + + static char osrelease[4096]; +-static loff_t log_buf_vaddr; +-static loff_t log_end_vaddr; +-static loff_t log_buf_len_vaddr; +-static loff_t logged_chars_vaddr; ++static off_t log_buf_vaddr; ++static off_t log_end_vaddr; ++static off_t log_buf_len_vaddr; ++static off_t logged_chars_vaddr; + + /* record format logs */ +-static loff_t log_first_idx_vaddr; +-static loff_t log_next_idx_vaddr; ++static off_t log_first_idx_vaddr; ++static off_t log_next_idx_vaddr; + + /* struct log size */ + static uint64_t log_sz; +@@ -266,7 +266,7 @@ static void scan_vmcoreinfo(char *start, + const char *str; + const char *name; + size_t len; +- loff_t *vaddr; ++ off_t *vaddr; + } symbol[] = { + SYMBOL(log_buf), + SYMBOL(log_end), +@@ -344,7 +344,7 @@ static void scan_vmcoreinfo(char *start, + } + } + +-static void scan_notes(int fd, loff_t start, loff_t lsize) ++static void scan_notes(int fd, off_t start, off_t lsize) + { + char *buf, *last, *note, *next; + size_t size; diff --git a/package/libdrm/Makefile b/package/libdrm/Makefile index 9ef7660d7..dac18add6 100644 --- a/package/libdrm/Makefile +++ b/package/libdrm/Makefile @@ -4,9 +4,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:= libdrm -PKG_VERSION:= 2.4.44 -PKG_RELEASE:= 2 -PKG_MD5SUM:= 205fbaedfab827a874265420d38547f0 +PKG_VERSION:= 2.4.52 +PKG_RELEASE:= 1 +PKG_MD5SUM:= cb3547ccb435be6d80df68840da6b2ee PKG_DESCR:= DRM library PKG_SECTION:= libs PKG_BUILDDEP:= libpthread-stubs cairo libpciaccess diff --git a/package/libffi/Makefile b/package/libffi/Makefile index 0b316720d..a7e957582 100644 --- a/package/libffi/Makefile +++ b/package/libffi/Makefile @@ -10,6 +10,7 @@ PKG_MD5SUM:= 45f3b6dbc9ee7c7dfbbbc5feba571529 PKG_DESCR:= Foreign Function Interface library PKG_SECTION:= libs PKG_BUILDDEP:= autotool libffi-host +HOST_BUILDDEP:= autotool PKG_URL:= http://sourceware.org/libffi/ PKG_SITES:= ftp://sourceware.org/pub/libffi/ PKG_OPTS:= dev diff --git a/package/liblzo/Makefile b/package/liblzo/Makefile index 3f79d0317..cd6783111 100644 --- a/package/liblzo/Makefile +++ b/package/liblzo/Makefile @@ -9,7 +9,6 @@ PKG_RELEASE:= 1 PKG_MD5SUM:= 95380bd4081f85ef08c5209f4107e9f8 PKG_DESCR:= a real-time data compression library PKG_SECTION:= libs -PKG_BUILDDEP:= liblzo-host PKG_URL:= http://www.oberhumer.com/opensource/lzo PKG_SITES:= http://www.oberhumer.com/opensource/lzo/download/ PKG_LIBNAME:= liblzo diff --git a/package/libmodplug/Makefile b/package/libmodplug/Makefile index f08435ee4..421243c03 100644 --- a/package/libmodplug/Makefile +++ b/package/libmodplug/Makefile @@ -4,13 +4,13 @@ include $(TOPDIR)/rules.mk PKG_NAME:= libmodplug -PKG_VERSION:= 0.8.8.4 -PKG_RELEASE:= 2 -PKG_MD5SUM:= fddc3c704c5489de2a3cf0fedfec59db +PKG_VERSION:= 0.8.8.5 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 5f30241db109d647781b784e62ddfaa1 PKG_DESCR:= a MOD player library PKG_SECTION:= libs PKG_URL:= http://modplug-xmms.sourceforge.net -PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=modplug-xmms/libmodplug/0.8.8.4/} +PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=modplug-xmms/libmodplug/0.8.8.5/} PKG_OPTS:= dev include $(TOPDIR)/mk/package.mk diff --git a/package/libnetfilter_queue/Makefile b/package/libnetfilter_queue/Makefile index 40669556d..8e976cb5d 100644 --- a/package/libnetfilter_queue/Makefile +++ b/package/libnetfilter_queue/Makefile @@ -15,6 +15,8 @@ PKG_URL:= http://www.netfilter.org/projects/libnetfilter_queue/ PKG_SITES:= http://www.netfilter.org/projects/libnetfilter_queue/files/ PKG_OPTS:= dev +PKG_LIBC_DEPENDS:= uclibc glibc + DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.bz2 include $(TOPDIR)/mk/package.mk diff --git a/package/libpciaccess/Makefile b/package/libpciaccess/Makefile index 8b598d792..cc2df0005 100644 --- a/package/libpciaccess/Makefile +++ b/package/libpciaccess/Makefile @@ -4,9 +4,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:= libpciaccess -PKG_VERSION:= 0.13.1 -PKG_RELEASE:= 2 -PKG_MD5SUM:= 3a95b70913621840bf8af616ea01d7d9 +PKG_VERSION:= 0.13.2 +PKG_RELEASE:= 1 +PKG_MD5SUM:= c49bd638c78fa4124e11432c1a94b5f4 PKG_DESCR:= X.org PCI access library PKG_SECTION:= x11/libs PKG_SITES:= ${MASTER_SITE_XORG} diff --git a/package/libpciaccess/patches/patch-src_freebsd_pci_c b/package/libpciaccess/patches/patch-src_freebsd_pci_c new file mode 100644 index 000000000..3a1c22fd1 --- /dev/null +++ b/package/libpciaccess/patches/patch-src_freebsd_pci_c @@ -0,0 +1,18 @@ +--- libpciaccess-0.13.2.orig/src/freebsd_pci.c 2013-07-21 00:54:34.000000000 +0200 ++++ libpciaccess-0.13.2/src/freebsd_pci.c 2014-03-24 13:26:10.476152263 +0100 +@@ -579,6 +579,7 @@ pci_device_freebsd_open_legacy_io(struct + + ret->base = base; + ret->size = size; ++ ret->is_legacy = 1; + return ret; + #elif defined(PCI_MAGIC_IO_RANGE) + ret->memory = mmap(NULL, size, PROT_READ | PROT_WRITE, MAP_SHARED, +@@ -588,6 +589,7 @@ pci_device_freebsd_open_legacy_io(struct + + ret->base = base; + ret->size = size; ++ ret->is_legacy = 1; + return ret; + #else + return NULL; diff --git a/package/libpciaccess/patches/patch-src_linux_sysfs_c b/package/libpciaccess/patches/patch-src_linux_sysfs_c index ad31ac509..eb91062c2 100644 --- a/package/libpciaccess/patches/patch-src_linux_sysfs_c +++ b/package/libpciaccess/patches/patch-src_linux_sysfs_c @@ -1,14 +1,11 @@ ---- libpciaccess-0.13.1.orig/src/linux_sysfs.c 2012-04-09 19:02:57.000000000 +0200 -+++ libpciaccess-0.13.1/src/linux_sysfs.c 2013-12-01 18:26:04.000000000 +0100 -@@ -34,6 +34,7 @@ - - #define _GNU_SOURCE - +--- libpciaccess-0.13.2.orig/src/linux_sysfs.c 2013-07-21 00:54:34.000000000 +0200 ++++ libpciaccess-0.13.2/src/linux_sysfs.c 2014-03-24 21:01:44.000000000 +0100 +@@ -41,11 +41,12 @@ + #include <sys/types.h> + #include <sys/stat.h> + #include <fcntl.h> +#include <limits.h> - #include <stdlib.h> - #include <string.h> - #include <stdio.h> -@@ -45,7 +46,7 @@ + #include <sys/mman.h> #include <dirent.h> #include <errno.h> @@ -17,3 +14,125 @@ #include <sys/io.h> #else #define inb(x) -1 +@@ -759,6 +760,7 @@ pci_device_linux_sysfs_open_device_io(st + + ret->base = base; + ret->size = size; ++ ret->is_legacy = 0; + + return ret; + } +@@ -796,6 +798,7 @@ pci_device_linux_sysfs_open_legacy_io(st + + ret->base = base; + ret->size = size; ++ ret->is_legacy = 1; + + return ret; + } +@@ -813,10 +816,14 @@ pci_device_linux_sysfs_read32(struct pci + { + uint32_t ret; + +- if (handle->fd > -1) +- pread(handle->fd, &ret, 4, port + handle->base); +- else ++ if (handle->fd > -1) { ++ if (handle->is_legacy) ++ pread(handle->fd, &ret, 4, port + handle->base); ++ else ++ pread(handle->fd, &ret, 4, port); ++ } else { + ret = inl(port + handle->base); ++ } + + return ret; + } +@@ -826,10 +833,14 @@ pci_device_linux_sysfs_read16(struct pci + { + uint16_t ret; + +- if (handle->fd > -1) +- pread(handle->fd, &ret, 2, port + handle->base); +- else ++ if (handle->fd > -1) { ++ if (handle->is_legacy) ++ pread(handle->fd, &ret, 2, port + handle->base); ++ else ++ pread(handle->fd, &ret, 2, port); ++ } else { + ret = inw(port + handle->base); ++ } + + return ret; + } +@@ -839,10 +850,14 @@ pci_device_linux_sysfs_read8(struct pci_ + { + uint8_t ret; + +- if (handle->fd > -1) +- pread(handle->fd, &ret, 1, port + handle->base); +- else ++ if (handle->fd > -1) { ++ if (handle->is_legacy) ++ pread(handle->fd, &ret, 1, port + handle->base); ++ else ++ pread(handle->fd, &ret, 1, port); ++ } else { + ret = inb(port + handle->base); ++ } + + return ret; + } +@@ -851,30 +866,42 @@ static void + pci_device_linux_sysfs_write32(struct pci_io_handle *handle, uint32_t port, + uint32_t data) + { +- if (handle->fd > -1) +- pwrite(handle->fd, &data, 4, port + handle->base); +- else ++ if (handle->fd > -1) { ++ if (handle->is_legacy) ++ pwrite(handle->fd, &data, 4, port + handle->base); ++ else ++ pwrite(handle->fd, &data, 4, port); ++ } else { + outl(data, port + handle->base); ++ } + } + + static void + pci_device_linux_sysfs_write16(struct pci_io_handle *handle, uint32_t port, + uint16_t data) + { +- if (handle->fd > -1) +- pwrite(handle->fd, &data, 2, port + handle->base); +- else ++ if (handle->fd > -1) { ++ if (handle->is_legacy) ++ pwrite(handle->fd, &data, 2, port + handle->base); ++ else ++ pwrite(handle->fd, &data, 2, port); ++ } else { + outw(data, port + handle->base); ++ } + } + + static void + pci_device_linux_sysfs_write8(struct pci_io_handle *handle, uint32_t port, + uint8_t data) + { +- if (handle->fd > -1) +- pwrite(handle->fd, &data, 1, port + handle->base); +- else ++ if (handle->fd > -1) { ++ if (handle->is_legacy) ++ pwrite(handle->fd, &data, 1, port + handle->base); ++ else ++ pwrite(handle->fd, &data, 1, port); ++ } else { + outb(data, port + handle->base); ++ } + } + + static int diff --git a/package/libpciaccess/patches/patch-src_netbsd_pci_c b/package/libpciaccess/patches/patch-src_netbsd_pci_c new file mode 100644 index 000000000..9b7a31b7e --- /dev/null +++ b/package/libpciaccess/patches/patch-src_netbsd_pci_c @@ -0,0 +1,18 @@ +--- libpciaccess-0.13.2.orig/src/netbsd_pci.c 2013-07-21 00:54:34.000000000 +0200 ++++ libpciaccess-0.13.2/src/netbsd_pci.c 2014-03-24 13:26:10.484152334 +0100 +@@ -733,6 +733,7 @@ pci_device_netbsd_open_legacy_io(struct + + ret->base = base; + ret->size = size; ++ ret->is_legacy = 1; + return ret; + #elif defined(__amd64__) + struct x86_64_iopl_args ia; +@@ -743,6 +744,7 @@ pci_device_netbsd_open_legacy_io(struct + + ret->base = base; + ret->size = size; ++ ret->is_legacy = 1; + return ret; + #else + return NULL; diff --git a/package/libpciaccess/patches/patch-src_openbsd_pci_c b/package/libpciaccess/patches/patch-src_openbsd_pci_c new file mode 100644 index 000000000..0c7180b72 --- /dev/null +++ b/package/libpciaccess/patches/patch-src_openbsd_pci_c @@ -0,0 +1,26 @@ +--- libpciaccess-0.13.2.orig/src/openbsd_pci.c 2013-07-21 00:54:34.000000000 +0200 ++++ libpciaccess-0.13.2/src/openbsd_pci.c 2014-03-24 13:26:10.484152334 +0100 +@@ -412,6 +412,7 @@ pci_device_openbsd_open_legacy_io(struct + + ret->base = base; + ret->size = size; ++ ret->is_legacy = 1; + return ret; + #elif defined(__amd64__) + struct amd64_iopl_args ia; +@@ -422,6 +423,7 @@ pci_device_openbsd_open_legacy_io(struct + + ret->base = base; + ret->size = size; ++ ret->is_legacy = 1; + return ret; + #elif defined(PCI_MAGIC_IO_RANGE) + ret->memory = mmap(NULL, size, PROT_READ | PROT_WRITE, MAP_SHARED, +@@ -431,6 +433,7 @@ pci_device_openbsd_open_legacy_io(struct + + ret->base = base; + ret->size = size; ++ ret->is_legacy = 1; + return ret; + #else + return NULL; diff --git a/package/libpciaccess/patches/patch-src_pciaccess_private_h b/package/libpciaccess/patches/patch-src_pciaccess_private_h new file mode 100644 index 000000000..e3ec7d0f1 --- /dev/null +++ b/package/libpciaccess/patches/patch-src_pciaccess_private_h @@ -0,0 +1,10 @@ +--- libpciaccess-0.13.2.orig/src/pciaccess_private.h 2013-07-21 00:54:34.000000000 +0200 ++++ libpciaccess-0.13.2/src/pciaccess_private.h 2014-03-24 13:26:10.492152406 +0100 +@@ -109,6 +109,7 @@ struct pci_io_handle { + pciaddr_t size; + void *memory; + int fd; ++ int is_legacy; + }; + + struct pci_device_private { diff --git a/package/libpciaccess/patches/patch-src_solx_devfs_c b/package/libpciaccess/patches/patch-src_solx_devfs_c new file mode 100644 index 000000000..f6ee2c03e --- /dev/null +++ b/package/libpciaccess/patches/patch-src_solx_devfs_c @@ -0,0 +1,10 @@ +--- libpciaccess-0.13.2.orig/src/solx_devfs.c 2013-07-21 00:54:34.000000000 +0200 ++++ libpciaccess-0.13.2/src/solx_devfs.c 2014-03-24 13:26:10.496152442 +0100 +@@ -911,6 +911,7 @@ pci_device_solx_devfs_open_legacy_io(str + if (sysi86(SI86V86, V86SC_IOPL, PS_IOPL) == 0) { + ret->base = base; + ret->size = size; ++ ret->is_legacy = 1; + return ret; + } + #endif diff --git a/package/libpciaccess/patches/patch-src_x86_pci_c b/package/libpciaccess/patches/patch-src_x86_pci_c new file mode 100644 index 000000000..07c18d419 --- /dev/null +++ b/package/libpciaccess/patches/patch-src_x86_pci_c @@ -0,0 +1,10 @@ +--- libpciaccess-0.13.2.orig/src/x86_pci.c 2013-07-21 00:54:34.000000000 +0200 ++++ libpciaccess-0.13.2/src/x86_pci.c 2014-03-24 13:26:10.496152442 +0100 +@@ -558,6 +558,7 @@ pci_device_x86_open_legacy_io(struct pci + + ret->base = base; + ret->size = size; ++ ret->is_legacy = 1; + + return ret; + } diff --git a/package/libpng/Makefile b/package/libpng/Makefile index ea4c3a1f8..3f16ecf3f 100644 --- a/package/libpng/Makefile +++ b/package/libpng/Makefile @@ -4,10 +4,10 @@ include ${TOPDIR}/rules.mk PKG_NAME:= libpng -PKG_VERSION:= 1.6.8 +PKG_VERSION:= 1.6.10 PKG_RELEASE:= 1 -PKG_MD5SUM:= 29b7065906e2551508a0d7eacd19174e -PKG_DESCR:= A library for reading/writing PNG images +PKG_MD5SUM:= b0f0c38a02dc92f70f0053a40abc7e0b +PKG_DESCR:= library for reading/writing PNG images PKG_SECTION:= libs PKG_DEPENDS:= zlib PKG_BUILDDEP:= zlib @@ -23,8 +23,6 @@ include ${TOPDIR}/mk/package.mk $(eval $(call PKG_template,LIBPNG,libpng,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS})) -TARGET_CFLAGS:= $(filter-out -flto,$(TARGET_CFLAGS)) - libpng-install: ${INSTALL_DIR} ${IDIR_LIBPNG}/usr/lib ${CP} ${WRKINST}/usr/lib/libpng*.so* ${IDIR_LIBPNG}/usr/lib diff --git a/package/libpthread/Makefile b/package/libpthread/Makefile index cdb84d5fe..9d7806bc5 100644 --- a/package/libpthread/Makefile +++ b/package/libpthread/Makefile @@ -36,6 +36,7 @@ libpthread-install: ifeq ($(ADK_TARGET_LIB_MUSL),) ${INSTALL_DIR} ${IDIR_LIBPTHREAD}/$(ADK_TARGET_LIBC_PATH) ${CP} ${STAGING_TARGET_DIR}/lib/libpthread*.so* ${IDIR_LIBPTHREAD}/$(ADK_TARGET_LIBC_PATH) + (cd ${IDIR_LIBPTHREAD}/$(ADK_TARGET_LIBC_PATH); ln -sf libpthread.so.0 libpthread.so) endif include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/libpthread/files/libpthread.postinst b/package/libpthread/files/libpthread.postinst deleted file mode 100644 index 76a6c81a4..000000000 --- a/package/libpthread/files/libpthread.postinst +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/sh -if [ ! -z $IPKG_INSTROOT ];then - (cd $IPKG_INSTROOT/lib && ln -sf libpthread.so.0 libpthread.so) -fi diff --git a/package/libssh/Makefile b/package/libssh/Makefile index 6a49c346a..2543a7863 100644 --- a/package/libssh/Makefile +++ b/package/libssh/Makefile @@ -4,17 +4,19 @@ include $(TOPDIR)/rules.mk PKG_NAME:= libssh -PKG_VERSION:= 0.5.3 -PKG_RELEASE:= 3 -PKG_MD5SUM:= 9ad01838d3b89d98e900e0f6260a88cc +PKG_VERSION:= 0.6.3 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 66cf16e77f60913b4d54f18c92cdbf71 PKG_DESCR:= SSH library PKG_SECTION:= libs PKG_DEPENDS:= libopenssl zlib PKG_BUILDDEP:= cmake-host openssl zlib PKG_URL:= http://www.libssh.org/ -PKG_SITES:= http://www.libssh.org/files/0.5/ +PKG_SITES:= https://red.libssh.org/attachments/download/87/ PKG_OPTS:= dev +DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.xz + include $(TOPDIR)/mk/package.mk $(eval $(call PKG_template,LIBSSH,libssh,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS})) diff --git a/package/libssh/patches/patch-cmake_Modules_DefineCompilerFlags_cmake b/package/libssh/patches/patch-cmake_Modules_DefineCompilerFlags_cmake index a67998250..b8e077b94 100644 --- a/package/libssh/patches/patch-cmake_Modules_DefineCompilerFlags_cmake +++ b/package/libssh/patches/patch-cmake_Modules_DefineCompilerFlags_cmake @@ -1,6 +1,6 @@ ---- libssh-0.5.3.orig/cmake/Modules/DefineCompilerFlags.cmake 2012-11-20 12:41:49.000000000 +0100 -+++ libssh-0.5.3/cmake/Modules/DefineCompilerFlags.cmake 2013-12-17 13:20:04.073723090 +0100 -@@ -20,11 +20,6 @@ if (UNIX AND NOT WIN32) +--- libssh-0.6.3.orig/cmake/Modules/DefineCompilerFlags.cmake 2014-02-06 10:20:57.000000000 +0100 ++++ libssh-0.6.3/cmake/Modules/DefineCompilerFlags.cmake 2014-03-14 09:10:56.621673326 +0100 +@@ -21,11 +21,6 @@ if (UNIX AND NOT WIN32) set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC") endif (WITH_FPIC) @@ -9,6 +9,6 @@ - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fstack-protector") - endif (WITH_STACK_PROTECTOR) - - check_c_compiler_flag("-D_FORTIFY_SOURCE=2" WITH_FORTIFY_SOURCE) - if (WITH_FORTIFY_SOURCE) - set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_FORTIFY_SOURCE=2") + if (CMAKE_BUILD_TYPE) + string(TOLOWER "${CMAKE_BUILD_TYPE}" CMAKE_BUILD_TYPE_LOWER) + if (CMAKE_BUILD_TYPE_LOWER MATCHES (release|relwithdebinfo|minsizerel)) diff --git a/package/libssh/patches/patch-cmake_Modules_FindZLIB_cmake b/package/libssh/patches/patch-cmake_Modules_FindZLIB_cmake index 9a140e652..e7fcdfd2d 100644 --- a/package/libssh/patches/patch-cmake_Modules_FindZLIB_cmake +++ b/package/libssh/patches/patch-cmake_Modules_FindZLIB_cmake @@ -1,5 +1,5 @@ ---- libssh-0.5.3.orig/cmake/Modules/FindZLIB.cmake 2012-11-20 12:41:49.000000000 +0100 -+++ libssh-0.5.3/cmake/Modules/FindZLIB.cmake 2014-01-11 12:11:52.000000000 +0100 +--- libssh-0.6.3.orig/cmake/Modules/FindZLIB.cmake 2013-12-21 18:37:12.000000000 +0100 ++++ libssh-0.6.3/cmake/Modules/FindZLIB.cmake 2014-03-14 09:07:03.296701809 +0100 @@ -61,11 +61,11 @@ else (ZLIB_LIBRARIES AND ZLIB_INCLUDE_DI NAMES zlib.h @@ -13,9 +13,9 @@ ) mark_as_advanced(ZLIB_INCLUDE_DIR) -@@ -98,12 +98,12 @@ else (ZLIB_LIBRARIES AND ZLIB_INCLUDE_DI - zlib +@@ -99,12 +99,12 @@ else (ZLIB_LIBRARIES AND ZLIB_INCLUDE_DI zlib1 + zlibd PATHS + ${ZLIB_ROOT_DIR}/lib /usr/local/lib diff --git a/package/libssh/patches/patch-include_libssh_libssh_h b/package/libssh/patches/patch-include_libssh_libssh_h index 8811f79fb..dc60939bf 100644 --- a/package/libssh/patches/patch-include_libssh_libssh_h +++ b/package/libssh/patches/patch-include_libssh_libssh_h @@ -1,6 +1,6 @@ ---- libssh-0.5.3.orig/include/libssh/libssh.h 2012-11-20 12:41:49.000000000 +0100 -+++ libssh-0.5.3/include/libssh/libssh.h 2014-01-11 12:04:00.000000000 +0100 -@@ -57,6 +57,7 @@ +--- libssh-0.6.3.orig/include/libssh/libssh.h 2014-03-04 13:20:48.000000000 +0100 ++++ libssh-0.6.3/include/libssh/libssh.h 2014-03-14 09:07:03.304701842 +0100 +@@ -56,6 +56,7 @@ typedef unsigned long long uint64_t; typedef int mode_t; #else /* _MSC_VER */ diff --git a/package/libthread_db/Makefile b/package/libthread_db/Makefile index a2e14cd10..773c4c8f2 100644 --- a/package/libthread_db/Makefile +++ b/package/libthread_db/Makefile @@ -19,8 +19,6 @@ PKG_SECTION:= libs PKG_CFLINE_LIBTHREAD_DB:=depends on ADK_PACKAGE_GDB || ADK_PACKAGE_GDBSERVER -PKG_ARCH_DEPENDS:= !m68k - NO_DISTFILES:= 1 include ${TOPDIR}/mk/package.mk diff --git a/package/libtirpc/Makefile b/package/libtirpc/Makefile index a1bfab5d1..61ae3a9b5 100644 --- a/package/libtirpc/Makefile +++ b/package/libtirpc/Makefile @@ -5,7 +5,7 @@ include ${TOPDIR}/rules.mk PKG_NAME:= libtirpc PKG_VERSION:= 0.2.3 -PKG_RELEASE:= 2 +PKG_RELEASE:= 3 PKG_MD5SUM:= b70e6c12a369a91e69fcc3b9feb23d61 PKG_DESCR:= a transport independent RPC library PKG_SECTION:= libs @@ -15,8 +15,6 @@ PKG_URL:= http://sourceforge.net/projects/libtirpc/ PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=libtirpc/} PKG_OPTS:= dev -PKG_LIBC_DEPENDS:= uclibc glibc - DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.bz2 include ${TOPDIR}/mk/package.mk diff --git a/package/libtirpc/patches/patch-src_auth_des_c b/package/libtirpc/patches/patch-src_auth_des_c new file mode 100644 index 000000000..d91177fdc --- /dev/null +++ b/package/libtirpc/patches/patch-src_auth_des_c @@ -0,0 +1,18 @@ +--- libtirpc-0.2.3.orig/src/auth_des.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/auth_des.c 2014-03-22 13:20:52.000000000 +0100 +@@ -38,7 +38,6 @@ + #include <string.h> + #include <stdlib.h> + #include <unistd.h> +-#include <sys/cdefs.h> + #include <rpc/des_crypt.h> + #include <syslog.h> + #include <rpc/types.h> +@@ -52,7 +51,6 @@ + + #if defined(LIBC_SCCS) && !defined(lint) + #endif +-#include <sys/cdefs.h> + + #define USEC_PER_SEC 1000000 + #define RTIME_TIMEOUT 5 /* seconds to wait for sync */ diff --git a/package/libtirpc/patches/patch-src_auth_none_c b/package/libtirpc/patches/patch-src_auth_none_c new file mode 100644 index 000000000..d8fd74f3d --- /dev/null +++ b/package/libtirpc/patches/patch-src_auth_none_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/auth_none.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/auth_none.c 2014-03-22 13:20:53.000000000 +0100 +@@ -31,7 +31,6 @@ + static char *sccsid = "@(#)auth_none.c 1.19 87/08/11 Copyr 1984 Sun Micro"; + static char *sccsid = "@(#)auth_none.c 2.1 88/07/29 4.0 RPCSRC"; + #endif +-#include <sys/cdefs.h> + __FBSDID("$FreeBSD: src/lib/libc/rpc/auth_none.c,v 1.12 2002/03/22 23:18:35 obrien Exp $"); + */ + diff --git a/package/libtirpc/patches/patch-src_auth_time_c b/package/libtirpc/patches/patch-src_auth_time_c index 5ce7de419..b6319db96 100644 --- a/package/libtirpc/patches/patch-src_auth_time_c +++ b/package/libtirpc/patches/patch-src_auth_time_c @@ -1,6 +1,14 @@ ---- libtirpc-0.2.2.orig/src/auth_time.c 2011-05-02 14:10:40.000000000 +0200 -+++ libtirpc-0.2.2/src/auth_time.c 2012-03-22 19:02:30.422855534 +0100 -@@ -43,7 +43,7 @@ +--- libtirpc-0.2.3.orig/src/auth_time.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/auth_time.c 2014-03-22 13:20:53.000000000 +0100 +@@ -25,7 +25,6 @@ + * needed to deal with TCP connections. + */ + +-#include <sys/cdefs.h> + #include <stdio.h> + #include <syslog.h> + #include <string.h> +@@ -43,7 +42,7 @@ //#include <clnt_soc.h> #include <sys/select.h> #undef NIS @@ -9,7 +17,7 @@ #ifdef TESTING -@@ -138,6 +138,7 @@ free_eps(eps, num) +@@ -138,6 +137,7 @@ free_eps(eps, num) * NIS+ server will call __rpc_get_time_offset() with the nis_server * structure already populated. */ @@ -17,7 +25,7 @@ static nis_server * get_server(sin, host, srv, eps, maxep) struct sockaddr_in *sin; -@@ -491,3 +492,4 @@ error: +@@ -491,3 +491,4 @@ error: return (time_valid); } diff --git a/package/libtirpc/patches/patch-src_auth_unix_c b/package/libtirpc/patches/patch-src_auth_unix_c new file mode 100644 index 000000000..3d5fb990e --- /dev/null +++ b/package/libtirpc/patches/patch-src_auth_unix_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/auth_unix.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/auth_unix.c 2014-03-22 13:20:53.000000000 +0100 +@@ -26,7 +26,6 @@ + * POSSIBILITY OF SUCH DAMAGE. + */ + +-#include <sys/cdefs.h> + + /* + * auth_unix.c, Implements UNIX style authentication parameters. diff --git a/package/libtirpc/patches/patch-src_authdes_prot_c b/package/libtirpc/patches/patch-src_authdes_prot_c new file mode 100644 index 000000000..f829ed45e --- /dev/null +++ b/package/libtirpc/patches/patch-src_authdes_prot_c @@ -0,0 +1,7 @@ +--- libtirpc-0.2.3.orig/src/authdes_prot.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/authdes_prot.c 2014-03-22 13:20:53.000000000 +0100 +@@ -1,4 +1,3 @@ +-#include <sys/cdefs.h> + /* + * Copyright (c) 2009, Sun Microsystems, Inc. + * All rights reserved. diff --git a/package/libtirpc/patches/patch-src_authunix_prot_c b/package/libtirpc/patches/patch-src_authunix_prot_c new file mode 100644 index 000000000..178436474 --- /dev/null +++ b/package/libtirpc/patches/patch-src_authunix_prot_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/authunix_prot.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/authunix_prot.c 2014-03-22 13:20:53.000000000 +0100 +@@ -26,7 +26,6 @@ + * POSSIBILITY OF SUCH DAMAGE. + */ + +-#include <sys/cdefs.h> + + /* + * authunix_prot.c diff --git a/package/libtirpc/patches/patch-src_bindresvport_c b/package/libtirpc/patches/patch-src_bindresvport_c new file mode 100644 index 000000000..4e828a005 --- /dev/null +++ b/package/libtirpc/patches/patch-src_bindresvport_c @@ -0,0 +1,18 @@ +--- libtirpc-0.2.3.orig/src/bindresvport.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/bindresvport.c 2014-03-22 13:24:36.000000000 +0100 +@@ -26,7 +26,6 @@ + * POSSIBILITY OF SUCH DAMAGE. + */ + +-#include <sys/cdefs.h> + + /* + * Copyright (c) 1987 by Sun Microsystems, Inc. +@@ -38,6 +37,7 @@ + #include <sys/socket.h> + + #include <netinet/in.h> ++#include <netdb.h> + + #include <errno.h> + #include <string.h> diff --git a/package/libtirpc/patches/patch-src_clnt_bcast_c b/package/libtirpc/patches/patch-src_clnt_bcast_c new file mode 100644 index 000000000..e803b1721 --- /dev/null +++ b/package/libtirpc/patches/patch-src_clnt_bcast_c @@ -0,0 +1,22 @@ +--- libtirpc-0.2.3.orig/src/clnt_bcast.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/clnt_bcast.c 2014-03-22 14:19:29.000000000 +0100 +@@ -28,7 +28,6 @@ + /* + * Copyright (c) 1986-1991 by Sun Microsystems Inc. + */ +-#include <sys/cdefs.h> + + /* + * clnt_bcast.c +@@ -41,10 +40,8 @@ + */ + #include <sys/socket.h> + #include <sys/types.h> +-#include <sys/queue.h> + +-/* new queue functions */ +-#include <misc/queue.h> ++#include "queue.h" + + #include <net/if.h> + #include <netinet/in.h> diff --git a/package/libtirpc/patches/patch-src_clnt_perror_c b/package/libtirpc/patches/patch-src_clnt_perror_c new file mode 100644 index 000000000..5c3c9169a --- /dev/null +++ b/package/libtirpc/patches/patch-src_clnt_perror_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/clnt_perror.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/clnt_perror.c 2014-03-22 13:20:53.000000000 +0100 +@@ -27,7 +27,6 @@ + */ + + /* +-#include <sys/cdefs.h> + */ + /* + * clnt_perror.c diff --git a/package/libtirpc/patches/patch-src_clnt_simple_c b/package/libtirpc/patches/patch-src_clnt_simple_c new file mode 100644 index 000000000..8db2f1b8e --- /dev/null +++ b/package/libtirpc/patches/patch-src_clnt_simple_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/clnt_simple.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/clnt_simple.c 2014-03-22 13:20:53.000000000 +0100 +@@ -29,7 +29,6 @@ + * Copyright (c) 1986-1991 by Sun Microsystems Inc. + */ + +-#include <sys/cdefs.h> + + /* + * clnt_simple.c diff --git a/package/libtirpc/patches/patch-src_crypt_client_c b/package/libtirpc/patches/patch-src_crypt_client_c new file mode 100644 index 000000000..3768305f8 --- /dev/null +++ b/package/libtirpc/patches/patch-src_crypt_client_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/crypt_client.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/crypt_client.c 2014-03-22 13:20:53.000000000 +0100 +@@ -30,7 +30,6 @@ + * SUCH DAMAGE. + */ + +-#include <sys/cdefs.h> + + #include <err.h> + #include <sys/types.h> diff --git a/package/libtirpc/patches/patch-src_des_crypt_c b/package/libtirpc/patches/patch-src_des_crypt_c index 22c03d78b..c1c313dee 100644 --- a/package/libtirpc/patches/patch-src_des_crypt_c +++ b/package/libtirpc/patches/patch-src_des_crypt_c @@ -1,6 +1,10 @@ --- libtirpc-0.2.3.orig/src/des_crypt.c 2013-02-13 16:13:59.000000000 +0100 -+++ libtirpc-0.2.3/src/des_crypt.c 2013-08-12 16:47:07.000000000 +0200 -@@ -43,7 +43,7 @@ static char sccsid[] = "@(#)des_crypt.c ++++ libtirpc-0.2.3/src/des_crypt.c 2014-03-22 13:20:53.000000000 +0100 +@@ -39,11 +39,10 @@ + static char sccsid[] = "@(#)des_crypt.c 2.2 88/08/10 4.0 RPCSRC; from 1.13 88/02/08 SMI"; + #endif + #endif +-#include <sys/cdefs.h> static int common_crypt( char *, char *, unsigned, unsigned, struct desparams * ); int (*__des_crypt_LOCAL)() = 0; @@ -9,7 +13,7 @@ /* * Copy 8 bytes */ -@@ -145,10 +145,6 @@ common_crypt(key, buf, len, mode, desp) +@@ -145,10 +144,6 @@ common_crypt(key, buf, len, mode, desp) if (!__des_crypt_LOCAL(buf, len, desp)) { return (DESERR_HWERROR); } diff --git a/package/libtirpc/patches/patch-src_des_soft_c b/package/libtirpc/patches/patch-src_des_soft_c new file mode 100644 index 000000000..675a6a265 --- /dev/null +++ b/package/libtirpc/patches/patch-src_des_soft_c @@ -0,0 +1,9 @@ +--- libtirpc-0.2.3.orig/src/des_soft.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/des_soft.c 2014-03-22 13:20:53.000000000 +0100 +@@ -1,5 +1,4 @@ +-//#include <sys/cdefs.h> +- ++// + /* + * Copyright (c) 2009, Sun Microsystems, Inc. + * All rights reserved. diff --git a/package/libtirpc/patches/patch-src_getnetconfig_c b/package/libtirpc/patches/patch-src_getnetconfig_c new file mode 100644 index 000000000..fb1f285a1 --- /dev/null +++ b/package/libtirpc/patches/patch-src_getnetconfig_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/getnetconfig.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/getnetconfig.c 2014-03-22 13:20:53.000000000 +0100 +@@ -32,7 +32,6 @@ + + #include <pthread.h> + #include <reentrant.h> +-#include <sys/cdefs.h> + #include <stdio.h> + #include <errno.h> + #include <netconfig.h> diff --git a/package/libtirpc/patches/patch-src_getnetpath_c b/package/libtirpc/patches/patch-src_getnetpath_c new file mode 100644 index 000000000..73788ea04 --- /dev/null +++ b/package/libtirpc/patches/patch-src_getnetpath_c @@ -0,0 +1,16 @@ +--- libtirpc-0.2.3.orig/src/getnetpath.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/getnetpath.c 2014-03-22 13:20:53.000000000 +0100 +@@ -25,13 +25,11 @@ + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ +-#include <sys/cdefs.h> + + /* + * Copyright (c) 1989 by Sun Microsystems, Inc. + */ + +-#include <sys/cdefs.h> + #include <stdio.h> + #include <errno.h> + #include <netconfig.h> diff --git a/package/libtirpc/patches/patch-src_getpeereid_c b/package/libtirpc/patches/patch-src_getpeereid_c new file mode 100644 index 000000000..1af375563 --- /dev/null +++ b/package/libtirpc/patches/patch-src_getpeereid_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/getpeereid.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/getpeereid.c 2014-03-22 13:20:52.000000000 +0100 +@@ -24,7 +24,6 @@ + * SUCH DAMAGE. + */ + +-#include <sys/cdefs.h> + + #include <sys/param.h> + #include <sys/socket.h> diff --git a/package/libtirpc/patches/patch-src_getpublickey_c b/package/libtirpc/patches/patch-src_getpublickey_c new file mode 100644 index 000000000..a41eca54a --- /dev/null +++ b/package/libtirpc/patches/patch-src_getpublickey_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/getpublickey.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/getpublickey.c 2014-03-22 13:20:53.000000000 +0100 +@@ -26,7 +26,6 @@ + * POSSIBILITY OF SUCH DAMAGE. + */ + /* +-#include <sys/cdefs.h> + */ + + /* diff --git a/package/libtirpc/patches/patch-src_key_call_c b/package/libtirpc/patches/patch-src_key_call_c new file mode 100644 index 000000000..f7e7fb44d --- /dev/null +++ b/package/libtirpc/patches/patch-src_key_call_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/key_call.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/key_call.c 2014-03-22 13:20:52.000000000 +0100 +@@ -30,7 +30,6 @@ + */ + + +-#include <sys/cdefs.h> + + /* + * key_call.c, Interface to keyserver diff --git a/package/libtirpc/patches/patch-src_key_prot_xdr_c b/package/libtirpc/patches/patch-src_key_prot_xdr_c new file mode 100644 index 000000000..5dcf3f0f8 --- /dev/null +++ b/package/libtirpc/patches/patch-src_key_prot_xdr_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/key_prot_xdr.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/key_prot_xdr.c 2014-03-22 13:20:53.000000000 +0100 +@@ -33,7 +33,6 @@ + */ + /* Copyright (c) 1990, 1991 Sun Microsystems, Inc. */ + +-#include <sys/cdefs.h> + + /* + * Compiled from key_prot.x using rpcgen. diff --git a/package/libtirpc/patches/patch-src_mt_misc_c b/package/libtirpc/patches/patch-src_mt_misc_c new file mode 100644 index 000000000..27e711159 --- /dev/null +++ b/package/libtirpc/patches/patch-src_mt_misc_c @@ -0,0 +1,8 @@ +--- libtirpc-0.2.3.orig/src/mt_misc.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/mt_misc.c 2014-03-22 13:20:53.000000000 +0100 +@@ -1,5 +1,4 @@ + +-#include <sys/cdefs.h> + #include <pthread.h> + #include <reentrant.h> + #include <rpc/rpc.h> diff --git a/package/libtirpc/patches/patch-src_pmap_clnt_c b/package/libtirpc/patches/patch-src_pmap_clnt_c new file mode 100644 index 000000000..30b5deb86 --- /dev/null +++ b/package/libtirpc/patches/patch-src_pmap_clnt_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/pmap_clnt.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/pmap_clnt.c 2014-03-22 13:20:53.000000000 +0100 +@@ -26,7 +26,6 @@ + * POSSIBILITY OF SUCH DAMAGE. + */ + +-#include <sys/cdefs.h> + + /* + * pmap_clnt.c diff --git a/package/libtirpc/patches/patch-src_pmap_getmaps_c b/package/libtirpc/patches/patch-src_pmap_getmaps_c new file mode 100644 index 000000000..1d9c984be --- /dev/null +++ b/package/libtirpc/patches/patch-src_pmap_getmaps_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/pmap_getmaps.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/pmap_getmaps.c 2014-03-22 13:20:53.000000000 +0100 +@@ -26,7 +26,6 @@ + * POSSIBILITY OF SUCH DAMAGE. + */ + +-#include <sys/cdefs.h> + + /* + * pmap_getmap.c diff --git a/package/libtirpc/patches/patch-src_rpc_com_h b/package/libtirpc/patches/patch-src_rpc_com_h new file mode 100644 index 000000000..c327a0152 --- /dev/null +++ b/package/libtirpc/patches/patch-src_rpc_com_h @@ -0,0 +1,31 @@ +--- libtirpc-0.2.3.orig/src/rpc_com.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/rpc_com.h 2014-03-22 13:20:53.000000000 +0100 +@@ -40,7 +40,6 @@ + #ifndef _TIRPC_RPCCOM_H + #define _TIRPC_RPCCOM_H + +-#include <sys/cdefs.h> + + /* #pragma ident "@(#)rpc_com.h 1.11 93/07/05 SMI" */ + +@@ -54,7 +53,9 @@ + #define __RPC_GETXID(now) ((u_int32_t)getpid() ^ (u_int32_t)(now)->tv_sec ^ \ + (u_int32_t)(now)->tv_usec) + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern u_int __rpc_get_a_size(int); + extern int __rpc_dtbsize(void); + extern struct netconfig * __rpcgettp(int); +@@ -90,6 +91,8 @@ void __xprt_set_raddr(SVCXPRT *, const s + SVCXPRT **__svc_xports; + int __svc_maxrec; + +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* _TIRPC_RPCCOM_H */ diff --git a/package/libtirpc/patches/patch-src_rpc_generic_c b/package/libtirpc/patches/patch-src_rpc_generic_c new file mode 100644 index 000000000..aa567ce27 --- /dev/null +++ b/package/libtirpc/patches/patch-src_rpc_generic_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/rpc_generic.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/rpc_generic.c 2014-03-22 13:20:53.000000000 +0100 +@@ -29,7 +29,6 @@ + * Copyright (c) 1986-1991 by Sun Microsystems Inc. + */ + +-#include <sys/cdefs.h> + + /* + * rpc_generic.c, Miscl routines for RPC. diff --git a/package/libtirpc/patches/patch-src_rpcb_st_xdr_c b/package/libtirpc/patches/patch-src_rpcb_st_xdr_c new file mode 100644 index 000000000..30eeeee9d --- /dev/null +++ b/package/libtirpc/patches/patch-src_rpcb_st_xdr_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/rpcb_st_xdr.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/rpcb_st_xdr.c 2014-03-22 13:20:53.000000000 +0100 +@@ -35,7 +35,6 @@ + * routines used with the rpcbind stats facility. + */ + +-#include <sys/cdefs.h> + + #include <rpc/rpc.h> + diff --git a/package/libtirpc/patches/patch-src_rpcdname_c b/package/libtirpc/patches/patch-src_rpcdname_c new file mode 100644 index 000000000..b66b0a46f --- /dev/null +++ b/package/libtirpc/patches/patch-src_rpcdname_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/rpcdname.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/rpcdname.c 2014-03-22 13:20:53.000000000 +0100 +@@ -25,7 +25,6 @@ + * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE + * POSSIBILITY OF SUCH DAMAGE. + */ +-#include <sys/cdefs.h> + + /* + * rpcdname.c diff --git a/package/libtirpc/patches/patch-src_svc_dg_c b/package/libtirpc/patches/patch-src_svc_dg_c new file mode 100644 index 000000000..88622d951 --- /dev/null +++ b/package/libtirpc/patches/patch-src_svc_dg_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/svc_dg.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/svc_dg.c 2014-03-22 13:20:52.000000000 +0100 +@@ -31,7 +31,6 @@ + * Copyright (c) 1986-1991 by Sun Microsystems Inc. + */ + +-#include <sys/cdefs.h> + + /* + * svc_dg.c, Server side for connectionless RPC. diff --git a/package/libtirpc/patches/patch-src_svc_simple_c b/package/libtirpc/patches/patch-src_svc_simple_c new file mode 100644 index 000000000..ed994e4f5 --- /dev/null +++ b/package/libtirpc/patches/patch-src_svc_simple_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/svc_simple.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/svc_simple.c 2014-03-22 13:20:53.000000000 +0100 +@@ -29,7 +29,6 @@ + * Copyright (c) 1986-1991 by Sun Microsystems Inc. + */ + +-#include <sys/cdefs.h> + + /* + * svc_simple.c diff --git a/package/libtirpc/patches/patch-src_svc_vc_c b/package/libtirpc/patches/patch-src_svc_vc_c new file mode 100644 index 000000000..8e43f4b8d --- /dev/null +++ b/package/libtirpc/patches/patch-src_svc_vc_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/svc_vc.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/svc_vc.c 2014-03-22 13:20:53.000000000 +0100 +@@ -27,7 +27,6 @@ + * POSSIBILITY OF SUCH DAMAGE. + */ + +-#include <sys/cdefs.h> + + /* + * svc_vc.c, Server side for Connection Oriented based RPC. diff --git a/package/libtirpc/patches/patch-src_xdr_array_c b/package/libtirpc/patches/patch-src_xdr_array_c new file mode 100644 index 000000000..dfa17d673 --- /dev/null +++ b/package/libtirpc/patches/patch-src_xdr_array_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/xdr_array.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/xdr_array.c 2014-03-22 13:20:53.000000000 +0100 +@@ -27,7 +27,6 @@ + * POSSIBILITY OF SUCH DAMAGE. + */ + +-#include <sys/cdefs.h> + + /* + * xdr_array.c, Generic XDR routines impelmentation. diff --git a/package/libtirpc/patches/patch-src_xdr_c b/package/libtirpc/patches/patch-src_xdr_c new file mode 100644 index 000000000..22211757b --- /dev/null +++ b/package/libtirpc/patches/patch-src_xdr_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/xdr.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/xdr.c 2014-03-22 13:20:53.000000000 +0100 +@@ -26,7 +26,6 @@ + * POSSIBILITY OF SUCH DAMAGE. + */ + +-#include <sys/cdefs.h> + + /* + * xdr.c, Generic XDR routines implementation. diff --git a/package/libtirpc/patches/patch-src_xdr_float_c b/package/libtirpc/patches/patch-src_xdr_float_c new file mode 100644 index 000000000..db18981e1 --- /dev/null +++ b/package/libtirpc/patches/patch-src_xdr_float_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/xdr_float.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/xdr_float.c 2014-03-22 13:20:53.000000000 +0100 +@@ -27,7 +27,6 @@ + * POSSIBILITY OF SUCH DAMAGE. + */ + +-#include <sys/cdefs.h> + + /* + * xdr_float.c, Generic XDR routines implementation. diff --git a/package/libtirpc/patches/patch-src_xdr_mem_c b/package/libtirpc/patches/patch-src_xdr_mem_c new file mode 100644 index 000000000..670bba01e --- /dev/null +++ b/package/libtirpc/patches/patch-src_xdr_mem_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/xdr_mem.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/xdr_mem.c 2014-03-22 13:20:53.000000000 +0100 +@@ -26,7 +26,6 @@ + * POSSIBILITY OF SUCH DAMAGE. + */ + +-#include <sys/cdefs.h> + + /* + * xdr_mem.h, XDR implementation using memory buffers. diff --git a/package/libtirpc/patches/patch-src_xdr_rec_c b/package/libtirpc/patches/patch-src_xdr_rec_c new file mode 100644 index 000000000..f4a2672d3 --- /dev/null +++ b/package/libtirpc/patches/patch-src_xdr_rec_c @@ -0,0 +1,11 @@ +--- libtirpc-0.2.3.orig/src/xdr_rec.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/xdr_rec.c 2014-03-22 13:20:53.000000000 +0100 +@@ -27,8 +27,6 @@ + * POSSIBILITY OF SUCH DAMAGE. + */ + +-#include <sys/cdefs.h> +-#include <sys/cdefs.h> + + /* + * xdr_rec.c, Implements TCP/IP based XDR streams with a "record marking" diff --git a/package/libtirpc/patches/patch-src_xdr_reference_c b/package/libtirpc/patches/patch-src_xdr_reference_c new file mode 100644 index 000000000..a0b284380 --- /dev/null +++ b/package/libtirpc/patches/patch-src_xdr_reference_c @@ -0,0 +1,11 @@ +--- libtirpc-0.2.3.orig/src/xdr_reference.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/xdr_reference.c 2014-03-22 13:20:53.000000000 +0100 +@@ -26,8 +26,6 @@ + * POSSIBILITY OF SUCH DAMAGE. + */ + +-#include <sys/cdefs.h> +-#include <sys/cdefs.h> + + /* + * xdr_reference.c, Generic XDR routines impelmentation. diff --git a/package/libtirpc/patches/patch-src_xdr_sizeof_c b/package/libtirpc/patches/patch-src_xdr_sizeof_c new file mode 100644 index 000000000..0246ffa7d --- /dev/null +++ b/package/libtirpc/patches/patch-src_xdr_sizeof_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/xdr_sizeof.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/xdr_sizeof.c 2014-03-22 13:20:53.000000000 +0100 +@@ -34,7 +34,6 @@ + * when serialized using XDR. + */ + +-#include <sys/cdefs.h> + + #include "namespace.h" + #include <rpc/types.h> diff --git a/package/libtirpc/patches/patch-src_xdr_stdio_c b/package/libtirpc/patches/patch-src_xdr_stdio_c new file mode 100644 index 000000000..90dabf120 --- /dev/null +++ b/package/libtirpc/patches/patch-src_xdr_stdio_c @@ -0,0 +1,10 @@ +--- libtirpc-0.2.3.orig/src/xdr_stdio.c 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/src/xdr_stdio.c 2014-03-22 13:20:53.000000000 +0100 +@@ -26,7 +26,6 @@ + * POSSIBILITY OF SUCH DAMAGE. + */ + +-#include <sys/cdefs.h> + + /* + * xdr_stdio.c, XDR implementation on standard i/o file. diff --git a/package/libtirpc/patches/patch-tirpc_misc_event_h b/package/libtirpc/patches/patch-tirpc_misc_event_h new file mode 100644 index 000000000..7fc07813f --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_misc_event_h @@ -0,0 +1,24 @@ +--- libtirpc-0.2.3.orig/tirpc/misc/event.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/misc/event.h 2014-03-22 13:20:52.000000000 +0100 +@@ -186,15 +186,18 @@ extern int kqueue_del_filteropts(int fil + + #else /* !_KERNEL */ + +-#include <sys/cdefs.h> + struct timespec; + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + int kqueue(void); + int kevent(int kq, const struct kevent *changelist, int nchanges, + struct kevent *eventlist, int nevents, + const struct timespec *timeout); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* !_KERNEL */ + diff --git a/package/libtirpc/patches/patch-tirpc_netconfig_h b/package/libtirpc/patches/patch-tirpc_netconfig_h new file mode 100644 index 000000000..2f17d5fd4 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_netconfig_h @@ -0,0 +1,23 @@ +--- libtirpc-0.2.3.orig/tirpc/netconfig.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/netconfig.h 2014-03-22 13:20:52.000000000 +0100 +@@ -74,7 +74,9 @@ typedef struct { + #define NC_UDP "udp" + #define NC_ICMP "icmp" + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + + extern void *setnetconfig (void); + extern struct netconfig *getnetconfig (void *); +@@ -89,6 +91,8 @@ extern int endnetpath (void *); + extern void nc_perror (const char *); + extern char *nc_sperror (void); + +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* _NETCONFIG_H_ */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_auth_des_h b/package/libtirpc/patches/patch-tirpc_rpc_auth_des_h new file mode 100644 index 000000000..c072f8871 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_auth_des_h @@ -0,0 +1,32 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/auth_des.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/auth_des.h 2014-03-22 13:20:52.000000000 +0100 +@@ -114,17 +114,25 @@ struct authdes_verf { + * Map a des credential into a unix cred. + * + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern int authdes_getucred( struct authdes_cred *, uid_t *, gid_t *, int *, gid_t * ); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern bool_t xdr_authdes_cred(XDR *, struct authdes_cred *); + extern bool_t xdr_authdes_verf(XDR *, struct authdes_verf *); + extern int rtime(dev_t, struct netbuf *, int, struct timeval *, + struct timeval *); + extern void kgetnetname(char *); + extern enum auth_stat _svcauth_des(struct svc_req *, struct rpc_msg *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* ndef _TI_AUTH_DES_ */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_auth_gss_h b/package/libtirpc/patches/patch-tirpc_rpc_auth_gss_h new file mode 100644 index 000000000..2d1a07987 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_auth_gss_h @@ -0,0 +1,53 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/auth_gss.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/auth_gss.h 2014-03-22 13:20:52.000000000 +0100 +@@ -104,28 +104,32 @@ struct rpc_gss_init_res { + #define MAXSEQ 0x80000000 + + /* Prototypes. */ +-__BEGIN_DECLS +-bool_t xdr_rpc_gss_cred __P((XDR *xdrs, struct rpc_gss_cred *p)); +-bool_t xdr_rpc_gss_init_args __P((XDR *xdrs, gss_buffer_desc *p)); +-bool_t xdr_rpc_gss_init_res __P((XDR *xdrs, struct rpc_gss_init_res *p)); +-bool_t xdr_rpc_gss_data __P((XDR *xdrs, xdrproc_t xdr_func, ++#ifdef __cplusplus ++extern "C" { ++#endif ++bool_t xdr_rpc_gss_cred (XDR *xdrs, struct rpc_gss_cred *p); ++bool_t xdr_rpc_gss_init_args (XDR *xdrs, gss_buffer_desc *p); ++bool_t xdr_rpc_gss_init_res (XDR *xdrs, struct rpc_gss_init_res *p); ++bool_t xdr_rpc_gss_data (XDR *xdrs, xdrproc_t xdr_func, + caddr_t xdr_ptr, gss_ctx_id_t ctx, + gss_qop_t qop, rpc_gss_svc_t svc, +- u_int seq)); ++ u_int seq); + +-AUTH *authgss_create __P((CLIENT *, gss_name_t, +- struct rpc_gss_sec *)); +-AUTH *authgss_create_default __P((CLIENT *, char *, struct rpc_gss_sec *)); +-bool_t authgss_service __P((AUTH *auth, int svc)); +-bool_t authgss_get_private_data __P((AUTH *auth, +- struct authgss_private_data *)); +-bool_t authgss_free_private_data __P((struct authgss_private_data *)); ++AUTH *authgss_create (CLIENT *, gss_name_t, ++ struct rpc_gss_sec *); ++AUTH *authgss_create_default (CLIENT *, char *, struct rpc_gss_sec *); ++bool_t authgss_service (AUTH *auth, int svc); ++bool_t authgss_get_private_data (AUTH *auth, ++ struct authgss_private_data *); ++bool_t authgss_free_private_data (struct authgss_private_data *); + +-void gss_log_debug __P((const char *fmt, ...)); +-void gss_log_status __P((char *m, OM_uint32 major, +- OM_uint32 minor)); +-void gss_log_hexdump __P((const u_char *buf, int len, int offset)); ++void gss_log_debug (const char *fmt, ...); ++void gss_log_status (char *m, OM_uint32 major, ++ OM_uint32 minor); ++void gss_log_hexdump (const u_char *buf, int len, int offset); + +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* !_TIRPC_AUTH_GSS_H */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_auth_h b/package/libtirpc/patches/patch-tirpc_rpc_auth_h new file mode 100644 index 000000000..b000f85f7 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_auth_h @@ -0,0 +1,192 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/auth.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/auth.h 2014-03-22 13:20:52.000000000 +0100 +@@ -48,7 +48,6 @@ + + #include <rpc/xdr.h> + #include <rpc/clnt_stat.h> +-#include <sys/cdefs.h> + #include <sys/socket.h> + #include <sys/types.h> + #include <stdio.h> +@@ -165,9 +164,13 @@ union des_block { + char c[8]; + }; + typedef union des_block des_block; +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern bool_t xdr_des_block(XDR *, des_block *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Authentication info. Opaque to client. +@@ -288,9 +291,13 @@ auth_put(AUTH *auth) + xfunc, xwhere)) + + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern struct opaque_auth _null_auth; +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Any style authentication. These routines can be used by any +@@ -311,11 +318,15 @@ int authany_wrap(void), authany_unwrap(v + * int len; + * int *aup_gids; + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern AUTH *authunix_create(char *, uid_t, uid_t, int, uid_t *); + extern AUTH *authunix_create_default(void); /* takes no parameters */ + extern AUTH *authnone_create(void); /* takes no parameters */ +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + /* + * DES style authentication + * AUTH *authsecdes_create(servername, window, timehost, ckey) +@@ -324,15 +335,23 @@ __END_DECLS + * const char *timehost; - optional hostname to sync with + * des_block *ckey; - optional conversation key to use + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern AUTH *authdes_create (char *, u_int, struct sockaddr *, des_block *); + extern AUTH *authdes_seccreate (const char *, const u_int, const char *, + const des_block *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern bool_t xdr_opaque_auth (XDR *, struct opaque_auth *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #define authsys_create(c,i1,i2,i3,ip) authunix_create((c),(i1),(i2),(i3),(ip)) + #define authsys_create_default() authunix_create_default() +@@ -340,36 +359,48 @@ __END_DECLS + /* + * Netname manipulation routines. + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern int getnetname(char *); + extern int host2netname(char *, const char *, const char *); + extern int user2netname(char *, const uid_t, const char *); + extern int netname2user(char *, uid_t *, gid_t *, int *, gid_t *); + extern int netname2host(char *, char *, const int); + extern void passwd2des ( char *, char * ); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * + * These routines interface to the keyserv daemon + * + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern int key_decryptsession(const char *, des_block *); + extern int key_encryptsession(const char *, des_block *); + extern int key_gendes(des_block *); + extern int key_setsecret(const char *); + extern int key_secretkey_is_set(void); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Publickey routines. + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern int getpublickey (const char *, char *); + extern int getpublicandprivatekey (char *, char *); + extern int getsecretkey (char *, char *, char *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #ifdef KERBEROS + /* +@@ -382,10 +413,14 @@ __END_DECLS + * const char *timehost; - optional hostname to sync with + * int *status; - kerberos status returned + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern AUTH *authkerb_seccreate(const char *, const char *, const char *, + const u_int, const char *, int *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Map a kerberos credential into a unix cred. +@@ -398,19 +433,27 @@ __END_DECLS + * int *groups; + * + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern int authkerb_getucred(/* struct svc_req *, uid_t *, gid_t *, + short *, int * */); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + #endif /* KERBEROS */ + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + struct svc_req; + struct rpc_msg; + enum auth_stat _svcauth_none (struct svc_req *, struct rpc_msg *); + enum auth_stat _svcauth_short (struct svc_req *, struct rpc_msg *); + enum auth_stat _svcauth_unix (struct svc_req *, struct rpc_msg *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #define AUTH_NONE 0 /* no authentication */ + #define AUTH_NULL 0 /* backward compatibility */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_auth_unix_h b/package/libtirpc/patches/patch-tirpc_rpc_auth_unix_h new file mode 100644 index 000000000..a0c70ece5 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_auth_unix_h @@ -0,0 +1,26 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/auth_unix.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/auth_unix.h 2014-03-22 13:20:52.000000000 +0100 +@@ -45,7 +45,6 @@ + + #ifndef _TIRPC_AUTH_UNIX_H + #define _TIRPC_AUTH_UNIX_H +-#include <sys/cdefs.h> + + /* The machine name is part of a credential; it may not exceed 255 bytes */ + #define MAX_MACHINE_NAME 255 +@@ -67,9 +66,13 @@ struct authunix_parms { + + #define authsys_parms authunix_parms + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern bool_t xdr_authunix_parms(XDR *, struct authunix_parms *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * If a response verifier has flavor AUTH_SHORT, diff --git a/package/libtirpc/patches/patch-tirpc_rpc_clnt_h b/package/libtirpc/patches/patch-tirpc_rpc_clnt_h new file mode 100644 index 000000000..ddd1f73ae --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_clnt_h @@ -0,0 +1,132 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/clnt.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/clnt.h 2014-03-22 13:20:52.000000000 +0100 +@@ -42,7 +42,6 @@ + #include <rpc/clnt_stat.h> + #include <rpc/auth.h> + +-#include <sys/cdefs.h> + #include <netconfig.h> + #include <sys/un.h> + +@@ -267,7 +266,9 @@ struct rpc_timers { + * Generic client creation routine. Supported protocols are those that + * belong to the nettype namespace (/etc/netconfig). + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern CLIENT *clnt_create(const char *, const rpcprog_t, const rpcvers_t, + const char *); + /* +@@ -414,32 +415,46 @@ extern CLIENT *clnt_dg_create(const int, + */ + extern CLIENT *clnt_raw_create(rpcprog_t, rpcvers_t); + +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + + /* + * Print why creation failed + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern void clnt_pcreateerror(const char *); /* stderr */ + extern char *clnt_spcreateerror(const char *); /* string */ +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Like clnt_perror(), but is more verbose in its output + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern void clnt_perrno(enum clnt_stat); /* stderr */ + extern char *clnt_sperrno(enum clnt_stat); /* string */ +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Print an English error message, given the client error code + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern void clnt_perror(CLIENT *, const char *); /* stderr */ + extern char *clnt_sperror(CLIENT *, const char *); /* string */ +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + + /* +@@ -450,9 +465,13 @@ struct rpc_createerr { + struct rpc_err cf_error; /* useful when cf_stat == RPC_PMAPFAILURE */ + }; + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern struct rpc_createerr *__rpc_createerr(void); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + #define get_rpc_createerr() (*(__rpc_createerr())) + #define rpc_createerr (*(__rpc_createerr())) + +@@ -469,12 +488,16 @@ __END_DECLS + * char *out; + * const char *nettype; + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern enum clnt_stat rpc_call(const char *, const rpcprog_t, + const rpcvers_t, const rpcproc_t, + const xdrproc_t, const char *, + const xdrproc_t, char *, const char *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * RPC broadcast interface +@@ -522,7 +545,9 @@ __END_DECLS + + typedef bool_t (*resultproc_t)(caddr_t, ...); + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern enum clnt_stat rpc_broadcast(const rpcprog_t, const rpcvers_t, + const rpcproc_t, const xdrproc_t, + caddr_t, const xdrproc_t, caddr_t, +@@ -532,7 +557,9 @@ extern enum clnt_stat rpc_broadcast_exp( + caddr_t, const xdrproc_t, caddr_t, + const resultproc_t, const int, + const int, const char *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* For backward compatibility */ + #include <rpc/clnt_soc.h> diff --git a/package/libtirpc/patches/patch-tirpc_rpc_clnt_soc_h b/package/libtirpc/patches/patch-tirpc_rpc_clnt_soc_h new file mode 100644 index 000000000..3112aeee5 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_clnt_soc_h @@ -0,0 +1,78 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/clnt_soc.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/clnt_soc.h 2014-03-22 13:20:52.000000000 +0100 +@@ -46,7 +46,6 @@ + * with TS-RPC. + */ + +-#include <sys/cdefs.h> + + #define UDPMSGSIZE 8800 /* rpc imposed limit on udp msg size */ + +@@ -61,27 +60,39 @@ + * u_int sendsz; + * u_int recvsz; + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern CLIENT *clnttcp_create(struct sockaddr_in *, u_long, u_long, int *, + u_int, u_int); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Raw (memory) rpc. + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern CLIENT *clntraw_create(u_long, u_long); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + + /* + IPv6 socket version + */ + #ifdef INET6 +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern CLIENT *clnttcp6_create(struct sockaddr_in6 *, u_long, u_long, int *, + u_int, u_int); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + #endif + + /* +@@ -105,7 +116,9 @@ __END_DECLS + * u_int sendsz; + * u_int recvsz; + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern CLIENT *clntudp_create(struct sockaddr_in *, u_long, u_long, + struct timeval, int *); + extern CLIENT *clntudp_bufcreate(struct sockaddr_in *, u_long, u_long, +@@ -116,7 +129,9 @@ extern CLIENT *clntudp6_create(struct so + extern CLIENT *clntudp6_bufcreate(struct sockaddr_in6 *, u_long, u_long, + struct timeval, int *, u_int, u_int); + #endif +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + + #endif /* _RPC_CLNT_SOC_H */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_des_crypt_h b/package/libtirpc/patches/patch-tirpc_rpc_des_crypt_h new file mode 100644 index 000000000..d55657f95 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_des_crypt_h @@ -0,0 +1,52 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/des_crypt.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/des_crypt.h 2014-03-22 13:20:52.000000000 +0100 +@@ -43,7 +43,6 @@ + #ifndef _DES_DES_CRYPT_H + #define _DES_DES_CRYPT_H + +-#include <sys/cdefs.h> + #include <rpc/rpc.h> + + #define DES_MAXDATA 8192 /* max bytes encrypted in one call */ +@@ -83,23 +82,35 @@ + /* + * Cipher Block Chaining mode + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + int cbc_crypt( char *, char *, unsigned int, unsigned int, char *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Electronic Code Book mode + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + int ecb_crypt( char *, char *, unsigned int, unsigned int ); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Set des parity for a key. + * DES parity is odd and in the low bit of each byte + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + void des_setparity( char *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* _DES_DES_CRYPT_H */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_nettype_h b/package/libtirpc/patches/patch-tirpc_rpc_nettype_h new file mode 100644 index 000000000..60759caad --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_nettype_h @@ -0,0 +1,20 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/nettype.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/nettype.h 2014-03-22 13:20:52.000000000 +0100 +@@ -53,11 +53,15 @@ + #define _RPC_TCP 7 + #define _RPC_UDP 8 + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern void *__rpc_setconf(const char *); + extern void __rpc_endconf(void *); + extern struct netconfig *__rpc_getconf(void *); + extern struct netconfig *__rpc_getconfip(const char *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* !_TIRPC_NETTYPE_H */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_pmap_clnt_h b/package/libtirpc/patches/patch-tirpc_rpc_pmap_clnt_h new file mode 100644 index 000000000..7fda59939 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_pmap_clnt_h @@ -0,0 +1,25 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/pmap_clnt.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/pmap_clnt.h 2014-03-22 13:20:52.000000000 +0100 +@@ -63,9 +63,10 @@ + + #ifndef _RPC_PMAP_CLNT_H_ + #define _RPC_PMAP_CLNT_H_ +-#include <sys/cdefs.h> + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern bool_t pmap_set(u_long, u_long, int, int); + extern bool_t pmap_unset(u_long, u_long); + extern struct pmaplist *pmap_getmaps(struct sockaddr_in *); +@@ -80,6 +81,8 @@ extern enum clnt_stat clnt_broadcast(u_l + resultproc_t); + extern u_short pmap_getport(struct sockaddr_in *, + u_long, u_long, u_int); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* !_RPC_PMAP_CLNT_H_ */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_pmap_prot_h b/package/libtirpc/patches/patch-tirpc_rpc_pmap_prot_h new file mode 100644 index 000000000..891991b98 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_pmap_prot_h @@ -0,0 +1,27 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/pmap_prot.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/pmap_prot.h 2014-03-22 13:20:52.000000000 +0100 +@@ -71,7 +71,6 @@ + + #ifndef _RPC_PMAP_PROT_H + #define _RPC_PMAP_PROT_H +-#include <sys/cdefs.h> + + #define PMAPPORT ((u_short)111) + #define PMAPPROG ((u_long)100000) +@@ -97,10 +96,14 @@ struct pmaplist { + struct pmaplist *pml_next; + }; + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern bool_t xdr_pmap(XDR *, struct pmap *); + extern bool_t xdr_pmaplist(XDR *, struct pmaplist **); + extern bool_t xdr_pmaplist_ptr(XDR *, struct pmaplist *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* !_RPC_PMAP_PROT_H */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_pmap_rmt_h b/package/libtirpc/patches/patch-tirpc_rpc_pmap_rmt_h new file mode 100644 index 000000000..98a494105 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_pmap_rmt_h @@ -0,0 +1,26 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/pmap_rmt.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/pmap_rmt.h 2014-03-22 13:20:52.000000000 +0100 +@@ -41,7 +41,6 @@ + + #ifndef _RPC_PMAP_RMT_H + #define _RPC_PMAP_RMT_H +-#include <sys/cdefs.h> + + struct rmtcallargs { + u_long prog, vers, proc, arglen; +@@ -56,9 +55,13 @@ struct rmtcallres { + xdrproc_t xdr_results; + }; + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern bool_t xdr_rmtcall_args(XDR *, struct rmtcallargs *); + extern bool_t xdr_rmtcallres(XDR *, struct rmtcallres *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* !_RPC_PMAP_RMT_H */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_rpc_com_h b/package/libtirpc/patches/patch-tirpc_rpc_rpc_com_h new file mode 100644 index 000000000..59f0283d3 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_rpc_com_h @@ -0,0 +1,31 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/rpc_com.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/rpc_com.h 2014-03-22 13:20:52.000000000 +0100 +@@ -41,7 +41,6 @@ + #ifndef _RPC_RPCCOM_H + #define _RPC_RPCCOM_H + +-#include <sys/cdefs.h> + + /* #pragma ident "@(#)rpc_com.h 1.11 93/07/05 SMI" */ + +@@ -55,7 +54,9 @@ + #define __RPC_GETXID(now) ((u_int32_t)getpid() ^ (u_int32_t)(now)->tv_sec ^ \ + (u_int32_t)(now)->tv_usec) + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern u_int __rpc_get_a_size(int); + extern int __rpc_dtbsize(void); + extern int _rpc_dtablesize(void); +@@ -77,6 +78,8 @@ bool_t rpc_control(int,void *); + + char *_get_next_token(char *, int); + +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* _RPC_RPCCOM_H */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_rpc_h b/package/libtirpc/patches/patch-tirpc_rpc_rpc_h new file mode 100644 index 000000000..7e1f000a2 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_rpc_h @@ -0,0 +1,44 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/rpc.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/rpc.h 2014-03-22 13:20:52.000000000 +0100 +@@ -79,9 +79,11 @@ + #define UDPMSGSIZE 8800 + #endif + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern int get_myaddress(struct sockaddr_in *); +-extern int bindresvport(int, struct sockaddr_in *) __THROW; ++extern int bindresvport(int, struct sockaddr_in *); + extern int registerrpc(int, int, int, char *(*)(char [UDPMSGSIZE]), + xdrproc_t, xdrproc_t); + extern int callrpc(const char *, int, int, int, xdrproc_t, void *, +@@ -93,18 +95,24 @@ struct netbuf *uaddr2taddr(const struct + + struct sockaddr; + extern int bindresvport_sa(int, struct sockaddr *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * The following are not exported interfaces, they are for internal library + * and rpcbind use only. Do not use, they may change without notice. + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + int __rpc_nconf2fd(const struct netconfig *); + int __rpc_nconf2fd_flags(const struct netconfig *, int); + int __rpc_nconf2sockinfo(const struct netconfig *, struct __rpc_sockinfo *); + int __rpc_fd2sockinfo(int, struct __rpc_sockinfo *); + u_int __rpc_get_t_size(int, int, int); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* !_RPC_RPC_H */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_rpc_msg_h b/package/libtirpc/patches/patch-tirpc_rpc_rpc_msg_h new file mode 100644 index 000000000..caee024d8 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_rpc_msg_h @@ -0,0 +1,23 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/rpc_msg.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/rpc_msg.h 2014-03-22 13:20:52.000000000 +0100 +@@ -161,7 +161,9 @@ struct rpc_msg { + #define acpted_rply ru.RM_rmb.ru.RP_ar + #define rjcted_rply ru.RM_rmb.ru.RP_dr + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + /* + * XDR routine to handle a rpc message. + * xdr_callmsg(xdrs, cmsg) +@@ -210,6 +212,8 @@ extern bool_t xdr_rejected_reply(XDR *, + * struct rpc_err *error; + */ + extern void _seterr_reply(struct rpc_msg *, struct rpc_err *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* !_TIRPC_RPC_MSG_H */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_rpcb_clnt_h b/package/libtirpc/patches/patch-tirpc_rpc_rpcb_clnt_h new file mode 100644 index 000000000..b0bc44ae6 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_rpcb_clnt_h @@ -0,0 +1,23 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/rpcb_clnt.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/rpcb_clnt.h 2014-03-22 13:20:52.000000000 +0100 +@@ -59,7 +59,9 @@ + + #include <rpc/types.h> + #include <rpc/rpcb_prot.h> +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern bool_t rpcb_set(const rpcprog_t, const rpcvers_t, + const struct netconfig *, const struct netbuf *); + extern bool_t rpcb_unset(const rpcprog_t, const rpcvers_t, +@@ -78,6 +80,8 @@ extern bool_t rpcb_getaddr(const rpcprog + extern bool_t rpcb_gettime(const char *, time_t *); + extern char *rpcb_taddr2uaddr(struct netconfig *, struct netbuf *); + extern struct netbuf *rpcb_uaddr2taddr(struct netconfig *, char *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* !_RPC_RPCB_CLNT_H */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_rpcent_h b/package/libtirpc/patches/patch-tirpc_rpc_rpcent_h new file mode 100644 index 000000000..badea8121 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_rpcent_h @@ -0,0 +1,31 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/rpcent.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/rpcent.h 2014-03-22 14:22:44.000000000 +0100 +@@ -44,10 +44,12 @@ + /* #pragma ident "@(#)rpcent.h 1.13 94/04/25 SMI" */ + /* @(#)rpcent.h 1.1 88/12/06 SMI */ + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + + /* These are defined in /usr/include/rpc/netdb.h */ +-#if 0 ++#if !defined(__GLIBC__) + struct rpcent { + char *r_name; /* name of server for this rpc program */ + char **r_aliases; /* alias list */ +@@ -60,8 +62,10 @@ extern struct rpcent *getrpcbynumber(int + extern struct rpcent *getrpcent(void); + #endif + +-extern void setrpcent(int) __THROW; +-extern void endrpcent(void) __THROW; +-__END_DECLS ++extern void setrpcent(int); ++extern void endrpcent(void); ++#ifdef __cplusplus ++} ++#endif + + #endif /* !_RPC_CENT_H */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_svc_auth_h b/package/libtirpc/patches/patch-tirpc_rpc_svc_auth_h new file mode 100644 index 000000000..1abf29cde --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_svc_auth_h @@ -0,0 +1,20 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/svc_auth.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/svc_auth.h 2014-03-22 13:20:52.000000000 +0100 +@@ -65,11 +65,15 @@ typedef struct SVCAUTH { + /* + * Server side authenticator + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern enum auth_stat _authenticate(struct svc_req *, struct rpc_msg *); + extern int svc_auth_reg(int, enum auth_stat (*)(struct svc_req *, + struct rpc_msg *)); + +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* !_RPC_SVC_AUTH_H */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_svc_h b/package/libtirpc/patches/patch-tirpc_rpc_svc_h new file mode 100644 index 000000000..fcaf5b172 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_svc_h @@ -0,0 +1,152 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/svc.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/svc.h 2014-03-22 13:20:52.000000000 +0100 +@@ -40,7 +40,6 @@ + + #ifndef _TIRPC_SVC_H + #define _TIRPC_SVC_H +-#include <sys/cdefs.h> + + /* + * This interface must manage two items concerning remote procedure calling: +@@ -200,11 +199,15 @@ struct svc_req { + * const struct netconfig *nconf; + */ + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern bool_t svc_reg(SVCXPRT *, const rpcprog_t, const rpcvers_t, + void (*)(struct svc_req *, SVCXPRT *), + const struct netconfig *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Service un-registration +@@ -214,9 +217,13 @@ __END_DECLS + * const rpcvers_t vers; + */ + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern void svc_unreg(const rpcprog_t, const rpcvers_t); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Transport registration. +@@ -224,9 +231,13 @@ __END_DECLS + * xprt_register(xprt) + * SVCXPRT *xprt; + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern void xprt_register(SVCXPRT *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Transport un-register +@@ -234,9 +245,13 @@ __END_DECLS + * xprt_unregister(xprt) + * SVCXPRT *xprt; + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern void xprt_unregister(SVCXPRT *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + + /* +@@ -265,7 +280,9 @@ __END_DECLS + * deadlock the caller and server processes! + */ + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern bool_t svc_sendreply(SVCXPRT *, xdrproc_t, void *); + extern void svcerr_decode(SVCXPRT *); + extern void svcerr_weakauth(SVCXPRT *); +@@ -277,7 +294,9 @@ extern void svcerr_systemerr(SVCXPRT *); + extern int rpc_reg(rpcprog_t, rpcvers_t, rpcproc_t, + char *(*)(char *), xdrproc_t, xdrproc_t, + char *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Lowest level dispatching -OR- who owns this process anyway. +@@ -306,11 +325,17 @@ extern int svc_fds; + * a small program implemented by the svc_rpc implementation itself; + * also see clnt.h for protocol numbers. + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern void rpctest_service(void); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern void svc_getreq(int); + extern void svc_getreqset(fd_set *); + extern void svc_getreq_common(int); +@@ -319,7 +344,9 @@ extern void svc_getreq_poll(struct pollf + + extern void svc_run(void); + extern void svc_exit(void); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Socket to use on svcxxx_create call to get default socket +@@ -331,7 +358,9 @@ __END_DECLS + * These are the existing service side transport implementations + */ + +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + /* + * Transport independent svc_create routine. + */ +@@ -427,7 +456,9 @@ int svc_dg_enablecache(SVCXPRT *, const + + int __rpc_get_local_uid(SVCXPRT *_transp, uid_t *_uid); + +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + + /* for backward compatibility */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_svc_soc_h b/package/libtirpc/patches/patch-tirpc_rpc_svc_soc_h new file mode 100644 index 000000000..9f7c22259 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_svc_soc_h @@ -0,0 +1,102 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/svc_soc.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/svc_soc.h 2014-03-22 13:20:52.000000000 +0100 +@@ -38,7 +38,6 @@ + + #ifndef _RPC_SVC_SOC_H + #define _RPC_SVC_SOC_H +-#include <sys/cdefs.h> + + /* #pragma ident "@(#)svc_soc.h 1.11 94/04/25 SMI" */ + /* svc_soc.h 1.8 89/05/01 SMI */ +@@ -64,10 +63,14 @@ + * void (*dispatch)(); + * int protocol; like TCP or UDP, zero means do not register + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern bool_t svc_register(SVCXPRT *, u_long, u_long, + void (*)(struct svc_req *, SVCXPRT *), int); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Service un-registration +@@ -76,44 +79,64 @@ __END_DECLS + * u_long prog; + * u_long vers; + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern void svc_unregister(u_long, u_long); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + + /* + * Memory based rpc for testing and timing. + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern SVCXPRT *svcraw_create(void); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + + /* + * Udp based rpc. + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern SVCXPRT *svcudp_create(int); + extern SVCXPRT *svcudp_bufcreate(int, u_int, u_int); + extern int svcudp_enablecache(SVCXPRT *, u_long); + extern SVCXPRT *svcudp6_create(int); + extern SVCXPRT *svcudp6_bufcreate(int, u_int, u_int); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + + /* + * Tcp based rpc. + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern SVCXPRT *svctcp_create(int, u_int, u_int); + extern SVCXPRT *svctcp6_create(int, u_int, u_int); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Fd based rpc. + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern SVCXPRT *svcfd_create(int, u_int, u_int); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* !_RPC_SVC_SOC_H */ diff --git a/package/libtirpc/patches/patch-tirpc_rpc_xdr_h b/package/libtirpc/patches/patch-tirpc_rpc_xdr_h new file mode 100644 index 000000000..0f43e3702 --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpc_xdr_h @@ -0,0 +1,53 @@ +--- libtirpc-0.2.3.orig/tirpc/rpc/xdr.h 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpc/xdr.h 2014-03-22 13:20:52.000000000 +0100 +@@ -40,7 +40,6 @@ + + #ifndef _TIRPC_XDR_H + #define _TIRPC_XDR_H +-#include <sys/cdefs.h> + #include <stdio.h> + #include <netinet/in.h> + +@@ -287,7 +286,9 @@ struct xdr_discrim { + /* + * These are the "generic" xdr routines. + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + extern bool_t xdr_void(void); + extern bool_t xdr_int(XDR *, int *); + extern bool_t xdr_u_int(XDR *, u_int *); +@@ -322,7 +323,9 @@ extern bool_t xdr_hyper(XDR *, quad_t *) + extern bool_t xdr_u_hyper(XDR *, u_quad_t *); + extern bool_t xdr_longlong_t(XDR *, quad_t *); + extern bool_t xdr_u_longlong_t(XDR *, u_quad_t *); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + /* + * Common opaque bytes objects used by many rpc protocols; +@@ -340,7 +343,9 @@ extern bool_t xdr_netobj(XDR *, struct + * These are the public routines for the various implementations of + * xdr streams. + */ +-__BEGIN_DECLS ++#ifdef __cplusplus ++extern "C" { ++#endif + /* XDR using memory buffers */ + extern void xdrmem_create(XDR *, char *, u_int, enum xdr_op); + +@@ -361,6 +366,8 @@ extern bool_t xdrrec_skiprecord(XDR *); + /* true if no more input */ + extern bool_t xdrrec_eof(XDR *); + extern u_int xdrrec_readbytes(XDR *, caddr_t, u_int); +-__END_DECLS ++#ifdef __cplusplus ++} ++#endif + + #endif /* !_TIRPC_XDR_H */ diff --git a/package/libtirpc/patches/patch-tirpc_rpcsvc_crypt_x b/package/libtirpc/patches/patch-tirpc_rpcsvc_crypt_x new file mode 100644 index 000000000..872800b1d --- /dev/null +++ b/package/libtirpc/patches/patch-tirpc_rpcsvc_crypt_x @@ -0,0 +1,12 @@ +--- libtirpc-0.2.3.orig/tirpc/rpcsvc/crypt.x 2013-02-13 16:13:59.000000000 +0100 ++++ libtirpc-0.2.3/tirpc/rpcsvc/crypt.x 2014-03-22 13:20:52.000000000 +0100 +@@ -31,8 +31,7 @@ + */ + + #ifndef RPC_HDR +-%#include <sys/cdefs.h> +-%__FBSDID("$FreeBSD: src/include/rpcsvc/crypt.x,v 1.5 2003/05/04 02:51:42 obrien Exp $"); ++%%__FBSDID("$FreeBSD: src/include/rpcsvc/crypt.x,v 1.5 2003/05/04 02:51:42 obrien Exp $"); + #endif + + /* diff --git a/package/libtirpc/src/src/queue.h b/package/libtirpc/src/src/queue.h new file mode 100644 index 000000000..daf4553d3 --- /dev/null +++ b/package/libtirpc/src/src/queue.h @@ -0,0 +1,574 @@ +/* + * Copyright (c) 1991, 1993 + * The Regents of the University of California. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * @(#)queue.h 8.5 (Berkeley) 8/20/94 + */ + +#ifndef _SYS_QUEUE_H_ +#define _SYS_QUEUE_H_ + +/* + * This file defines five types of data structures: singly-linked lists, + * lists, simple queues, tail queues, and circular queues. + * + * A singly-linked list is headed by a single forward pointer. The + * elements are singly linked for minimum space and pointer manipulation + * overhead at the expense of O(n) removal for arbitrary elements. New + * elements can be added to the list after an existing element or at the + * head of the list. Elements being removed from the head of the list + * should use the explicit macro for this purpose for optimum + * efficiency. A singly-linked list may only be traversed in the forward + * direction. Singly-linked lists are ideal for applications with large + * datasets and few or no removals or for implementing a LIFO queue. + * + * A list is headed by a single forward pointer (or an array of forward + * pointers for a hash table header). The elements are doubly linked + * so that an arbitrary element can be removed without a need to + * traverse the list. New elements can be added to the list before + * or after an existing element or at the head of the list. A list + * may only be traversed in the forward direction. + * + * A simple queue is headed by a pair of pointers, one the head of the + * list and the other to the tail of the list. The elements are singly + * linked to save space, so elements can only be removed from the + * head of the list. New elements can be added to the list after + * an existing element, at the head of the list, or at the end of the + * list. A simple queue may only be traversed in the forward direction. + * + * A tail queue is headed by a pair of pointers, one to the head of the + * list and the other to the tail of the list. The elements are doubly + * linked so that an arbitrary element can be removed without a need to + * traverse the list. New elements can be added to the list before or + * after an existing element, at the head of the list, or at the end of + * the list. A tail queue may be traversed in either direction. + * + * A circle queue is headed by a pair of pointers, one to the head of the + * list and the other to the tail of the list. The elements are doubly + * linked so that an arbitrary element can be removed without a need to + * traverse the list. New elements can be added to the list before or after + * an existing element, at the head of the list, or at the end of the list. + * A circle queue may be traversed in either direction, but has a more + * complex end of list detection. + * + * For details on the use of these macros, see the queue(3) manual page. + */ + +/* + * List definitions. + */ +#define LIST_HEAD(name, type) \ +struct name { \ + struct type *lh_first; /* first element */ \ +} + +#define LIST_HEAD_INITIALIZER(head) \ + { NULL } + +#define LIST_ENTRY(type) \ +struct { \ + struct type *le_next; /* next element */ \ + struct type **le_prev; /* address of previous next element */ \ +} + +/* + * List functions. + */ +#define LIST_INIT(head) do { \ + (head)->lh_first = NULL; \ +} while (/*CONSTCOND*/0) + +#define LIST_INSERT_AFTER(listelm, elm, field) do { \ + if (((elm)->field.le_next = (listelm)->field.le_next) != NULL) \ + (listelm)->field.le_next->field.le_prev = \ + &(elm)->field.le_next; \ + (listelm)->field.le_next = (elm); \ + (elm)->field.le_prev = &(listelm)->field.le_next; \ +} while (/*CONSTCOND*/0) + +#define LIST_INSERT_BEFORE(listelm, elm, field) do { \ + (elm)->field.le_prev = (listelm)->field.le_prev; \ + (elm)->field.le_next = (listelm); \ + *(listelm)->field.le_prev = (elm); \ + (listelm)->field.le_prev = &(elm)->field.le_next; \ +} while (/*CONSTCOND*/0) + +#define LIST_INSERT_HEAD(head, elm, field) do { \ + if (((elm)->field.le_next = (head)->lh_first) != NULL) \ + (head)->lh_first->field.le_prev = &(elm)->field.le_next;\ + (head)->lh_first = (elm); \ + (elm)->field.le_prev = &(head)->lh_first; \ +} while (/*CONSTCOND*/0) + +#define LIST_REMOVE(elm, field) do { \ + if ((elm)->field.le_next != NULL) \ + (elm)->field.le_next->field.le_prev = \ + (elm)->field.le_prev; \ + *(elm)->field.le_prev = (elm)->field.le_next; \ +} while (/*CONSTCOND*/0) + +#define LIST_FOREACH(var, head, field) \ + for ((var) = ((head)->lh_first); \ + (var); \ + (var) = ((var)->field.le_next)) + +/* + * List access methods. + */ +#define LIST_EMPTY(head) ((head)->lh_first == NULL) +#define LIST_FIRST(head) ((head)->lh_first) +#define LIST_NEXT(elm, field) ((elm)->field.le_next) + + +/* + * Singly-linked List definitions. + */ +#define SLIST_HEAD(name, type) \ +struct name { \ + struct type *slh_first; /* first element */ \ +} + +#define SLIST_HEAD_INITIALIZER(head) \ + { NULL } + +#define SLIST_ENTRY(type) \ +struct { \ + struct type *sle_next; /* next element */ \ +} + +/* + * Singly-linked List functions. + */ +#define SLIST_INIT(head) do { \ + (head)->slh_first = NULL; \ +} while (/*CONSTCOND*/0) + +#define SLIST_INSERT_AFTER(slistelm, elm, field) do { \ + (elm)->field.sle_next = (slistelm)->field.sle_next; \ + (slistelm)->field.sle_next = (elm); \ +} while (/*CONSTCOND*/0) + +#define SLIST_INSERT_HEAD(head, elm, field) do { \ + (elm)->field.sle_next = (head)->slh_first; \ + (head)->slh_first = (elm); \ +} while (/*CONSTCOND*/0) + +#define SLIST_REMOVE_HEAD(head, field) do { \ + (head)->slh_first = (head)->slh_first->field.sle_next; \ +} while (/*CONSTCOND*/0) + +#define SLIST_REMOVE(head, elm, type, field) do { \ + if ((head)->slh_first == (elm)) { \ + SLIST_REMOVE_HEAD((head), field); \ + } \ + else { \ + struct type *curelm = (head)->slh_first; \ + while(curelm->field.sle_next != (elm)) \ + curelm = curelm->field.sle_next; \ + curelm->field.sle_next = \ + curelm->field.sle_next->field.sle_next; \ + } \ +} while (/*CONSTCOND*/0) + +#define SLIST_FOREACH(var, head, field) \ + for((var) = (head)->slh_first; (var); (var) = (var)->field.sle_next) + +/* + * Singly-linked List access methods. + */ +#define SLIST_EMPTY(head) ((head)->slh_first == NULL) +#define SLIST_FIRST(head) ((head)->slh_first) +#define SLIST_NEXT(elm, field) ((elm)->field.sle_next) + + +/* + * Singly-linked Tail queue declarations. + */ +#define STAILQ_HEAD(name, type) \ +struct name { \ + struct type *stqh_first; /* first element */ \ + struct type **stqh_last; /* addr of last next element */ \ +} + +#define STAILQ_HEAD_INITIALIZER(head) \ + { NULL, &(head).stqh_first } + +#define STAILQ_ENTRY(type) \ +struct { \ + struct type *stqe_next; /* next element */ \ +} + +/* + * Singly-linked Tail queue functions. + */ +#define STAILQ_INIT(head) do { \ + (head)->stqh_first = NULL; \ + (head)->stqh_last = &(head)->stqh_first; \ +} while (/*CONSTCOND*/0) + +#define STAILQ_INSERT_HEAD(head, elm, field) do { \ + if (((elm)->field.stqe_next = (head)->stqh_first) == NULL) \ + (head)->stqh_last = &(elm)->field.stqe_next; \ + (head)->stqh_first = (elm); \ +} while (/*CONSTCOND*/0) + +#define STAILQ_INSERT_TAIL(head, elm, field) do { \ + (elm)->field.stqe_next = NULL; \ + *(head)->stqh_last = (elm); \ + (head)->stqh_last = &(elm)->field.stqe_next; \ +} while (/*CONSTCOND*/0) + +#define STAILQ_INSERT_AFTER(head, listelm, elm, field) do { \ + if (((elm)->field.stqe_next = (listelm)->field.stqe_next) == NULL)\ + (head)->stqh_last = &(elm)->field.stqe_next; \ + (listelm)->field.stqe_next = (elm); \ +} while (/*CONSTCOND*/0) + +#define STAILQ_REMOVE_HEAD(head, field) do { \ + if (((head)->stqh_first = (head)->stqh_first->field.stqe_next) == NULL) \ + (head)->stqh_last = &(head)->stqh_first; \ +} while (/*CONSTCOND*/0) + +#define STAILQ_REMOVE(head, elm, type, field) do { \ + if ((head)->stqh_first == (elm)) { \ + STAILQ_REMOVE_HEAD((head), field); \ + } else { \ + struct type *curelm = (head)->stqh_first; \ + while (curelm->field.stqe_next != (elm)) \ + curelm = curelm->field.stqe_next; \ + if ((curelm->field.stqe_next = \ + curelm->field.stqe_next->field.stqe_next) == NULL) \ + (head)->stqh_last = &(curelm)->field.stqe_next; \ + } \ +} while (/*CONSTCOND*/0) + +#define STAILQ_FOREACH(var, head, field) \ + for ((var) = ((head)->stqh_first); \ + (var); \ + (var) = ((var)->field.stqe_next)) + +#define STAILQ_CONCAT(head1, head2) do { \ + if (!STAILQ_EMPTY((head2))) { \ + *(head1)->stqh_last = (head2)->stqh_first; \ + (head1)->stqh_last = (head2)->stqh_last; \ + STAILQ_INIT((head2)); \ + } \ +} while (/*CONSTCOND*/0) + +/* + * Singly-linked Tail queue access methods. + */ +#define STAILQ_EMPTY(head) ((head)->stqh_first == NULL) +#define STAILQ_FIRST(head) ((head)->stqh_first) +#define STAILQ_NEXT(elm, field) ((elm)->field.stqe_next) + + +/* + * Simple queue definitions. + */ +#define SIMPLEQ_HEAD(name, type) \ +struct name { \ + struct type *sqh_first; /* first element */ \ + struct type **sqh_last; /* addr of last next element */ \ +} + +#define SIMPLEQ_HEAD_INITIALIZER(head) \ + { NULL, &(head).sqh_first } + +#define SIMPLEQ_ENTRY(type) \ +struct { \ + struct type *sqe_next; /* next element */ \ +} + +/* + * Simple queue functions. + */ +#define SIMPLEQ_INIT(head) do { \ + (head)->sqh_first = NULL; \ + (head)->sqh_last = &(head)->sqh_first; \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_INSERT_HEAD(head, elm, field) do { \ + if (((elm)->field.sqe_next = (head)->sqh_first) == NULL) \ + (head)->sqh_last = &(elm)->field.sqe_next; \ + (head)->sqh_first = (elm); \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_INSERT_TAIL(head, elm, field) do { \ + (elm)->field.sqe_next = NULL; \ + *(head)->sqh_last = (elm); \ + (head)->sqh_last = &(elm)->field.sqe_next; \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_INSERT_AFTER(head, listelm, elm, field) do { \ + if (((elm)->field.sqe_next = (listelm)->field.sqe_next) == NULL)\ + (head)->sqh_last = &(elm)->field.sqe_next; \ + (listelm)->field.sqe_next = (elm); \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_REMOVE_HEAD(head, field) do { \ + if (((head)->sqh_first = (head)->sqh_first->field.sqe_next) == NULL) \ + (head)->sqh_last = &(head)->sqh_first; \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_REMOVE(head, elm, type, field) do { \ + if ((head)->sqh_first == (elm)) { \ + SIMPLEQ_REMOVE_HEAD((head), field); \ + } else { \ + struct type *curelm = (head)->sqh_first; \ + while (curelm->field.sqe_next != (elm)) \ + curelm = curelm->field.sqe_next; \ + if ((curelm->field.sqe_next = \ + curelm->field.sqe_next->field.sqe_next) == NULL) \ + (head)->sqh_last = &(curelm)->field.sqe_next; \ + } \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_FOREACH(var, head, field) \ + for ((var) = ((head)->sqh_first); \ + (var); \ + (var) = ((var)->field.sqe_next)) + +/* + * Simple queue access methods. + */ +#define SIMPLEQ_EMPTY(head) ((head)->sqh_first == NULL) +#define SIMPLEQ_FIRST(head) ((head)->sqh_first) +#define SIMPLEQ_NEXT(elm, field) ((elm)->field.sqe_next) + + +/* + * Tail queue definitions. + */ +#define _TAILQ_HEAD(name, type, qual) \ +struct name { \ + qual type *tqh_first; /* first element */ \ + qual type *qual *tqh_last; /* addr of last next element */ \ +} +#define TAILQ_HEAD(name, type) _TAILQ_HEAD(name, struct type,) + +#define TAILQ_HEAD_INITIALIZER(head) \ + { NULL, &(head).tqh_first } + +#define _TAILQ_ENTRY(type, qual) \ +struct { \ + qual type *tqe_next; /* next element */ \ + qual type *qual *tqe_prev; /* address of previous next element */\ +} +#define TAILQ_ENTRY(type) _TAILQ_ENTRY(struct type,) + +/* + * Tail queue functions. + */ +#define TAILQ_INIT(head) do { \ + (head)->tqh_first = NULL; \ + (head)->tqh_last = &(head)->tqh_first; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_INSERT_HEAD(head, elm, field) do { \ + if (((elm)->field.tqe_next = (head)->tqh_first) != NULL) \ + (head)->tqh_first->field.tqe_prev = \ + &(elm)->field.tqe_next; \ + else \ + (head)->tqh_last = &(elm)->field.tqe_next; \ + (head)->tqh_first = (elm); \ + (elm)->field.tqe_prev = &(head)->tqh_first; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_INSERT_TAIL(head, elm, field) do { \ + (elm)->field.tqe_next = NULL; \ + (elm)->field.tqe_prev = (head)->tqh_last; \ + *(head)->tqh_last = (elm); \ + (head)->tqh_last = &(elm)->field.tqe_next; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_INSERT_AFTER(head, listelm, elm, field) do { \ + if (((elm)->field.tqe_next = (listelm)->field.tqe_next) != NULL)\ + (elm)->field.tqe_next->field.tqe_prev = \ + &(elm)->field.tqe_next; \ + else \ + (head)->tqh_last = &(elm)->field.tqe_next; \ + (listelm)->field.tqe_next = (elm); \ + (elm)->field.tqe_prev = &(listelm)->field.tqe_next; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_INSERT_BEFORE(listelm, elm, field) do { \ + (elm)->field.tqe_prev = (listelm)->field.tqe_prev; \ + (elm)->field.tqe_next = (listelm); \ + *(listelm)->field.tqe_prev = (elm); \ + (listelm)->field.tqe_prev = &(elm)->field.tqe_next; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_REMOVE(head, elm, field) do { \ + if (((elm)->field.tqe_next) != NULL) \ + (elm)->field.tqe_next->field.tqe_prev = \ + (elm)->field.tqe_prev; \ + else \ + (head)->tqh_last = (elm)->field.tqe_prev; \ + *(elm)->field.tqe_prev = (elm)->field.tqe_next; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_FOREACH(var, head, field) \ + for ((var) = ((head)->tqh_first); \ + (var); \ + (var) = ((var)->field.tqe_next)) + +#define TAILQ_FOREACH_REVERSE(var, head, headname, field) \ + for ((var) = (*(((struct headname *)((head)->tqh_last))->tqh_last)); \ + (var); \ + (var) = (*(((struct headname *)((var)->field.tqe_prev))->tqh_last))) + +#define TAILQ_CONCAT(head1, head2, field) do { \ + if (!TAILQ_EMPTY(head2)) { \ + *(head1)->tqh_last = (head2)->tqh_first; \ + (head2)->tqh_first->field.tqe_prev = (head1)->tqh_last; \ + (head1)->tqh_last = (head2)->tqh_last; \ + TAILQ_INIT((head2)); \ + } \ +} while (/*CONSTCOND*/0) + +/* + * Tail queue access methods. + */ +#define TAILQ_EMPTY(head) ((head)->tqh_first == NULL) +#define TAILQ_FIRST(head) ((head)->tqh_first) +#define TAILQ_NEXT(elm, field) ((elm)->field.tqe_next) + +#define TAILQ_LAST(head, headname) \ + (*(((struct headname *)((head)->tqh_last))->tqh_last)) +#define TAILQ_PREV(elm, headname, field) \ + (*(((struct headname *)((elm)->field.tqe_prev))->tqh_last)) + + +/* + * Circular queue definitions. + */ +#define CIRCLEQ_HEAD(name, type) \ +struct name { \ + struct type *cqh_first; /* first element */ \ + struct type *cqh_last; /* last element */ \ +} + +#define CIRCLEQ_HEAD_INITIALIZER(head) \ + { (void *)&head, (void *)&head } + +#define CIRCLEQ_ENTRY(type) \ +struct { \ + struct type *cqe_next; /* next element */ \ + struct type *cqe_prev; /* previous element */ \ +} + +/* + * Circular queue functions. + */ +#define CIRCLEQ_INIT(head) do { \ + (head)->cqh_first = (void *)(head); \ + (head)->cqh_last = (void *)(head); \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_INSERT_AFTER(head, listelm, elm, field) do { \ + (elm)->field.cqe_next = (listelm)->field.cqe_next; \ + (elm)->field.cqe_prev = (listelm); \ + if ((listelm)->field.cqe_next == (void *)(head)) \ + (head)->cqh_last = (elm); \ + else \ + (listelm)->field.cqe_next->field.cqe_prev = (elm); \ + (listelm)->field.cqe_next = (elm); \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_INSERT_BEFORE(head, listelm, elm, field) do { \ + (elm)->field.cqe_next = (listelm); \ + (elm)->field.cqe_prev = (listelm)->field.cqe_prev; \ + if ((listelm)->field.cqe_prev == (void *)(head)) \ + (head)->cqh_first = (elm); \ + else \ + (listelm)->field.cqe_prev->field.cqe_next = (elm); \ + (listelm)->field.cqe_prev = (elm); \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_INSERT_HEAD(head, elm, field) do { \ + (elm)->field.cqe_next = (head)->cqh_first; \ + (elm)->field.cqe_prev = (void *)(head); \ + if ((head)->cqh_last == (void *)(head)) \ + (head)->cqh_last = (elm); \ + else \ + (head)->cqh_first->field.cqe_prev = (elm); \ + (head)->cqh_first = (elm); \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_INSERT_TAIL(head, elm, field) do { \ + (elm)->field.cqe_next = (void *)(head); \ + (elm)->field.cqe_prev = (head)->cqh_last; \ + if ((head)->cqh_first == (void *)(head)) \ + (head)->cqh_first = (elm); \ + else \ + (head)->cqh_last->field.cqe_next = (elm); \ + (head)->cqh_last = (elm); \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_REMOVE(head, elm, field) do { \ + if ((elm)->field.cqe_next == (void *)(head)) \ + (head)->cqh_last = (elm)->field.cqe_prev; \ + else \ + (elm)->field.cqe_next->field.cqe_prev = \ + (elm)->field.cqe_prev; \ + if ((elm)->field.cqe_prev == (void *)(head)) \ + (head)->cqh_first = (elm)->field.cqe_next; \ + else \ + (elm)->field.cqe_prev->field.cqe_next = \ + (elm)->field.cqe_next; \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_FOREACH(var, head, field) \ + for ((var) = ((head)->cqh_first); \ + (var) != (const void *)(head); \ + (var) = ((var)->field.cqe_next)) + +#define CIRCLEQ_FOREACH_REVERSE(var, head, field) \ + for ((var) = ((head)->cqh_last); \ + (var) != (const void *)(head); \ + (var) = ((var)->field.cqe_prev)) + +/* + * Circular queue access methods. + */ +#define CIRCLEQ_EMPTY(head) ((head)->cqh_first == (void *)(head)) +#define CIRCLEQ_FIRST(head) ((head)->cqh_first) +#define CIRCLEQ_LAST(head) ((head)->cqh_last) +#define CIRCLEQ_NEXT(elm, field) ((elm)->field.cqe_next) +#define CIRCLEQ_PREV(elm, field) ((elm)->field.cqe_prev) + +#define CIRCLEQ_LOOP_NEXT(head, elm, field) \ + (((elm)->field.cqe_next == (void *)(head)) \ + ? ((head)->cqh_first) \ + : (elm->field.cqe_next)) +#define CIRCLEQ_LOOP_PREV(head, elm, field) \ + (((elm)->field.cqe_prev == (void *)(head)) \ + ? ((head)->cqh_last) \ + : (elm->field.cqe_prev)) + +#endif /* sys/queue.h */ diff --git a/package/libxcb/Makefile b/package/libxcb/Makefile index 713a6c3a3..c126b66ac 100644 --- a/package/libxcb/Makefile +++ b/package/libxcb/Makefile @@ -4,9 +4,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:= libxcb -PKG_VERSION:= 1.9.1 +PKG_VERSION:= 1.10 PKG_RELEASE:= 1 -PKG_MD5SUM:= 324c76024a73dba8a902638696ba87de +PKG_MD5SUM:= a484793fbfb974b09d54fa1ebf44b2e4 PKG_DESCR:= X11 keyboard library PKG_SECTION:= x11/libs PKG_BUILDDEP:= libXau-host libpthread-stubs-host xcb-proto-host diff --git a/package/libxml2/Makefile b/package/libxml2/Makefile index 76df60864..8c5ee7689 100644 --- a/package/libxml2/Makefile +++ b/package/libxml2/Makefile @@ -10,7 +10,8 @@ PKG_MD5SUM:= 9c0cfef285d5c4a5c80d00904ddab380 PKG_DESCR:= XML C parser and toolkit PKG_SECTION:= libs PKG_DEPENDS:= zlib -PKG_BUILDDEP:= autotool gettext-tiny bzip2-host python2-host libxml2-host zlib +PKG_BUILDDEP:= libxml2-host zlib +HOST_BUILDDEP:= python2-host PKG_URL:= http://www.xmlsoft.org/ PKG_SITES:= http://xmlsoft.org/sources/ PKG_OPTS:= dev diff --git a/package/libxshmfence/Makefile b/package/libxshmfence/Makefile new file mode 100644 index 000000000..d81b9c679 --- /dev/null +++ b/package/libxshmfence/Makefile @@ -0,0 +1,23 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(TOPDIR)/rules.mk + +PKG_NAME:= libxshmfence +PKG_VERSION:= 1.1 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 323bb06c70765a2395df1d9c7ec3d14a +PKG_DESCR:= X11 xshmfence library +PKG_SECTION:= x11/libs +PKG_SITES:= ${MASTER_SITE_XORG} +PKG_OPTS:= dev + +include $(TOPDIR)/mk/package.mk + +$(eval $(call PKG_template,LIBXSHMFENCE,libxshmfence,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS})) + +libxshmfence-install: + ${INSTALL_DIR} ${IDIR_LIBXSHMFENCE}/usr/lib + ${CP} ${WRKINST}/usr/lib/libxshmfence.so* ${IDIR_LIBXSHMFENCE}/usr/lib + +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/logrotate/Makefile b/package/logrotate/Makefile index 32ced2e60..375746034 100644 --- a/package/logrotate/Makefile +++ b/package/logrotate/Makefile @@ -4,9 +4,9 @@ include ${TOPDIR}/rules.mk PKG_NAME:= logrotate -PKG_VERSION:= 3.7.8 +PKG_VERSION:= 3.8.7 PKG_RELEASE:= 1 -PKG_MD5SUM:= b3589bea6d8d5afc8a84134fddaae973 +PKG_MD5SUM:= 99e08503ef24c3e2e3ff74cc5f3be213 PKG_DESCR:= logfile rotation utility PKG_SECTION:= misc PKG_DEPENDS:= libpopt diff --git a/package/logrotate/patches/patch-Makefile b/package/logrotate/patches/patch-Makefile index 755e612b1..c2b81fbbc 100644 --- a/package/logrotate/patches/patch-Makefile +++ b/package/logrotate/patches/patch-Makefile @@ -1,60 +1,33 @@ ---- logrotate-3.7.8.orig/Makefile 2008-05-19 12:25:54.000000000 +0200 -+++ logrotate-3.7.8/Makefile 2011-01-15 23:45:59.000000000 +0100 -@@ -1,10 +1,10 @@ +--- logrotate-3.8.7.orig/Makefile 2013-06-10 13:29:16.000000000 +0200 ++++ logrotate-3.8.7/Makefile 2014-03-23 15:16:09.000000000 +0100 +@@ -1,11 +1,11 @@ VERSION = $(shell awk '/Version:/ { print $$2 }' logrotate.spec) -OS_NAME = $(shell uname -s) +OS_NAME = Linux LFS = $(shell echo `getconf LFS_CFLAGS 2>/dev/null`) --CFLAGS = -Wall -D_GNU_SOURCE -D$(OS_NAME) -DVERSION=\"$(VERSION)\" $(RPM_OPT_FLAGS) $(LFS) -+CFLAGS ?= -Wall -D_GNU_SOURCE -D$(OS_NAME) -DVERSION=\"$(VERSION)\" $(RPM_OPT_FLAGS) $(LFS) + CFLAGS = -Wall -D_GNU_SOURCE -D$(OS_NAME) -DVERSION=\"$(VERSION)\" $(RPM_OPT_FLAGS) $(LFS) PROG = logrotate MAN = logrotate.8 + MAN5 = logrotate.conf.5 -LOADLIBES = -lpopt +LIBS = -lpopt SVNURL= svn+ssh://svn.fedorahosted.org/svn/logrotate SVNPUBURL = http://svn.fedorahosted.org/svn/logrotate SVNTAG = r$(subst .,-,$(VERSION)) -@@ -68,10 +68,7 @@ MANDIR = $(BASEDIR)/man - OBJS = logrotate.o log.o config.o basenames.o - SOURCES = $(subst .o,.c,$(OBJS) $(LIBOBJS)) +@@ -64,7 +64,7 @@ endif + # Red Hat Linux + ifeq ($(OS_NAME),Linux) + INSTALL = install +- BASEDIR = /usr ++ BASEDIR = $(DESTDIR)/usr + endif --ifeq ($(RPM_OPT_FLAGS),) --CFLAGS += -g --LDFLAGS = -g --endif -+LDFLAGS ?= - - ifeq (.depend,$(wildcard .depend)) - TARGET=$(PROG) -@@ -84,6 +81,7 @@ RCSVERSION = $(subst .,-,$(VERSION)) - all: $(TARGET) + # FreeBSD +@@ -117,6 +117,7 @@ RCSVERSION = $(subst .,-,$(VERSION)) + all: $(TARGET) pretest $(PROG): $(OBJS) + $(CC) $(LDFLAGS) -o $(PROG) $^ $(LIBS) clean: rm -f $(OBJS) $(PROG) core* .depend -@@ -96,16 +94,16 @@ test: $(TARGET) - (cd test; ./test) - - install: -- [ -d $(PREFIX)/$(BINDIR) ] || mkdir -p $(PREFIX)/$(BINDIR) -- [ -d $(PREFIX)/$(MANDIR) ] || mkdir -p $(PREFIX)/$(MANDIR) -- [ -d $(PREFIX)/$(MANDIR)/man8 ] || mkdir -p $(PREFIX)/$(MANDIR)/man8 -+ [ -d $(DESTDIR)/$(BINDIR) ] || mkdir -p $(DESTDIR)/$(BINDIR) -+ [ -d $(DESTDIR)/$(MANDIR) ] || mkdir -p $(DESTDIR)/$(MANDIR) -+ [ -d $(DESTDIR)/$(MANDIR)/man8 ] || mkdir -p $(DESTDIR)/$(MANDIR)/man8 - - if [ "$(OS_NAME)" = HP-UX ]; then \ -- $(INSTALL) $(PROG) $(PREFIX)/$(BINDIR) 0755 bin bin; \ -- $(INSTALL) $(MAN) $(PREFIX)/$(MANDIR)/man`echo $(MAN) | sed "s/.*\.//"` 0644 bin bin; \ -+ $(INSTALL) $(PROG) $(DESTDIR)/$(BINDIR) 0755 bin bin; \ -+ $(INSTALL) $(MAN) $(DESTDIR)/$(MANDIR)/man`echo $(MAN) | sed "s/.*\.//"` 0644 bin bin; \ - else \ -- $(INSTALL) -m 755 $(PROG) $(PREFIX)/$(BINDIR); \ -- $(INSTALL) -m 644 $(MAN) $(PREFIX)/$(MANDIR)/man`echo $(MAN) | sed "s/.*\.//"`/$(MAN); \ -+ $(INSTALL) -m 755 $(PROG) $(DESTDIR)/$(BINDIR); \ -+ $(INSTALL) -m 644 $(MAN) $(DESTDIR)/$(MANDIR)/man`echo $(MAN) | sed "s/.*\.//"`/$(MAN); \ - fi - - co: diff --git a/package/logrotate/patches/patch-config_c b/package/logrotate/patches/patch-config_c new file mode 100644 index 000000000..ea58cd4ce --- /dev/null +++ b/package/logrotate/patches/patch-config_c @@ -0,0 +1,8 @@ +--- logrotate-3.8.7.orig/config.c 2013-07-31 13:34:31.000000000 +0200 ++++ logrotate-3.8.7/config.c 2014-03-23 15:11:39.000000000 +0100 +@@ -1,4 +1,4 @@ +-#include <sys/queue.h> ++#include "queue.h" + /* Alloca is defined in stdlib.h in NetBSD */ + #ifndef __NetBSD__ + #include <alloca.h> diff --git a/package/logrotate/patches/patch-logrotate_c b/package/logrotate/patches/patch-logrotate_c new file mode 100644 index 000000000..d2ee8dd83 --- /dev/null +++ b/package/logrotate/patches/patch-logrotate_c @@ -0,0 +1,8 @@ +--- logrotate-3.8.7.orig/logrotate.c 2013-10-10 10:43:36.000000000 +0200 ++++ logrotate-3.8.7/logrotate.c 2014-03-23 15:10:21.000000000 +0100 +@@ -1,4 +1,4 @@ +-#include <sys/queue.h> ++#include "queue.h" + /* alloca() is defined in stdlib.h in NetBSD */ + #ifndef __NetBSD__ + #include <alloca.h> diff --git a/package/logrotate/patches/patch-logrotate_h b/package/logrotate/patches/patch-logrotate_h new file mode 100644 index 000000000..7bc3c06ef --- /dev/null +++ b/package/logrotate/patches/patch-logrotate_h @@ -0,0 +1,11 @@ +--- logrotate-3.8.7.orig/logrotate.h 2013-06-10 13:29:16.000000000 +0200 ++++ logrotate-3.8.7/logrotate.h 2014-03-23 15:11:06.000000000 +0100 +@@ -2,7 +2,7 @@ + #define H_LOGROTATE + + #include <sys/types.h> +-#include <sys/queue.h> ++#include "queue.h" + #include <glob.h> + + #include "config.h" diff --git a/package/logrotate/src/queue.h b/package/logrotate/src/queue.h new file mode 100644 index 000000000..daf4553d3 --- /dev/null +++ b/package/logrotate/src/queue.h @@ -0,0 +1,574 @@ +/* + * Copyright (c) 1991, 1993 + * The Regents of the University of California. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * @(#)queue.h 8.5 (Berkeley) 8/20/94 + */ + +#ifndef _SYS_QUEUE_H_ +#define _SYS_QUEUE_H_ + +/* + * This file defines five types of data structures: singly-linked lists, + * lists, simple queues, tail queues, and circular queues. + * + * A singly-linked list is headed by a single forward pointer. The + * elements are singly linked for minimum space and pointer manipulation + * overhead at the expense of O(n) removal for arbitrary elements. New + * elements can be added to the list after an existing element or at the + * head of the list. Elements being removed from the head of the list + * should use the explicit macro for this purpose for optimum + * efficiency. A singly-linked list may only be traversed in the forward + * direction. Singly-linked lists are ideal for applications with large + * datasets and few or no removals or for implementing a LIFO queue. + * + * A list is headed by a single forward pointer (or an array of forward + * pointers for a hash table header). The elements are doubly linked + * so that an arbitrary element can be removed without a need to + * traverse the list. New elements can be added to the list before + * or after an existing element or at the head of the list. A list + * may only be traversed in the forward direction. + * + * A simple queue is headed by a pair of pointers, one the head of the + * list and the other to the tail of the list. The elements are singly + * linked to save space, so elements can only be removed from the + * head of the list. New elements can be added to the list after + * an existing element, at the head of the list, or at the end of the + * list. A simple queue may only be traversed in the forward direction. + * + * A tail queue is headed by a pair of pointers, one to the head of the + * list and the other to the tail of the list. The elements are doubly + * linked so that an arbitrary element can be removed without a need to + * traverse the list. New elements can be added to the list before or + * after an existing element, at the head of the list, or at the end of + * the list. A tail queue may be traversed in either direction. + * + * A circle queue is headed by a pair of pointers, one to the head of the + * list and the other to the tail of the list. The elements are doubly + * linked so that an arbitrary element can be removed without a need to + * traverse the list. New elements can be added to the list before or after + * an existing element, at the head of the list, or at the end of the list. + * A circle queue may be traversed in either direction, but has a more + * complex end of list detection. + * + * For details on the use of these macros, see the queue(3) manual page. + */ + +/* + * List definitions. + */ +#define LIST_HEAD(name, type) \ +struct name { \ + struct type *lh_first; /* first element */ \ +} + +#define LIST_HEAD_INITIALIZER(head) \ + { NULL } + +#define LIST_ENTRY(type) \ +struct { \ + struct type *le_next; /* next element */ \ + struct type **le_prev; /* address of previous next element */ \ +} + +/* + * List functions. + */ +#define LIST_INIT(head) do { \ + (head)->lh_first = NULL; \ +} while (/*CONSTCOND*/0) + +#define LIST_INSERT_AFTER(listelm, elm, field) do { \ + if (((elm)->field.le_next = (listelm)->field.le_next) != NULL) \ + (listelm)->field.le_next->field.le_prev = \ + &(elm)->field.le_next; \ + (listelm)->field.le_next = (elm); \ + (elm)->field.le_prev = &(listelm)->field.le_next; \ +} while (/*CONSTCOND*/0) + +#define LIST_INSERT_BEFORE(listelm, elm, field) do { \ + (elm)->field.le_prev = (listelm)->field.le_prev; \ + (elm)->field.le_next = (listelm); \ + *(listelm)->field.le_prev = (elm); \ + (listelm)->field.le_prev = &(elm)->field.le_next; \ +} while (/*CONSTCOND*/0) + +#define LIST_INSERT_HEAD(head, elm, field) do { \ + if (((elm)->field.le_next = (head)->lh_first) != NULL) \ + (head)->lh_first->field.le_prev = &(elm)->field.le_next;\ + (head)->lh_first = (elm); \ + (elm)->field.le_prev = &(head)->lh_first; \ +} while (/*CONSTCOND*/0) + +#define LIST_REMOVE(elm, field) do { \ + if ((elm)->field.le_next != NULL) \ + (elm)->field.le_next->field.le_prev = \ + (elm)->field.le_prev; \ + *(elm)->field.le_prev = (elm)->field.le_next; \ +} while (/*CONSTCOND*/0) + +#define LIST_FOREACH(var, head, field) \ + for ((var) = ((head)->lh_first); \ + (var); \ + (var) = ((var)->field.le_next)) + +/* + * List access methods. + */ +#define LIST_EMPTY(head) ((head)->lh_first == NULL) +#define LIST_FIRST(head) ((head)->lh_first) +#define LIST_NEXT(elm, field) ((elm)->field.le_next) + + +/* + * Singly-linked List definitions. + */ +#define SLIST_HEAD(name, type) \ +struct name { \ + struct type *slh_first; /* first element */ \ +} + +#define SLIST_HEAD_INITIALIZER(head) \ + { NULL } + +#define SLIST_ENTRY(type) \ +struct { \ + struct type *sle_next; /* next element */ \ +} + +/* + * Singly-linked List functions. + */ +#define SLIST_INIT(head) do { \ + (head)->slh_first = NULL; \ +} while (/*CONSTCOND*/0) + +#define SLIST_INSERT_AFTER(slistelm, elm, field) do { \ + (elm)->field.sle_next = (slistelm)->field.sle_next; \ + (slistelm)->field.sle_next = (elm); \ +} while (/*CONSTCOND*/0) + +#define SLIST_INSERT_HEAD(head, elm, field) do { \ + (elm)->field.sle_next = (head)->slh_first; \ + (head)->slh_first = (elm); \ +} while (/*CONSTCOND*/0) + +#define SLIST_REMOVE_HEAD(head, field) do { \ + (head)->slh_first = (head)->slh_first->field.sle_next; \ +} while (/*CONSTCOND*/0) + +#define SLIST_REMOVE(head, elm, type, field) do { \ + if ((head)->slh_first == (elm)) { \ + SLIST_REMOVE_HEAD((head), field); \ + } \ + else { \ + struct type *curelm = (head)->slh_first; \ + while(curelm->field.sle_next != (elm)) \ + curelm = curelm->field.sle_next; \ + curelm->field.sle_next = \ + curelm->field.sle_next->field.sle_next; \ + } \ +} while (/*CONSTCOND*/0) + +#define SLIST_FOREACH(var, head, field) \ + for((var) = (head)->slh_first; (var); (var) = (var)->field.sle_next) + +/* + * Singly-linked List access methods. + */ +#define SLIST_EMPTY(head) ((head)->slh_first == NULL) +#define SLIST_FIRST(head) ((head)->slh_first) +#define SLIST_NEXT(elm, field) ((elm)->field.sle_next) + + +/* + * Singly-linked Tail queue declarations. + */ +#define STAILQ_HEAD(name, type) \ +struct name { \ + struct type *stqh_first; /* first element */ \ + struct type **stqh_last; /* addr of last next element */ \ +} + +#define STAILQ_HEAD_INITIALIZER(head) \ + { NULL, &(head).stqh_first } + +#define STAILQ_ENTRY(type) \ +struct { \ + struct type *stqe_next; /* next element */ \ +} + +/* + * Singly-linked Tail queue functions. + */ +#define STAILQ_INIT(head) do { \ + (head)->stqh_first = NULL; \ + (head)->stqh_last = &(head)->stqh_first; \ +} while (/*CONSTCOND*/0) + +#define STAILQ_INSERT_HEAD(head, elm, field) do { \ + if (((elm)->field.stqe_next = (head)->stqh_first) == NULL) \ + (head)->stqh_last = &(elm)->field.stqe_next; \ + (head)->stqh_first = (elm); \ +} while (/*CONSTCOND*/0) + +#define STAILQ_INSERT_TAIL(head, elm, field) do { \ + (elm)->field.stqe_next = NULL; \ + *(head)->stqh_last = (elm); \ + (head)->stqh_last = &(elm)->field.stqe_next; \ +} while (/*CONSTCOND*/0) + +#define STAILQ_INSERT_AFTER(head, listelm, elm, field) do { \ + if (((elm)->field.stqe_next = (listelm)->field.stqe_next) == NULL)\ + (head)->stqh_last = &(elm)->field.stqe_next; \ + (listelm)->field.stqe_next = (elm); \ +} while (/*CONSTCOND*/0) + +#define STAILQ_REMOVE_HEAD(head, field) do { \ + if (((head)->stqh_first = (head)->stqh_first->field.stqe_next) == NULL) \ + (head)->stqh_last = &(head)->stqh_first; \ +} while (/*CONSTCOND*/0) + +#define STAILQ_REMOVE(head, elm, type, field) do { \ + if ((head)->stqh_first == (elm)) { \ + STAILQ_REMOVE_HEAD((head), field); \ + } else { \ + struct type *curelm = (head)->stqh_first; \ + while (curelm->field.stqe_next != (elm)) \ + curelm = curelm->field.stqe_next; \ + if ((curelm->field.stqe_next = \ + curelm->field.stqe_next->field.stqe_next) == NULL) \ + (head)->stqh_last = &(curelm)->field.stqe_next; \ + } \ +} while (/*CONSTCOND*/0) + +#define STAILQ_FOREACH(var, head, field) \ + for ((var) = ((head)->stqh_first); \ + (var); \ + (var) = ((var)->field.stqe_next)) + +#define STAILQ_CONCAT(head1, head2) do { \ + if (!STAILQ_EMPTY((head2))) { \ + *(head1)->stqh_last = (head2)->stqh_first; \ + (head1)->stqh_last = (head2)->stqh_last; \ + STAILQ_INIT((head2)); \ + } \ +} while (/*CONSTCOND*/0) + +/* + * Singly-linked Tail queue access methods. + */ +#define STAILQ_EMPTY(head) ((head)->stqh_first == NULL) +#define STAILQ_FIRST(head) ((head)->stqh_first) +#define STAILQ_NEXT(elm, field) ((elm)->field.stqe_next) + + +/* + * Simple queue definitions. + */ +#define SIMPLEQ_HEAD(name, type) \ +struct name { \ + struct type *sqh_first; /* first element */ \ + struct type **sqh_last; /* addr of last next element */ \ +} + +#define SIMPLEQ_HEAD_INITIALIZER(head) \ + { NULL, &(head).sqh_first } + +#define SIMPLEQ_ENTRY(type) \ +struct { \ + struct type *sqe_next; /* next element */ \ +} + +/* + * Simple queue functions. + */ +#define SIMPLEQ_INIT(head) do { \ + (head)->sqh_first = NULL; \ + (head)->sqh_last = &(head)->sqh_first; \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_INSERT_HEAD(head, elm, field) do { \ + if (((elm)->field.sqe_next = (head)->sqh_first) == NULL) \ + (head)->sqh_last = &(elm)->field.sqe_next; \ + (head)->sqh_first = (elm); \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_INSERT_TAIL(head, elm, field) do { \ + (elm)->field.sqe_next = NULL; \ + *(head)->sqh_last = (elm); \ + (head)->sqh_last = &(elm)->field.sqe_next; \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_INSERT_AFTER(head, listelm, elm, field) do { \ + if (((elm)->field.sqe_next = (listelm)->field.sqe_next) == NULL)\ + (head)->sqh_last = &(elm)->field.sqe_next; \ + (listelm)->field.sqe_next = (elm); \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_REMOVE_HEAD(head, field) do { \ + if (((head)->sqh_first = (head)->sqh_first->field.sqe_next) == NULL) \ + (head)->sqh_last = &(head)->sqh_first; \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_REMOVE(head, elm, type, field) do { \ + if ((head)->sqh_first == (elm)) { \ + SIMPLEQ_REMOVE_HEAD((head), field); \ + } else { \ + struct type *curelm = (head)->sqh_first; \ + while (curelm->field.sqe_next != (elm)) \ + curelm = curelm->field.sqe_next; \ + if ((curelm->field.sqe_next = \ + curelm->field.sqe_next->field.sqe_next) == NULL) \ + (head)->sqh_last = &(curelm)->field.sqe_next; \ + } \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_FOREACH(var, head, field) \ + for ((var) = ((head)->sqh_first); \ + (var); \ + (var) = ((var)->field.sqe_next)) + +/* + * Simple queue access methods. + */ +#define SIMPLEQ_EMPTY(head) ((head)->sqh_first == NULL) +#define SIMPLEQ_FIRST(head) ((head)->sqh_first) +#define SIMPLEQ_NEXT(elm, field) ((elm)->field.sqe_next) + + +/* + * Tail queue definitions. + */ +#define _TAILQ_HEAD(name, type, qual) \ +struct name { \ + qual type *tqh_first; /* first element */ \ + qual type *qual *tqh_last; /* addr of last next element */ \ +} +#define TAILQ_HEAD(name, type) _TAILQ_HEAD(name, struct type,) + +#define TAILQ_HEAD_INITIALIZER(head) \ + { NULL, &(head).tqh_first } + +#define _TAILQ_ENTRY(type, qual) \ +struct { \ + qual type *tqe_next; /* next element */ \ + qual type *qual *tqe_prev; /* address of previous next element */\ +} +#define TAILQ_ENTRY(type) _TAILQ_ENTRY(struct type,) + +/* + * Tail queue functions. + */ +#define TAILQ_INIT(head) do { \ + (head)->tqh_first = NULL; \ + (head)->tqh_last = &(head)->tqh_first; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_INSERT_HEAD(head, elm, field) do { \ + if (((elm)->field.tqe_next = (head)->tqh_first) != NULL) \ + (head)->tqh_first->field.tqe_prev = \ + &(elm)->field.tqe_next; \ + else \ + (head)->tqh_last = &(elm)->field.tqe_next; \ + (head)->tqh_first = (elm); \ + (elm)->field.tqe_prev = &(head)->tqh_first; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_INSERT_TAIL(head, elm, field) do { \ + (elm)->field.tqe_next = NULL; \ + (elm)->field.tqe_prev = (head)->tqh_last; \ + *(head)->tqh_last = (elm); \ + (head)->tqh_last = &(elm)->field.tqe_next; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_INSERT_AFTER(head, listelm, elm, field) do { \ + if (((elm)->field.tqe_next = (listelm)->field.tqe_next) != NULL)\ + (elm)->field.tqe_next->field.tqe_prev = \ + &(elm)->field.tqe_next; \ + else \ + (head)->tqh_last = &(elm)->field.tqe_next; \ + (listelm)->field.tqe_next = (elm); \ + (elm)->field.tqe_prev = &(listelm)->field.tqe_next; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_INSERT_BEFORE(listelm, elm, field) do { \ + (elm)->field.tqe_prev = (listelm)->field.tqe_prev; \ + (elm)->field.tqe_next = (listelm); \ + *(listelm)->field.tqe_prev = (elm); \ + (listelm)->field.tqe_prev = &(elm)->field.tqe_next; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_REMOVE(head, elm, field) do { \ + if (((elm)->field.tqe_next) != NULL) \ + (elm)->field.tqe_next->field.tqe_prev = \ + (elm)->field.tqe_prev; \ + else \ + (head)->tqh_last = (elm)->field.tqe_prev; \ + *(elm)->field.tqe_prev = (elm)->field.tqe_next; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_FOREACH(var, head, field) \ + for ((var) = ((head)->tqh_first); \ + (var); \ + (var) = ((var)->field.tqe_next)) + +#define TAILQ_FOREACH_REVERSE(var, head, headname, field) \ + for ((var) = (*(((struct headname *)((head)->tqh_last))->tqh_last)); \ + (var); \ + (var) = (*(((struct headname *)((var)->field.tqe_prev))->tqh_last))) + +#define TAILQ_CONCAT(head1, head2, field) do { \ + if (!TAILQ_EMPTY(head2)) { \ + *(head1)->tqh_last = (head2)->tqh_first; \ + (head2)->tqh_first->field.tqe_prev = (head1)->tqh_last; \ + (head1)->tqh_last = (head2)->tqh_last; \ + TAILQ_INIT((head2)); \ + } \ +} while (/*CONSTCOND*/0) + +/* + * Tail queue access methods. + */ +#define TAILQ_EMPTY(head) ((head)->tqh_first == NULL) +#define TAILQ_FIRST(head) ((head)->tqh_first) +#define TAILQ_NEXT(elm, field) ((elm)->field.tqe_next) + +#define TAILQ_LAST(head, headname) \ + (*(((struct headname *)((head)->tqh_last))->tqh_last)) +#define TAILQ_PREV(elm, headname, field) \ + (*(((struct headname *)((elm)->field.tqe_prev))->tqh_last)) + + +/* + * Circular queue definitions. + */ +#define CIRCLEQ_HEAD(name, type) \ +struct name { \ + struct type *cqh_first; /* first element */ \ + struct type *cqh_last; /* last element */ \ +} + +#define CIRCLEQ_HEAD_INITIALIZER(head) \ + { (void *)&head, (void *)&head } + +#define CIRCLEQ_ENTRY(type) \ +struct { \ + struct type *cqe_next; /* next element */ \ + struct type *cqe_prev; /* previous element */ \ +} + +/* + * Circular queue functions. + */ +#define CIRCLEQ_INIT(head) do { \ + (head)->cqh_first = (void *)(head); \ + (head)->cqh_last = (void *)(head); \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_INSERT_AFTER(head, listelm, elm, field) do { \ + (elm)->field.cqe_next = (listelm)->field.cqe_next; \ + (elm)->field.cqe_prev = (listelm); \ + if ((listelm)->field.cqe_next == (void *)(head)) \ + (head)->cqh_last = (elm); \ + else \ + (listelm)->field.cqe_next->field.cqe_prev = (elm); \ + (listelm)->field.cqe_next = (elm); \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_INSERT_BEFORE(head, listelm, elm, field) do { \ + (elm)->field.cqe_next = (listelm); \ + (elm)->field.cqe_prev = (listelm)->field.cqe_prev; \ + if ((listelm)->field.cqe_prev == (void *)(head)) \ + (head)->cqh_first = (elm); \ + else \ + (listelm)->field.cqe_prev->field.cqe_next = (elm); \ + (listelm)->field.cqe_prev = (elm); \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_INSERT_HEAD(head, elm, field) do { \ + (elm)->field.cqe_next = (head)->cqh_first; \ + (elm)->field.cqe_prev = (void *)(head); \ + if ((head)->cqh_last == (void *)(head)) \ + (head)->cqh_last = (elm); \ + else \ + (head)->cqh_first->field.cqe_prev = (elm); \ + (head)->cqh_first = (elm); \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_INSERT_TAIL(head, elm, field) do { \ + (elm)->field.cqe_next = (void *)(head); \ + (elm)->field.cqe_prev = (head)->cqh_last; \ + if ((head)->cqh_first == (void *)(head)) \ + (head)->cqh_first = (elm); \ + else \ + (head)->cqh_last->field.cqe_next = (elm); \ + (head)->cqh_last = (elm); \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_REMOVE(head, elm, field) do { \ + if ((elm)->field.cqe_next == (void *)(head)) \ + (head)->cqh_last = (elm)->field.cqe_prev; \ + else \ + (elm)->field.cqe_next->field.cqe_prev = \ + (elm)->field.cqe_prev; \ + if ((elm)->field.cqe_prev == (void *)(head)) \ + (head)->cqh_first = (elm)->field.cqe_next; \ + else \ + (elm)->field.cqe_prev->field.cqe_next = \ + (elm)->field.cqe_next; \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_FOREACH(var, head, field) \ + for ((var) = ((head)->cqh_first); \ + (var) != (const void *)(head); \ + (var) = ((var)->field.cqe_next)) + +#define CIRCLEQ_FOREACH_REVERSE(var, head, field) \ + for ((var) = ((head)->cqh_last); \ + (var) != (const void *)(head); \ + (var) = ((var)->field.cqe_prev)) + +/* + * Circular queue access methods. + */ +#define CIRCLEQ_EMPTY(head) ((head)->cqh_first == (void *)(head)) +#define CIRCLEQ_FIRST(head) ((head)->cqh_first) +#define CIRCLEQ_LAST(head) ((head)->cqh_last) +#define CIRCLEQ_NEXT(elm, field) ((elm)->field.cqe_next) +#define CIRCLEQ_PREV(elm, field) ((elm)->field.cqe_prev) + +#define CIRCLEQ_LOOP_NEXT(head, elm, field) \ + (((elm)->field.cqe_next == (void *)(head)) \ + ? ((head)->cqh_first) \ + : (elm->field.cqe_next)) +#define CIRCLEQ_LOOP_PREV(head, elm, field) \ + (((elm)->field.cqe_prev == (void *)(head)) \ + ? ((head)->cqh_last) \ + : (elm->field.cqe_prev)) + +#endif /* sys/queue.h */ diff --git a/package/lynx/Makefile b/package/lynx/Makefile index 77cb6ef3e..b15da35e6 100644 --- a/package/lynx/Makefile +++ b/package/lynx/Makefile @@ -4,9 +4,9 @@ include ${TOPDIR}/rules.mk PKG_NAME:= lynx -PKG_VERSION:= 2.8.7 +PKG_VERSION:= 2.8.8 PKG_RELEASE:= 1 -PKG_MD5SUM:= e36d70f3f09b2d502055ca67f09e363c +PKG_MD5SUM:= 7caa6773f94e136556c1c30629fe1431 PKG_DESCR:= Standard text browser PKG_SECTION:= browser PKG_DEPENDS:= libncurses libopenssl zlib @@ -17,7 +17,7 @@ PKG_SITES:= http://lynx.isc.org/${PKG_NAME}${PKG_VERSION}/ PKG_NOPARALLEL:= 1 DISTFILES= ${PKG_NAME}${PKG_VERSION}.tar.gz -WRKDIST= ${WRKDIR}/lynx2-8-7 +WRKDIST= ${WRKDIR}/lynx2-8-8 include ${TOPDIR}/mk/package.mk diff --git a/package/lynx/patches/patch-WWW_Library_Implementation_HTUtils_h b/package/lynx/patches/patch-WWW_Library_Implementation_HTUtils_h index d16953cca..c8217b70e 100644 --- a/package/lynx/patches/patch-WWW_Library_Implementation_HTUtils_h +++ b/package/lynx/patches/patch-WWW_Library_Implementation_HTUtils_h @@ -1,6 +1,6 @@ ---- lynx2-8-7.orig/WWW/Library/Implementation/HTUtils.h 2009-05-25 23:05:31.000000000 +0200 -+++ lynx2-8-7/WWW/Library/Implementation/HTUtils.h 2010-05-29 12:56:42.125000000 +0200 -@@ -677,6 +677,8 @@ extern int WWW_TraceMask; +--- lynx2-8-8.orig/WWW/Library/Implementation/HTUtils.h 2014-02-05 01:50:18.000000000 +0100 ++++ lynx2-8-8/WWW/Library/Implementation/HTUtils.h 2014-03-21 22:14:07.000000000 +0100 +@@ -725,6 +725,8 @@ extern int WWW_TraceMask; #define SHORTENED_RBIND /* FIXME: do this in configure-script */ @@ -9,15 +9,15 @@ #ifdef USE_SSL #define free_func free__func -@@ -717,6 +719,7 @@ extern int WWW_TraceMask; +@@ -765,6 +767,7 @@ extern int WWW_TraceMask; #undef free_func #endif /* USE_SSL */ +#endif - #ifdef HAVE_LIBDMALLOC - #include <dmalloc.h> /* Gray Watson's library */ -@@ -747,11 +750,14 @@ extern "C" { + #ifdef HAVE_BSD_STDLIB_H + #include <bsd/stdlib.h> /* prototype for arc4random.h */ +@@ -801,11 +804,14 @@ extern "C" { extern FILE *TraceFP(void); diff --git a/package/lynx/patches/patch-makefile_in b/package/lynx/patches/patch-makefile_in new file mode 100644 index 000000000..5cb6b5962 --- /dev/null +++ b/package/lynx/patches/patch-makefile_in @@ -0,0 +1,11 @@ +--- lynx2-8-8.orig/makefile.in 2014-03-09 22:43:10.000000000 +0100 ++++ lynx2-8-8/makefile.in 2014-03-21 23:17:26.000000000 +0100 +@@ -210,7 +210,7 @@ SRC_CFLAGS = \ + WWWINC=$(WWW_DIR) \ + WWWLIB="../$(WWW_DIR)/libwww.a" + +-actual_PROG = `echo lynx| sed '$(transform)'` ++actual_PROG = lynx + binary_PROG = $(actual_PROG)$x + + all lynx$x: cfg_defs.h LYHelp.h diff --git a/package/lynx/patches/patch-src_chrtrans_makeuctb_c b/package/lynx/patches/patch-src_chrtrans_makeuctb_c index 9f23671e7..9972a6f8c 100644 --- a/package/lynx/patches/patch-src_chrtrans_makeuctb_c +++ b/package/lynx/patches/patch-src_chrtrans_makeuctb_c @@ -1,23 +1,10 @@ ---- lynx2-8-7.orig/src/chrtrans/makeuctb.c 2009-02-02 02:41:02.000000000 +0100 -+++ lynx2-8-7/src/chrtrans/makeuctb.c 2010-05-29 12:55:33.031250000 +0200 -@@ -18,6 +18,7 @@ - * version 2, or at your option any later version. - */ - -+ - #ifndef HAVE_CONFIG_H - /* override HTUtils.h fallbacks for cross-compiling */ - #undef HAVE_LSTAT -@@ -28,10 +29,12 @@ +--- lynx2-8-8.orig/src/chrtrans/makeuctb.c 2013-11-29 01:52:56.000000000 +0100 ++++ lynx2-8-8/src/chrtrans/makeuctb.c 2014-03-21 22:12:13.000000000 +0100 +@@ -28,6 +28,7 @@ #define DONT_USE_GETTEXT #define DONT_USE_SOCKS5 +#define DONT_USE_SSL #include <UCDefs.h> #include <UCkd.h> - #include <LYUtils.h> -+ - /* - * Don't try to use LYexit() since this is a standalone file. - */ diff --git a/package/lzma/Makefile b/package/lzma/Makefile new file mode 100644 index 000000000..7d2a2e653 --- /dev/null +++ b/package/lzma/Makefile @@ -0,0 +1,28 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(TOPDIR)/rules.mk + +PKG_NAME:= lzma +PKG_VERSION:= 4.32.7 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 2a748b77a2f8c3cbc322dbd0b4c9d06a +PKG_DESCR:= LZMA compression utility +PKG_SECTION:= archive +PKG_URL:= http://tukaani.org/lzma/ +PKG_SITES:= http://tukaani.org/lzma/ + +include $(TOPDIR)/mk/host.mk +include $(TOPDIR)/mk/package.mk + +$(eval $(call HOST_template,LZMA,lzma,$(PKG_VERSION)-${PKG_RELEASE})) +$(eval $(call PKG_template,LZMA,lzma,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) + +HOST_STYLE:= auto + +lzma-install: + $(INSTALL_DIR) $(IDIR_LZMA)/usr/bin + $(INSTALL_BIN) $(WRKINST)/usr/bin/lzma $(IDIR_LZMA)/usr/bin + +include ${TOPDIR}/mk/host-bottom.mk +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/lzop/Makefile b/package/lzop/Makefile index f939092a5..95278fcd3 100644 --- a/package/lzop/Makefile +++ b/package/lzop/Makefile @@ -11,15 +11,21 @@ PKG_DESCR:= LZO compression utility PKG_SECTION:= archive PKG_DEPENDS:= liblzo PKG_BUILDDEP:= liblzo +HOST_BUILDDEP:= liblzo-host PKG_URL:= http://www.lzop.org/ PKG_SITES:= http://www.lzop.org/download/ +include $(TOPDIR)/mk/host.mk include $(TOPDIR)/mk/package.mk +$(eval $(call HOST_template,LZOP,lzop,$(PKG_VERSION)-${PKG_RELEASE})) $(eval $(call PKG_template,LZOP,lzop,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +HOST_STYLE:= auto + lzop-install: $(INSTALL_DIR) $(IDIR_LZOP)/usr/bin $(INSTALL_BIN) $(WRKINST)/usr/bin/lzop $(IDIR_LZOP)/usr/bin +include ${TOPDIR}/mk/host-bottom.mk include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/mkimage/Makefile b/package/mkimage/Makefile new file mode 100644 index 000000000..3d6fbc45d --- /dev/null +++ b/package/mkimage/Makefile @@ -0,0 +1,33 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(TOPDIR)/rules.mk + +PKG_NAME:= mkimage +PKG_VERSION:= 0.1 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 1b7a781fb4cf8938842279bd3e8ee852 +PKG_DESCR:= stripped down mkimage utility +PKG_SECTION:= misc + +NO_DISTFILES:= 1 + +PKG_CFLINE_MKIMAGE:= depends on ADK_HOST_ONLY + +include $(TOPDIR)/mk/host.mk +include $(TOPDIR)/mk/package.mk + +$(eval $(call HOST_template,MKIMAGE,mkimage,$(PKG_VERSION)-${PKG_RELEASE})) + +HOST_STYLE:= manual + +host-build: + $(CC_FOR_BUILD) $(CFLAGS_FOR_BUILD) -o ${WRKBUILD}/mkimage ${WRKBUILD}/mkimage.c ${WRKBUILD}/crc32.c + +mkimage-hostinstall: + ${INSTALL_DIR} ${STAGING_HOST_DIR}/usr/bin + ${INSTALL_BIN} ${WRKBUILD}/mkimage \ + ${STAGING_HOST_DIR}/usr/bin + +include ${TOPDIR}/mk/host-bottom.mk +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/tools/mkimage/crc32.c b/package/mkimage/src/crc32.c index 067b3106c..067b3106c 100644 --- a/tools/mkimage/crc32.c +++ b/package/mkimage/src/crc32.c diff --git a/tools/mkimage/image.h b/package/mkimage/src/image.h index cb62cde5b..cb62cde5b 100644 --- a/tools/mkimage/image.h +++ b/package/mkimage/src/image.h diff --git a/tools/mkimage/mkimage.c b/package/mkimage/src/mkimage.c index 7c0432bad..7c0432bad 100644 --- a/tools/mkimage/mkimage.c +++ b/package/mkimage/src/mkimage.c diff --git a/package/mksh/Makefile b/package/mksh/Makefile index c40d9d807..4f65a97f7 100644 --- a/package/mksh/Makefile +++ b/package/mksh/Makefile @@ -17,24 +17,44 @@ PKG_DFLT_MKSH:= y if !ADK_TOOLCHAIN_ONLY DISTFILES= ${PKG_NAME}-R${PKG_VERSION}.tgz WRKDIST= ${WRKDIR}/${PKG_NAME} +include ${TOPDIR}/mk/host.mk include ${TOPDIR}/mk/package.mk -$(eval $(call PKG_template,MKSH,mksh,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +$(eval $(call HOST_template,MKSH,mksh,${PKG_VERSION}-${PKG_RELEASE})) +$(eval $(call PKG_template,MKSH,mksh,${PKG_VERSION}-${PKG_RELEASE},,${PKG_DESCR},${PKG_SECTION})) + +ifeq ($(ADK_STATIC),y) +TARGET_CFLAGS+= -static +TARGET_LDFLAGS+= -static +endif TARGET_CPPFLAGS+= -DMKSH_SMALL=1 +TARGET_LDFLAGS+= -static-libgcc + +HOST_STYLE:= manual CONFIG_STYLE:= manual BUILD_STYLE:= manual INSTALL_STYLE:= manual +host-build: + cd ${WRKBUILD} && HAVE_CAN_FSTACKPROTECTORALL=0 \ + TARGET_OS=Linux ${BASH} ${WRKSRC}/Build.sh -Q -r -c lto + +mksh-hostinstall: + ${INSTALL_DIR} ${STAGING_HOST_DIR}/usr/bin + ${INSTALL_BIN} ${WRKBUILD}/mksh \ + ${STAGING_HOST_DIR}/usr/bin + do-build: cd ${WRKBUILD} && CC='${TARGET_CC}' CFLAGS='${TARGET_CFLAGS}' \ CPPFLAGS='${TARGET_CPPFLAGS}' LDFLAGS='${TARGET_LDFLAGS}' \ HAVE_CAN_FSTACKPROTECTORALL=0 \ TARGET_OS=Linux ${BASH} ${WRKSRC}/Build.sh -Q -r -c lto -do-install: +mksh-install: ${INSTALL_DIR} ${IDIR_MKSH}/bin ${IDIR_MKSH}/root ${INSTALL_BIN} ${WRKBUILD}/mksh ${IDIR_MKSH}/bin/ ${CP} ${WRKSRC}/dot.mkshrc ${IDIR_MKSH}/root/.mkshrc +include ${TOPDIR}/mk/host-bottom.mk include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/moc/Makefile b/package/moc/Makefile index 11bc9243c..797e76b06 100644 --- a/package/moc/Makefile +++ b/package/moc/Makefile @@ -4,9 +4,9 @@ include ${TOPDIR}/rules.mk PKG_NAME:= moc -PKG_VERSION:= 2.5.0-beta1 +PKG_VERSION:= 2.5.0-beta2 PKG_RELEASE:= 1 -PKG_MD5SUM:= 795ecba86847e082aa2f21937cc04804 +PKG_MD5SUM:= da87b90b57934234589b63e347921458 PKG_DESCR:= console music player PKG_SECTION:= multimedia PKG_DEPENDS:= libmad libvorbis libcurl libflac @@ -22,6 +22,7 @@ include ${TOPDIR}/mk/package.mk $(eval $(call PKG_template,MOC,moc,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +TARGET_CPPFLAGS+= -D_GNU_SOURCE -D_POSIX_SOURCE TARGET_LDFLAGS+= -ltinfo CONFIGURE_ARGS+= --without-jack \ --without-oss \ diff --git a/package/mpd/Makefile b/package/mpd/Makefile index c1ad710dc..b104f00f5 100644 --- a/package/mpd/Makefile +++ b/package/mpd/Makefile @@ -5,7 +5,7 @@ include ${TOPDIR}/rules.mk PKG_NAME:= mpd PKG_VERSION:= 0.18.9 -PKG_RELEASE:= 1 +PKG_RELEASE:= 3 PKG_MD5SUM:= 0e5156a831d4302d2032998bcfd5c36f PKG_DESCR:= A music player daemon PKG_SECTION:= multimedia @@ -16,8 +16,6 @@ PKG_URL:= http://www.musicpd.org/ PKG_SITES:= http://www.musicpd.org/download/mpd/0.18/ PKG_NEED_CXX:= 1 -PKG_ARCH_DEPENDS:= !m68k - DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.xz PKG_FLAVOURS_MPD:= WITH_ALSA WITH_AO WITH_MP3 WITH_MP4 WITH_TREMOR diff --git a/package/mpd/patches/patch-src_db_SimpleDatabasePlugin_cxx b/package/mpd/patches/patch-src_db_SimpleDatabasePlugin_cxx deleted file mode 100644 index 0f28de720..000000000 --- a/package/mpd/patches/patch-src_db_SimpleDatabasePlugin_cxx +++ /dev/null @@ -1,91 +0,0 @@ ---- mpd-0.18.5.orig/src/db/SimpleDatabasePlugin.cxx 2013-11-22 00:33:30.000000000 +0100 -+++ mpd-0.18.5/src/db/SimpleDatabasePlugin.cxx 2013-11-30 19:17:55.000000000 +0100 -@@ -35,6 +35,9 @@ - - #include <sys/types.h> - #include <errno.h> -+#include <sys/mount.h> -+#include <mntent.h> -+#include <string.h> - - static constexpr Domain simple_db_domain("simple_db"); - -@@ -95,8 +98,8 @@ SimpleDatabase::Check(Error &error) cons - return false; - } - -- /* Check if we can write to the directory */ -- if (!CheckAccess(dirPath, X_OK | W_OK)) { -+ /* Check if we can change into the directory */ -+ if (!CheckAccess(dirPath, X_OK)) { - const int e = errno; - const std::string dirPath_utf8 = dirPath.ToUTF8(); - error.FormatErrno(e, "Can't create db file in \"%s\"", -@@ -122,9 +125,9 @@ SimpleDatabase::Check(Error &error) cons - return false; - } - -- /* And check that we can write to it */ -- if (!CheckAccess(path, R_OK | W_OK)) { -- error.FormatErrno("Can't open db file \"%s\" for reading/writing", -+ /* And check that we can read it */ -+ if (!CheckAccess(path, R_OK)) { -+ error.FormatErrno("Can't open db file \"%s\" for reading", - path_utf8.c_str()); - return false; - } -@@ -281,6 +284,10 @@ SimpleDatabase::GetStats(const DatabaseS - bool - SimpleDatabase::Save(Error &error) - { -+ struct mntent *mnt; -+ int remount; -+ FILE *f; -+ - db_lock(); - - LogDebug(simple_db_domain, "removing empty directories from DB"); -@@ -293,6 +300,26 @@ SimpleDatabase::Save(Error &error) - - LogDebug(simple_db_domain, "writing DB"); - -+ remount = 0; -+ /* check if /data is mounted read-only */ -+ if ((f = setmntent("/proc/mounts", "r")) == NULL) -+ error.Format(simple_db_domain, "Checking /proc/mounts failed"); -+ -+ while ((mnt = getmntent(f)) != NULL) { -+ if (strcmp(mnt->mnt_dir, "/data") == 0 && -+ hasmntopt(mnt, MNTOPT_RO) != NULL) { -+ remount = 1; -+ } -+ } -+ endmntent(f); -+ -+ if (remount) { -+ if (mount("","/data",0,MS_REMOUNT,0)<0) { -+ error.Format(simple_db_domain, "Remounting /data rw failed"); -+ } -+ LogDebug(simple_db_domain, "Mounted /data successfully in read-write mode"); -+ } -+ - FILE *fp = FOpen(path, FOpenMode::WriteText); - if (!fp) { - error.FormatErrno("unable to write to db file \"%s\"", -@@ -310,6 +337,16 @@ SimpleDatabase::Save(Error &error) - - fclose(fp); - -+ if (remount) { -+ sync(); -+ if (mount("","/data",0,MS_REMOUNT|MS_RDONLY,0)<0) { -+ error.Format(simple_db_domain, "Remounting /data ro failed"); -+ } -+ LogDebug(simple_db_domain, "Mounted /data successfully in read-only mode"); -+ } -+ -+ LogDebug(simple_db_domain, "Successfully written database"); -+ - struct stat st; - if (StatFile(path, st)) - mtime = st.st_mtime; diff --git a/package/mpd/patches/patch-src_thread_Id_hxx b/package/mpd/patches/patch-src_thread_Id_hxx index dabee4007..21dd19846 100644 --- a/package/mpd/patches/patch-src_thread_Id_hxx +++ b/package/mpd/patches/patch-src_thread_Id_hxx @@ -1,5 +1,5 @@ ---- mpd-0.18.5.orig/src/thread/Id.hxx 2013-11-18 23:50:46.000000000 +0100 -+++ mpd-0.18.5/src/thread/Id.hxx 2013-11-29 20:50:36.000000000 +0100 +--- mpd-0.18.9.orig/src/thread/Id.hxx 2013-12-11 20:51:53.000000000 +0100 ++++ mpd-0.18.9/src/thread/Id.hxx 2014-03-26 09:04:04.000000000 +0100 @@ -84,7 +84,7 @@ public: #ifdef WIN32 return id == other.id; diff --git a/package/mpg123/Makefile b/package/mpg123/Makefile index 350a7a097..0fdbe17b4 100644 --- a/package/mpg123/Makefile +++ b/package/mpg123/Makefile @@ -4,9 +4,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:= mpg123 -PKG_VERSION:= 1.13.3 +PKG_VERSION:= 1.19.0 PKG_RELEASE:= 1 -PKG_MD5SUM:= b1f990ce76dcf2fdf9d53ac39fc6bc7e +PKG_MD5SUM:= 87731f1437cfd8c50537a606d81130e4 PKG_DESCR:= mp3 console player PKG_SECTION:= multimedia PKG_DEPENDS:= libpthread alsa-lib diff --git a/package/mplayer/Makefile b/package/mplayer/Makefile index a6851f3fa..0a98de806 100644 --- a/package/mplayer/Makefile +++ b/package/mplayer/Makefile @@ -5,7 +5,7 @@ include ${TOPDIR}/rules.mk PKG_NAME:= mplayer PKG_VERSION:= 1.1.1 -PKG_RELEASE:= 1 +PKG_RELEASE:= 2 PKG_MD5SUM:= 39dd55f30eb5403f219a606e79a6648a PKG_DESCR:= popular video player PKG_SECTION:= multimedia @@ -34,9 +34,8 @@ include ${TOPDIR}/mk/package.mk $(eval $(call PKG_template,MPLAYER,mplayer,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +TARGET_CC:= ${TARGET_COMPILER_PREFIX}gcc XAKE_FLAGS+= GCC_HONOUR_COPTS=s -# gcc 4.5 produces internal compiler error with -Os -#TARGET_CFLAGS:=$(subst Os,O2,$(TARGET_CFLAGS)) TARGET_CFLAGS+= -D_POSIX_SOURCE -D_GNU_SOURCE CONFIG_STYLE:= minimal diff --git a/package/mtd-utils/Makefile b/package/mtd-utils/Makefile new file mode 100644 index 000000000..19c81ae4a --- /dev/null +++ b/package/mtd-utils/Makefile @@ -0,0 +1,35 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(TOPDIR)/rules.mk + +PKG_NAME:= mtd-utils +PKG_VERSION:= 1.5.0 +PKG_RELEASE:= 1 +PKG_MD5SUM:= a4df1ad29684be79b0fa699bdae01faf +PKG_DESCR:= mtd-utils filesystem utilities +PKG_SECTION:= fs +HOST_BUILDDEP:= liblzo-host +PKG_SITES:= http://openadk.org/distfiles/ + +PKG_CFLINE_MTD_UTILS:= depends on ADK_HOST_ONLY + +include $(TOPDIR)/mk/host.mk +include $(TOPDIR)/mk/package.mk + +$(eval $(call HOST_template,MTD_UTILS,mtd-utils,$(PKG_VERSION)-${PKG_RELEASE})) + +HOST_STYLE:= manual +CPPFLAGS_FOR_BUILD+= -DWITHOUT_XATTR=1 -I./include + +host-build: + (cd ${WRKBUILD} && env ${HOST_MAKE_ENV} ${MAKE} -f ${MAKE_FILE} \ + ${HOST_MAKE_FLAGS} ${HOST_ALL_TARGET}) + +mtd-utils-hostinstall: + ${INSTALL_DIR} ${STAGING_HOST_DIR}/usr/bin + ${INSTALL_BIN} ${WRKBUILD}/mkfs.jffs2 \ + ${STAGING_HOST_DIR}/usr/bin + +include ${TOPDIR}/mk/host-bottom.mk +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/tools/mtd-utils/patches/lzo.patch b/package/mtd-utils/patches/patch-Makefile index 52f16146c..53ed8640e 100644 --- a/tools/mtd-utils/patches/lzo.patch +++ b/package/mtd-utils/patches/patch-Makefile @@ -1,29 +1,6 @@ -diff -Nur mtd-utils-1.5.0.orig/compr.c mtd-utils-1.5.0/compr.c ---- mtd-utils-1.5.0.orig/compr.c 2012-05-07 09:19:39.000000000 +0200 -+++ mtd-utils-1.5.0/compr.c 2014-02-25 21:05:20.000000000 +0100 -@@ -517,9 +517,6 @@ - #ifdef CONFIG_JFFS2_RTIME - jffs2_rtime_init(); - #endif --#ifdef CONFIG_JFFS2_LZO -- jffs2_lzo_init(); --#endif - return 0; - } - -@@ -531,8 +528,5 @@ - #ifdef CONFIG_JFFS2_ZLIB - jffs2_zlib_exit(); - #endif --#ifdef CONFIG_JFFS2_LZO -- jffs2_lzo_exit(); --#endif - return 0; - } -diff -Nur mtd-utils-1.5.0.orig/Makefile mtd-utils-1.5.0/Makefile --- mtd-utils-1.5.0.orig/Makefile 2012-05-07 09:19:39.000000000 +0200 -+++ mtd-utils-1.5.0/Makefile 2014-02-25 21:13:03.000000000 +0100 -@@ -16,27 +16,13 @@ ++++ mtd-utils-1.5.0/Makefile 2014-03-30 15:49:30.000000000 +0200 +@@ -16,27 +16,13 @@ endif TESTS = tests @@ -52,7 +29,7 @@ diff -Nur mtd-utils-1.5.0.orig/Makefile mtd-utils-1.5.0/Makefile OBJDEPS = $(BUILDDIR)/include/version.h -@@ -83,12 +69,12 @@ +@@ -83,12 +69,12 @@ $(BUILDDIR)/include/version.h.tmp: # # Utils in top level # @@ -70,7 +47,7 @@ diff -Nur mtd-utils-1.5.0.orig/Makefile mtd-utils-1.5.0/Makefile $(foreach v,$(MTD_BINS),$(eval $(call mkdep,,$(v)))) -@@ -103,7 +89,7 @@ +@@ -103,7 +89,7 @@ $(call _mkdep,lib/,libmtd.a) # obj-mkfs.ubifs = crc16.o lpt.o compr.o devtable.o \ hashtable/hashtable.o hashtable/hashtable_itr.o @@ -79,7 +56,7 @@ diff -Nur mtd-utils-1.5.0.orig/Makefile mtd-utils-1.5.0/Makefile $(call mkdep,mkfs.ubifs/,mkfs.ubifs,,ubi-utils/libubi.a) # -@@ -117,6 +103,3 @@ +@@ -117,6 +103,3 @@ obj-libubigen.a = libubigen.o obj-mtdinfo = libubigen.a obj-ubinize = libubigen.a libiniparser.a obj-ubiformat = libubigen.a libscan.a diff --git a/package/mtd-utils/patches/patch-common_mk b/package/mtd-utils/patches/patch-common_mk new file mode 100644 index 000000000..6881db87e --- /dev/null +++ b/package/mtd-utils/patches/patch-common_mk @@ -0,0 +1,11 @@ +--- mtd-utils-1.5.0.orig/common.mk 2012-05-07 09:19:39.000000000 +0200 ++++ mtd-utils-1.5.0/common.mk 2014-03-30 15:49:26.000000000 +0200 +@@ -13,8 +13,6 @@ WFLAGS := -Wall \ + $(call cc-option,-Wwrite-strings) \ + $(call cc-option,-Wno-sign-compare) + CFLAGS += $(WFLAGS) +-SECTION_CFLAGS := $(call cc-option,-ffunction-sections -fdata-sections -Wl$(comma)--gc-sections) +-CFLAGS += $(SECTION_CFLAGS) + + ifneq ($(WITHOUT_LARGEFILE), 1) + CPPFLAGS += -D_FILE_OFFSET_BITS=64 diff --git a/package/mtd-utils/patches/patch-compr_c b/package/mtd-utils/patches/patch-compr_c new file mode 100644 index 000000000..c69e133b9 --- /dev/null +++ b/package/mtd-utils/patches/patch-compr_c @@ -0,0 +1,21 @@ +--- mtd-utils-1.5.0.orig/compr.c 2012-05-07 09:19:39.000000000 +0200 ++++ mtd-utils-1.5.0/compr.c 2014-03-30 15:49:30.000000000 +0200 +@@ -517,9 +517,6 @@ int jffs2_compressors_init(void) + #ifdef CONFIG_JFFS2_RTIME + jffs2_rtime_init(); + #endif +-#ifdef CONFIG_JFFS2_LZO +- jffs2_lzo_init(); +-#endif + return 0; + } + +@@ -531,8 +528,5 @@ int jffs2_compressors_exit(void) + #ifdef CONFIG_JFFS2_ZLIB + jffs2_zlib_exit(); + #endif +-#ifdef CONFIG_JFFS2_LZO +- jffs2_lzo_exit(); +-#endif + return 0; + } diff --git a/package/mtd-utils/patches/patch-compr_lzo_c b/package/mtd-utils/patches/patch-compr_lzo_c new file mode 100644 index 000000000..98f235c5b --- /dev/null +++ b/package/mtd-utils/patches/patch-compr_lzo_c @@ -0,0 +1,10 @@ +--- mtd-utils-1.5.0.orig/compr_lzo.c 2012-05-07 09:19:39.000000000 +0200 ++++ mtd-utils-1.5.0/compr_lzo.c 2014-03-30 15:49:26.000000000 +0200 +@@ -26,7 +26,6 @@ + #include <string.h> + + #ifndef WITHOUT_LZO +-#include <asm/types.h> + #include <linux/jffs2.h> + #include <lzo/lzo1x.h> + #include "compr.h" diff --git a/package/mtd-utils/patches/patch-compr_zlib_c b/package/mtd-utils/patches/patch-compr_zlib_c new file mode 100644 index 000000000..200bb55ce --- /dev/null +++ b/package/mtd-utils/patches/patch-compr_zlib_c @@ -0,0 +1,10 @@ +--- mtd-utils-1.5.0.orig/compr_zlib.c 2012-05-07 09:19:39.000000000 +0200 ++++ mtd-utils-1.5.0/compr_zlib.c 2014-03-30 15:49:26.000000000 +0200 +@@ -39,7 +39,6 @@ + #include <zlib.h> + #undef crc32 + #include <stdio.h> +-#include <asm/types.h> + #include <linux/jffs2.h> + #include "common.h" + #include "compr.h" diff --git a/package/mtd-utils/patches/patch-include_mtd_jffs2-user_h b/package/mtd-utils/patches/patch-include_mtd_jffs2-user_h new file mode 100644 index 000000000..1373b66f2 --- /dev/null +++ b/package/mtd-utils/patches/patch-include_mtd_jffs2-user_h @@ -0,0 +1,16 @@ +--- mtd-utils-1.5.0.orig/include/mtd/jffs2-user.h 2012-05-07 09:19:39.000000000 +0200 ++++ mtd-utils-1.5.0/include/mtd/jffs2-user.h 2014-03-30 15:49:26.000000000 +0200 +@@ -9,8 +9,13 @@ + + /* This file is blessed for inclusion by userspace */ + #include <linux/jffs2.h> ++#if defined(__APPLE__) ++#include "endian.h" ++#include "byteswap.h" ++#else + #include <endian.h> + #include <byteswap.h> ++#endif + + #undef cpu_to_je16 + #undef cpu_to_je32 diff --git a/package/mtd-utils/patches/patch-include_mtd_mtd-abi_h b/package/mtd-utils/patches/patch-include_mtd_mtd-abi_h new file mode 100644 index 000000000..9a95c4127 --- /dev/null +++ b/package/mtd-utils/patches/patch-include_mtd_mtd-abi_h @@ -0,0 +1,14 @@ +--- mtd-utils-1.5.0.orig/include/mtd/mtd-abi.h 2012-05-07 09:19:39.000000000 +0200 ++++ mtd-utils-1.5.0/include/mtd/mtd-abi.h 2014-03-30 15:49:26.000000000 +0200 +@@ -171,9 +171,9 @@ struct otp_info { + /* Get info about OOB modes (e.g., RAW, PLACE, AUTO) - legacy interface */ + #define MEMGETOOBSEL _IOR('M', 10, struct nand_oobinfo) + /* Check if an eraseblock is bad */ +-#define MEMGETBADBLOCK _IOW('M', 11, __kernel_loff_t) ++#define MEMGETBADBLOCK _IOW('M', 11, off_t) + /* Mark an eraseblock as bad */ +-#define MEMSETBADBLOCK _IOW('M', 12, __kernel_loff_t) ++#define MEMSETBADBLOCK _IOW('M', 12, off_t) + /* Set OTP (One-Time Programmable) mode (factory vs. user) */ + #define OTPSELECT _IOR('M', 13, int) + /* Get number of OTP (One-Time Programmable) regions */ diff --git a/package/mtd-utils/patches/patch-include_mtd_ubi-media_h b/package/mtd-utils/patches/patch-include_mtd_ubi-media_h new file mode 100644 index 000000000..33feabf92 --- /dev/null +++ b/package/mtd-utils/patches/patch-include_mtd_ubi-media_h @@ -0,0 +1,18 @@ +--- mtd-utils-1.5.0.orig/include/mtd/ubi-media.h 2012-05-07 09:19:39.000000000 +0200 ++++ mtd-utils-1.5.0/include/mtd/ubi-media.h 2014-03-30 15:49:26.000000000 +0200 +@@ -30,7 +30,15 @@ + #ifndef __UBI_MEDIA_H__ + #define __UBI_MEDIA_H__ + ++#ifdef __linux__ + #include <asm/byteorder.h> ++#else ++#include <stdint.h> ++typedef uint8_t __u8; ++typedef uint16_t __be16; ++typedef uint32_t __be32; ++typedef uint64_t __be64; ++#endif + + /* The version of UBI images supported by this implementation */ + #define UBI_VERSION 1 diff --git a/package/mtd-utils/patches/patch-lib_libfec_c b/package/mtd-utils/patches/patch-lib_libfec_c new file mode 100644 index 000000000..7b198d0fb --- /dev/null +++ b/package/mtd-utils/patches/patch-lib_libfec_c @@ -0,0 +1,20 @@ +--- mtd-utils-1.5.0.orig/lib/libfec.c 2012-05-07 09:19:39.000000000 +0200 ++++ mtd-utils-1.5.0/lib/libfec.c 2014-03-30 15:49:26.000000000 +0200 +@@ -61,8 +61,6 @@ struct timeval { + }; + #define gettimeofday(x, dummy) { (x)->ticks = clock() ; } + #define DIFF_T(a,b) (1+ 1000000*(a.ticks - b.ticks) / CLOCKS_PER_SEC ) +-typedef unsigned long u_long ; +-typedef unsigned short u_short ; + #else /* typically, unix systems */ + #include <sys/time.h> + #define DIFF_T(a,b) \ +@@ -625,7 +623,7 @@ init_fec(void) + #define FEC_MAGIC 0xFECC0DEC + + struct fec_parms { +- u_long magic ; ++ unsigned long magic ; + int k, n ; /* parameters of the code */ + gf *enc_matrix ; + } ; diff --git a/package/mtd-utils/patches/patch-lib_libmtd_c b/package/mtd-utils/patches/patch-lib_libmtd_c new file mode 100644 index 000000000..af0f9a837 --- /dev/null +++ b/package/mtd-utils/patches/patch-lib_libmtd_c @@ -0,0 +1,38 @@ +--- mtd-utils-1.5.0.orig/lib/libmtd.c 2012-05-07 09:19:39.000000000 +0200 ++++ mtd-utils-1.5.0/lib/libmtd.c 2014-03-30 15:49:26.000000000 +0200 +@@ -1006,7 +1006,7 @@ out: + int mtd_is_bad(const struct mtd_dev_info *mtd, int fd, int eb) + { + int ret; +- loff_t seek; ++ off_t seek; + + ret = mtd_valid_erase_block(mtd, eb); + if (ret) +@@ -1015,7 +1015,7 @@ int mtd_is_bad(const struct mtd_dev_info + if (!mtd->bb_allowed) + return 0; + +- seek = (loff_t)eb * mtd->eb_size; ++ seek = (off_t)eb * mtd->eb_size; + ret = ioctl(fd, MEMGETBADBLOCK, &seek); + if (ret == -1) + return mtd_ioctl_error(mtd, eb, "MEMGETBADBLOCK"); +@@ -1025,7 +1025,7 @@ int mtd_is_bad(const struct mtd_dev_info + int mtd_mark_bad(const struct mtd_dev_info *mtd, int fd, int eb) + { + int ret; +- loff_t seek; ++ off_t seek; + + if (!mtd->bb_allowed) { + errno = EINVAL; +@@ -1036,7 +1036,7 @@ int mtd_mark_bad(const struct mtd_dev_in + if (ret) + return ret; + +- seek = (loff_t)eb * mtd->eb_size; ++ seek = (off_t)eb * mtd->eb_size; + ret = ioctl(fd, MEMSETBADBLOCK, &seek); + if (ret == -1) + return mtd_ioctl_error(mtd, eb, "MEMSETBADBLOCK"); diff --git a/package/mtd-utils/patches/patch-lib_libmtd_legacy_c b/package/mtd-utils/patches/patch-lib_libmtd_legacy_c new file mode 100644 index 000000000..bcd66374f --- /dev/null +++ b/package/mtd-utils/patches/patch-lib_libmtd_legacy_c @@ -0,0 +1,11 @@ +--- mtd-utils-1.5.0.orig/lib/libmtd_legacy.c 2012-05-07 09:19:39.000000000 +0200 ++++ mtd-utils-1.5.0/lib/libmtd_legacy.c 2014-03-30 15:49:26.000000000 +0200 +@@ -234,7 +234,7 @@ int legacy_get_dev_info(const char *node + struct stat st; + struct mtd_info_user ui; + int fd, ret; +- loff_t offs = 0; ++ off_t offs = 0; + struct proc_parse_info pi; + + if (stat(node, &st)) { diff --git a/package/mtd-utils/patches/patch-mkfs_jffs2_c b/package/mtd-utils/patches/patch-mkfs_jffs2_c new file mode 100644 index 000000000..766e2204a --- /dev/null +++ b/package/mtd-utils/patches/patch-mkfs_jffs2_c @@ -0,0 +1,15 @@ +--- mtd-utils-1.5.0.orig/mkfs.jffs2.c 2012-05-07 09:19:39.000000000 +0200 ++++ mtd-utils-1.5.0/mkfs.jffs2.c 2014-03-30 15:49:26.000000000 +0200 +@@ -70,7 +70,12 @@ + #include <sys/xattr.h> + #include <sys/acl.h> + #endif ++#if defined(__APPLE__) ++#include "endian.h" ++#include "byteswap.h" ++#else + #include <byteswap.h> ++#endif + #include <crc32.h> + #include <inttypes.h> + diff --git a/package/mtd-utils/patches/patch-rbtree_h b/package/mtd-utils/patches/patch-rbtree_h new file mode 100644 index 000000000..b7d34b937 --- /dev/null +++ b/package/mtd-utils/patches/patch-rbtree_h @@ -0,0 +1,12 @@ +--- mtd-utils-1.5.0.orig/rbtree.h 2012-05-07 09:19:39.000000000 +0200 ++++ mtd-utils-1.5.0/rbtree.h 2014-03-30 15:49:26.000000000 +0200 +@@ -94,8 +94,7 @@ static inline struct page * rb_insert_pa + #ifndef _LINUX_RBTREE_H + #define _LINUX_RBTREE_H + +-#include <linux/kernel.h> +-#include <linux/stddef.h> ++#include <stddef.h> + + struct rb_node + { diff --git a/package/mutt/Makefile b/package/mutt/Makefile index 0454d4627..05bb5096e 100644 --- a/package/mutt/Makefile +++ b/package/mutt/Makefile @@ -4,15 +4,16 @@ include ${TOPDIR}/rules.mk PKG_NAME:= mutt -PKG_VERSION:= 1.5.20 -PKG_RELEASE:= 2 -PKG_MD5SUM:= 027cdd9959203de0c3c64149a7ee351c -PKG_DESCR:= Mail text client +PKG_VERSION:= 1.5.23 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 11f5b6a3eeba1afa1257fe93c9f26bff +PKG_DESCR:= mail text client PKG_SECTION:= mail PKG_DEPENDS:= libncurses libopenssl PKG_BUILDDEP:= ncurses openssl PKG_URL:= http://www.mutt.org/ -PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=mutt/} +PKG_SITES:= ftp://ftp.mutt.org/mutt/devel/ \ + http://ftp.hi.is/pub/mutt/ include ${TOPDIR}/mk/package.mk diff --git a/package/mutt/patches/patch-Makefile_in b/package/mutt/patches/patch-Makefile_in index 3a6601abe..c4bcb93db 100644 --- a/package/mutt/patches/patch-Makefile_in +++ b/package/mutt/patches/patch-Makefile_in @@ -1,20 +1,20 @@ ---- mutt-1.5.20.orig/Makefile.in 2009-06-09 08:50:44.000000000 +0200 -+++ mutt-1.5.20/Makefile.in 2010-05-30 13:43:47.001613117 +0200 -@@ -155,7 +155,7 @@ AM_RECURSIVE_TARGETS = $(RECURSIVE_TARGE - distdir dist dist-all distcheck +--- mutt-1.5.23.orig/Makefile.in 2014-03-12 17:26:44.000000000 +0100 ++++ mutt-1.5.23/Makefile.in 2014-03-27 11:06:17.000000000 +0100 +@@ -259,7 +259,7 @@ am__define_uniq_tagged_files = \ ETAGS = etags CTAGS = ctags + CSCOPE = cscope -DIST_SUBDIRS = m4 po intl doc contrib imap +DIST_SUBDIRS = m4 po intl contrib imap DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) distdir = $(PACKAGE)-$(VERSION) top_distdir = $(distdir) -@@ -340,7 +340,7 @@ top_srcdir = @top_srcdir@ +@@ -451,7 +451,7 @@ top_srcdir = @top_srcdir@ AUTOMAKE_OPTIONS = 1.6 foreign @BUILD_IMAP_TRUE@IMAP_SUBDIR = imap @BUILD_IMAP_TRUE@IMAP_INCLUDES = -I$(top_srcdir)/imap -SUBDIRS = m4 po intl doc contrib $(IMAP_SUBDIR) +SUBDIRS = m4 po intl contrib $(IMAP_SUBDIR) bin_SCRIPTS = muttbug flea @SMIMEAUX_TARGET@ - BUILT_SOURCES = keymap_defs.h patchlist.c reldate.h hcversion.h - mutt_SOURCES = \ + @BUILD_HCACHE_TRUE@HCVERSION = hcversion.h + BUILT_SOURCES = keymap_defs.h patchlist.c reldate.h conststrings.c $(HCVERSION) diff --git a/package/mutt/patches/patch-mutt_ssl_c b/package/mutt/patches/patch-mutt_ssl_c deleted file mode 100644 index 160dc668c..000000000 --- a/package/mutt/patches/patch-mutt_ssl_c +++ /dev/null @@ -1,20 +0,0 @@ ---- mutt-1.5.20.orig/mutt_ssl.c 2009-06-10 07:08:29.000000000 +0200 -+++ mutt-1.5.20/mutt_ssl.c 2010-06-02 19:53:33.141613592 +0200 -@@ -652,7 +652,7 @@ static int check_host (X509 *x509cert, c - char *buf = NULL; - int bufsize; - /* needed to get the DNS subjectAltNames: */ -- STACK *subj_alt_names; -+ STACK_OF(GENERAL_NAME) *subj_alt_names; - int subj_alt_names_count; - GENERAL_NAME *subj_alt_name; - /* did we find a name matching hostname? */ -@@ -735,7 +735,7 @@ static int ssl_cache_trusted_cert (X509 - { - dprint (1, (debugfile, "trusted: %s\n", c->name)); - if (!SslSessionCerts) -- SslSessionCerts = sk_new_null(); -+ SslSessionCerts = sk_X509_new_null(); - return (sk_X509_push (SslSessionCerts, X509_dup(c))); - } - diff --git a/package/ncurses/Makefile b/package/ncurses/Makefile index 2453064f5..6b193dc12 100644 --- a/package/ncurses/Makefile +++ b/package/ncurses/Makefile @@ -5,7 +5,7 @@ include ${TOPDIR}/rules.mk PKG_NAME:= ncurses PKG_VERSION:= 5.9 -PKG_RELEASE:= 3 +PKG_RELEASE:= 5 PKG_MD5SUM:= 8cb9c412e5f2d96bc6f459aa8c6282a1 PKG_DESCR:= a terminal handling library PKG_SECTION:= libs @@ -50,6 +50,7 @@ CONFIGURE_ARGS+= --without-cxx \ ALL_TARGET:= libs INSTALL_TARGET:= install.libs install.data +HOST_STYLE:= auto # use sth which does not exist HOST_ALL_TARGET:= progs HOST_INSTALL_TARGET:= install.includes install.progs @@ -69,9 +70,6 @@ HOST_CONFIGURE_ARGS+= --without-shared \ --without-debug \ --without-profile -libncurses-hostinstall: - ${CP} ${HOST_WRKINST}/usr/bin/* ${STAGING_HOST_DIR}/usr/bin - libncurses-install: rm -rf ${WRKINST}/usr/lib/terminfo # this is installed as libncurses - make libcurses a "link" @@ -81,18 +79,13 @@ libncurses-install: ${INSTALL_DIR} ${IDIR_LIBNCURSES}/usr/lib ${CP} ${WRKINST}/usr/lib/lib{tinfo,form,menu,ncurses,panel}.so* \ ${IDIR_LIBNCURSES}/usr/lib - for ti in rxvt rxvt-unicode; do \ - TERMINFO=${WRKINST}/usr/share/terminfo \ - PATH=$(HOST_PATH) \ - tic$(EXEEXT) -x ./files/$$ti.ti; \ - done ifeq (${ADK_PACKAGE_LIBNCURSES_FULL_TERMINFO},y) ${INSTALL_DIR} ${IDIR_LIBNCURSES}/usr/share ${CP} ${WRKINST}/usr/share/terminfo ${IDIR_LIBNCURSES}/usr/share/ else ${INSTALL_DIR} ${IDIR_LIBNCURSES}/usr/share/terminfo/ for f in ansi dumb linux screen vt100 vt102 \ - rxvt rxvt-unicode vt220 xterm xterm-color xterm-xfree86; do \ + vt220 xterm xterm-color xterm-xfree86; do \ ${INSTALL_DIR} ${IDIR_LIBNCURSES}/usr/share/terminfo/$${f:0:1}; \ ${INSTALL_DATA} ${WRKINST}/usr/share/terminfo/*/$$f \ ${IDIR_LIBNCURSES}/usr/share/terminfo/$${f:0:1}/$$f; \ diff --git a/package/ntfs-3g/Makefile b/package/ntfs-3g/Makefile index 5151bfd21..b893cdb53 100644 --- a/package/ntfs-3g/Makefile +++ b/package/ntfs-3g/Makefile @@ -4,9 +4,9 @@ include ${TOPDIR}/rules.mk PKG_NAME:= ntfs-3g -PKG_VERSION:= 2013.1.13 +PKG_VERSION:= 2014.2.15 PKG_RELEASE:= 1 -PKG_MD5SUM:= 2d6fb47ddf62b51733227126fe9227fe +PKG_MD5SUM:= f11d563816249d730a00498983485f3a PKG_DESCR:= ntfs filesystem driver PKG_SECTION:= fs PKG_DEPENDS:= kmod-fuse-fs diff --git a/package/ntfs-3g/patches/patch-libfuse-lite_fusermount_c b/package/ntfs-3g/patches/patch-libfuse-lite_fusermount_c new file mode 100644 index 000000000..eb11b0bf0 --- /dev/null +++ b/package/ntfs-3g/patches/patch-libfuse-lite_fusermount_c @@ -0,0 +1,10 @@ +--- ntfs-3g_ntfsprogs-2014.2.15.orig/libfuse-lite/fusermount.c 2014-02-15 15:07:52.000000000 +0100 ++++ ntfs-3g_ntfsprogs-2014.2.15/libfuse-lite/fusermount.c 2014-03-23 09:53:10.000000000 +0100 +@@ -18,6 +18,7 @@ + #include <getopt.h> + #include <errno.h> + #include <fcntl.h> ++#include <paths.h> + #include <pwd.h> + + #ifdef __SOLARIS__ diff --git a/package/ntfs-3g/patches/patch-libfuse-lite_mount_util_c b/package/ntfs-3g/patches/patch-libfuse-lite_mount_util_c new file mode 100644 index 000000000..1a3d8e8c5 --- /dev/null +++ b/package/ntfs-3g/patches/patch-libfuse-lite_mount_util_c @@ -0,0 +1,10 @@ +--- ntfs-3g_ntfsprogs-2014.2.15.orig/libfuse-lite/mount_util.c 2014-02-15 15:07:52.000000000 +0100 ++++ ntfs-3g_ntfsprogs-2014.2.15/libfuse-lite/mount_util.c 2014-03-23 09:54:19.000000000 +0100 +@@ -12,6 +12,7 @@ + #include <unistd.h> + #include <stdlib.h> + #include <string.h> ++#include <paths.h> + #include <dirent.h> + #include <errno.h> + #include <limits.h> diff --git a/package/olsrd/Makefile b/package/olsrd/Makefile index 20cb90ee2..5a6b1c9e7 100644 --- a/package/olsrd/Makefile +++ b/package/olsrd/Makefile @@ -4,9 +4,9 @@ include ${TOPDIR}/rules.mk PKG_NAME:= olsrd -PKG_VERSION:= 0.6.0 +PKG_VERSION:= 0.6.6.1 PKG_RELEASE:= 1 -PKG_MD5SUM:= 84e9295457cab50539f776118939b343 +PKG_MD5SUM:= 65181a5280391d69411908c186fd0c1f PKG_DESCR:= Optimized Link State Routing protocol PKG_SECTION:= wifi PKG_URL:= http://www.olsr.org/ @@ -33,19 +33,17 @@ $(eval $(call PKG_template,OLSRD,olsrd,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPEN $(eval $(call PKG_template,OLSRD_MOD_DYN_GW,olsrd-mod-dyn-gw,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) $(eval $(call PKG_template,OLSRD_MOD_HTTPINFO,olsrd-mod-httpinfo,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) $(eval $(call PKG_template,OLSRD_MOD_NAMESERVICE,olsrd-mod-nameservice,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) -$(eval $(call PKG_template,OLSRD_MOD_TAS,olsrd-mod-tas,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) $(eval $(call PKG_mod_template,OLSRD_MOD_DYN_GW,dyn_gw)) $(eval $(call PKG_mod_template,OLSRD_MOD_HTTPINFO,httpinfo)) $(eval $(call PKG_mod_template,OLSRD_MOD_NAMESERVICE,nameservice)) -$(eval $(call PKG_mod_template,OLSRD_MOD_TAS,tas)) CONFIG_STYLE:= manual -TARGET_CFLAGS+= -fPIC +TARGET_CFLAGS+= -fPIC -D_GNU_SOURCE ALL_TARGET+= libs INSTALL_TARGET+= install_libs -MAKE_ENV+= OS="linux" NODEBUG=1 STRIP="true" OFLAGS="${TARGET_CFLAGS}" +MAKE_ENV+= OS="linux" DEBUG=0 STRIP="true" OFLAGS="${TARGET_CFLAGS}" prefix="/usr" post-install: ${INSTALL_MODS_y} ${INSTALL_MODS_m} ${INSTALL_DIR} ${IDIR_OLSRD}/usr/sbin ${IDIR_OLSRD}/etc diff --git a/package/olsrd/patches/patch-Makefile b/package/olsrd/patches/patch-Makefile deleted file mode 100644 index 1e0318707..000000000 --- a/package/olsrd/patches/patch-Makefile +++ /dev/null @@ -1,11 +0,0 @@ ---- olsrd-0.6.0.orig/Makefile 2010-05-13 12:52:55.000000000 +0200 -+++ olsrd-0.6.0/Makefile 2010-10-10 14:34:11.000000000 +0200 -@@ -144,7 +144,7 @@ rpm: - - # This is quite ugly but at least it works - ifeq ($(OS),linux) --SUBDIRS = $(notdir $(shell find lib -maxdepth 2 -name Makefile -not -path lib/Makefile -printf "%h\n"|sort)) -+SUBDIRS = arprefresh bmf dot_draw dyn_gw dyn_gw_plain httpinfo mini nameservice pgraph quagga secure tas txtinfo - else - ifeq ($(OS),win32) - SUBDIRS := dot_draw httpinfo mini pgraph secure txtinfo diff --git a/package/olsrd/patches/patch-make_Makefile_linux b/package/olsrd/patches/patch-make_Makefile_linux deleted file mode 100644 index d3ca1cdee..000000000 --- a/package/olsrd/patches/patch-make_Makefile_linux +++ /dev/null @@ -1,23 +0,0 @@ -$Id: update-patches 24 2008-08-31 14:56:13Z wbx $ ---- olsrd-0.6.0.orig/make/Makefile.linux 2010-03-31 19:03:53.000000000 +0200 -+++ olsrd-0.6.0/make/Makefile.linux 2010-10-10 14:34:11.000000000 +0200 -@@ -4,7 +4,7 @@ - - ARCH := $(shell uname -m) - DESTDIR ?= --LIBDIR = $(DESTDIR)$(shell if [ "$(ARCH)" = "x86_64" -a -d "/usr/lib64" ]; then echo "/usr/lib64"; else echo "/usr/lib"; fi) -+LIBDIR = $(DESTDIR)/usr/lib - - SRCS += $(wildcard src/linux/*.c src/unix/*.c) - HDRS += $(wildcard src/linux/*.h src/unix/*.h) -@@ -13,8 +13,8 @@ CPPFLAGS += -Dlinux -DLINUX_NETLINK_ROU - LIBS += - - PLUGIN_FULLNAME ?= $(PLUGIN_NAME).so.$(PLUGIN_VER) --INSTALL_LIB = install -D -m 755 $(PLUGIN_FULLNAME) $(LIBDIR)/$(PLUGIN_FULLNAME); \ -- /sbin/ldconfig -n $(LIBDIR) -+INSTALL_LIB = install -d -m 755 $(LIBDIR); \ -+ install -m 755 $(PLUGIN_FULLNAME) $(LIBDIR)/$(PLUGIN_FULLNAME); - - ifdef OLSRD_PLUGIN - GENERATE_PIC = true diff --git a/package/olsrd/patches/patch-src_unix_ifnet_c b/package/olsrd/patches/patch-src_unix_ifnet_c deleted file mode 100644 index 67705012b..000000000 --- a/package/olsrd/patches/patch-src_unix_ifnet_c +++ /dev/null @@ -1,13 +0,0 @@ ---- olsrd-0.6.0.orig/src/unix/ifnet.c 2010-04-22 17:11:11.000000000 +0200 -+++ olsrd-0.6.0/src/unix/ifnet.c 2010-10-10 14:34:54.000000000 +0200 -@@ -547,10 +547,8 @@ chk_if_up(struct olsr_if *iface, int deb - struct ifreq ifr; - union olsr_ip_addr null_addr; - size_t name_size; --#ifdef linux - int precedence = IPTOS_PREC(olsr_cnf->tos); - int tos_bits = IPTOS_TOS(olsr_cnf->tos); --#endif - - if (iface->host_emul) - return -1; diff --git a/package/openssh/Makefile b/package/openssh/Makefile index 409e63c0a..4d0c4e9da 100644 --- a/package/openssh/Makefile +++ b/package/openssh/Makefile @@ -4,9 +4,9 @@ include ${TOPDIR}/rules.mk PKG_NAME:= openssh -PKG_VERSION:= 6.5p1 +PKG_VERSION:= 6.6p1 PKG_RELEASE:= 1 -PKG_MD5SUM:= a084e7272b8cbd25afe0f5dce4802fef +PKG_MD5SUM:= 3e9800e6bca1fbac0eea4d41baa7f239 PKG_DESCR:= OpenSSH PKG_SECTION:= net/security PKG_BUILDDEP:= zlib openssl diff --git a/package/openssh/patches/patch-digest_c b/package/openssh/patches/patch-digest-openssl_c index feead7711..dc8aeb4f6 100644 --- a/package/openssh/patches/patch-digest_c +++ b/package/openssh/patches/patch-digest-openssl_c @@ -1,5 +1,5 @@ ---- openssh-6.5p1.orig/digest.c 2014-01-20 02:41:53.000000000 +0100 -+++ openssh-6.5p1/digest.c 2014-02-11 17:41:23.000000000 +0100 +--- openssh-6.6p1.orig/digest-openssl.c 2014-02-04 01:25:45.000000000 +0100 ++++ openssh-6.6p1/digest-openssl.c 2014-03-24 13:42:01.000000000 +0100 @@ -44,7 +44,9 @@ struct ssh_digest { /* NB. Indexed directly by algorithm number */ const struct ssh_digest digests[] = { diff --git a/package/openssh/patches/patch-mac_c b/package/openssh/patches/patch-mac_c deleted file mode 100644 index 7812de4b2..000000000 --- a/package/openssh/patches/patch-mac_c +++ /dev/null @@ -1,24 +0,0 @@ -diff -Nur openssh-6.2p1.orig/mac.c openssh-6.2p1/mac.c ---- openssh-6.5p1.orig/mac.c 2014-01-10 00:37:05.000000000 +0100 -+++ openssh-6.5p1/mac.c 2014-02-11 15:26:16.000000000 +0100 -@@ -70,8 +70,10 @@ static const struct macalg macs[] = { - #endif - { "hmac-md5", SSH_EVP, EVP_md5, 0, 0, 0, 0 }, - { "hmac-md5-96", SSH_EVP, EVP_md5, 96, 0, 0, 0 }, -+#ifndef OPENSSL_NO_RIPEMD - { "hmac-ripemd160", SSH_EVP, EVP_ripemd160, 0, 0, 0, 0 }, - { "hmac-ripemd160@openssh.com", SSH_EVP, EVP_ripemd160, 0, 0, 0, 0 }, -+#endif - { "umac-64@openssh.com", SSH_UMAC, NULL, 0, 128, 64, 0 }, - { "umac-128@openssh.com", SSH_UMAC128, NULL, 0, 128, 128, 0 }, - -@@ -84,7 +86,9 @@ static const struct macalg macs[] = { - #endif - { "hmac-md5-etm@openssh.com", SSH_EVP, EVP_md5, 0, 0, 0, 1 }, - { "hmac-md5-96-etm@openssh.com", SSH_EVP, EVP_md5, 96, 0, 0, 1 }, -+#ifndef OPENSSL_NO_RIPEMD - { "hmac-ripemd160-etm@openssh.com", SSH_EVP, EVP_ripemd160, 0, 0, 0, 1 }, -+#endif - { "umac-64-etm@openssh.com", SSH_UMAC, NULL, 0, 128, 64, 1 }, - { "umac-128-etm@openssh.com", SSH_UMAC128, NULL, 0, 128, 128, 1 }, - diff --git a/package/openswan/Makefile b/package/openswan/Makefile index efea0b004..a2ed17906 100644 --- a/package/openswan/Makefile +++ b/package/openswan/Makefile @@ -20,6 +20,9 @@ PKG_URL:= http://www.openswan.org/ PKG_SITES:= http://www.openswan.org/download/ PKG_NOPARALLEL:= 1 +# GLOB_BRACE usage +PKG_LIBC_DEPENDS:= uclibc glibc + include ${TOPDIR}/mk/package.mk $(eval $(call PKG_template,OPENSWAN,openswan,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) diff --git a/package/openswan/patches/patch-include_arpa_nameser_h b/package/openswan/patches/patch-include_arpa_nameser_h new file mode 100644 index 000000000..a59cd15b2 --- /dev/null +++ b/package/openswan/patches/patch-include_arpa_nameser_h @@ -0,0 +1,128 @@ +--- openswan-2.6.38.orig/include/arpa/nameser.h 2012-03-23 22:33:43.000000000 +0100 ++++ openswan-2.6.38/include/arpa/nameser.h 2014-03-26 19:50:18.000000000 +0100 +@@ -55,7 +55,6 @@ + + #include <sys/param.h> + #include <sys/types.h> +-#include <sys/cdefs.h> + + /* + * Revision information. This is the release date in YYYYMMDD format. +@@ -505,62 +504,66 @@ typedef enum __ns_cert_types { + #define ns_makecanon __ns_makecanon + #define ns_samename __ns_samename + +-__BEGIN_DECLS +-int ns_msg_getflag __P((ns_msg, int)); +-u_int ns_get16 __P((const u_char *)); +-u_long ns_get32 __P((const u_char *)); +-void ns_put16 __P((u_int, u_char *)); +-void ns_put32 __P((u_long, u_char *)); +-int ns_initparse __P((const u_char *, int, ns_msg *)); +-int ns_skiprr __P((const u_char *, const u_char *, ns_sect, int)); +-int ns_parserr __P((ns_msg *, ns_sect, int, ns_rr *)); +-int ns_sprintrr __P((const ns_msg *, const ns_rr *, +- const char *, const char *, char *, size_t)); +-int ns_sprintrrf __P((const u_char *, size_t, const char *, ++#ifdef __cplusplus ++extern "C" { ++#endif ++int ns_msg_getflag (ns_msg, int); ++u_int ns_get16 (const u_char *); ++u_long ns_get32 (const u_char *); ++void ns_put16 (u_int, u_char *); ++void ns_put32 (u_long, u_char *); ++int ns_initparse (const u_char *, int, ns_msg *); ++int ns_skiprr (const u_char *, const u_char *, ns_sect, int); ++int ns_parserr (ns_msg *, ns_sect, int, ns_rr *); ++int ns_sprintrr (const ns_msg *, const ns_rr *, ++ const char *, const char *, char *, size_t); ++int ns_sprintrrf (const u_char *, size_t, const char *, + ns_class, ns_type, u_long, const u_char *, + size_t, const char *, const char *, +- char *, size_t)); +-int ns_format_ttl __P((u_long, char *, size_t)); +-int ns_parse_ttl __P((const char *, u_long *)); +-u_int32_t ns_datetosecs __P((const char *cp, int *errp)); +-int ns_name_ntol __P((const u_char *, u_char *, size_t)); +-int ns_name_ntop __P((const u_char *, char *, size_t)); +-int ns_name_pton __P((const char *, u_char *, size_t)); +-int ns_name_unpack __P((const u_char *, const u_char *, +- const u_char *, u_char *, size_t)); +-int ns_name_pack __P((const u_char *, u_char *, int, +- const u_char **, const u_char **)); +-int ns_name_uncompress __P((const u_char *, const u_char *, +- const u_char *, char *, size_t)); +-int ns_name_compress __P((const char *, u_char *, size_t, +- const u_char **, const u_char **)); +-int ns_name_skip __P((const u_char **, const u_char *)); +-void ns_name_rollback __P((const u_char *, const u_char **, +- const u_char **)); +-int ns_sign __P((u_char *, int *, int, int, void *, +- const u_char *, int, u_char *, int *, time_t)); +-int ns_sign2 __P((u_char *, int *, int, int, void *, ++ char *, size_t); ++int ns_format_ttl (u_long, char *, size_t); ++int ns_parse_ttl (const char *, u_long *); ++u_int32_t ns_datetosecs (const char *cp, int *errp); ++int ns_name_ntol (const u_char *, u_char *, size_t); ++int ns_name_ntop (const u_char *, char *, size_t); ++int ns_name_pton (const char *, u_char *, size_t); ++int ns_name_unpack (const u_char *, const u_char *, ++ const u_char *, u_char *, size_t); ++int ns_name_pack (const u_char *, u_char *, int, ++ const u_char **, const u_char **); ++int ns_name_uncompress (const u_char *, const u_char *, ++ const u_char *, char *, size_t); ++int ns_name_compress (const char *, u_char *, size_t, ++ const u_char **, const u_char **); ++int ns_name_skip (const u_char **, const u_char *); ++void ns_name_rollback (const u_char *, const u_char **, ++ const u_char **); ++int ns_sign (u_char *, int *, int, int, void *, ++ const u_char *, int, u_char *, int *, time_t); ++int ns_sign2 (u_char *, int *, int, int, void *, + const u_char *, int, u_char *, int *, time_t, +- u_char **, u_char **)); +-int ns_sign_tcp __P((u_char *, int *, int, int, +- ns_tcp_tsig_state *, int)); +-int ns_sign_tcp2 __P((u_char *, int *, int, int, ++ u_char **, u_char **); ++int ns_sign_tcp (u_char *, int *, int, int, ++ ns_tcp_tsig_state *, int); ++int ns_sign_tcp2 (u_char *, int *, int, int, + ns_tcp_tsig_state *, int, +- u_char **, u_char **)); +-int ns_sign_tcp_init __P((void *, const u_char *, int, +- ns_tcp_tsig_state *)); +-u_char *ns_find_tsig __P((u_char *, u_char *)); +-int ns_verify __P((u_char *, int *, void *, ++ u_char **, u_char **); ++int ns_sign_tcp_init (void *, const u_char *, int, ++ ns_tcp_tsig_state *); ++u_char *ns_find_tsig (u_char *, u_char *); ++int ns_verify (u_char *, int *, void *, + const u_char *, int, u_char *, int *, +- time_t *, int)); +-int ns_verify_tcp __P((u_char *, int *, ns_tcp_tsig_state *, int)); +-int ns_verify_tcp_init __P((void *, const u_char *, int, +- ns_tcp_tsig_state *)); +-int ns_samedomain __P((const char *, const char *)); +-int ns_subdomain __P((const char *, const char *)); +-int ns_makecanon __P((const char *, char *, size_t)); +-int ns_samename __P((const char *, const char *)); +-__END_DECLS ++ time_t *, int); ++int ns_verify_tcp (u_char *, int *, ns_tcp_tsig_state *, int); ++int ns_verify_tcp_init (void *, const u_char *, int, ++ ns_tcp_tsig_state *); ++int ns_samedomain (const char *, const char *); ++int ns_subdomain (const char *, const char *); ++int ns_makecanon (const char *, char *, size_t); ++int ns_samename (const char *, const char *); ++#ifdef __cplusplus ++} ++#endif + + #ifdef BIND_4_COMPAT + #include <arpa/nameser_compat.h> diff --git a/package/openswan/patches/patch-lib_libipsecconf_cmp_c b/package/openswan/patches/patch-lib_libipsecconf_cmp_c new file mode 100644 index 000000000..c9e93a241 --- /dev/null +++ b/package/openswan/patches/patch-lib_libipsecconf_cmp_c @@ -0,0 +1,11 @@ +--- openswan-2.6.38.orig/lib/libipsecconf/cmp.c 2012-03-23 22:33:43.000000000 +0100 ++++ openswan-2.6.38/lib/libipsecconf/cmp.c 2014-03-27 08:42:09.000000000 +0100 +@@ -15,7 +15,7 @@ + * + */ + +-#include <sys/queue.h> ++#include "queue.h" + #include <string.h> + + #include "ipsecconf/keywords.h" diff --git a/package/openswan/patches/patch-lib_libipsecconf_confread_c b/package/openswan/patches/patch-lib_libipsecconf_confread_c new file mode 100644 index 000000000..5d28ed79f --- /dev/null +++ b/package/openswan/patches/patch-lib_libipsecconf_confread_c @@ -0,0 +1,11 @@ +--- openswan-2.6.38.orig/lib/libipsecconf/confread.c 2012-03-23 22:33:43.000000000 +0100 ++++ openswan-2.6.38/lib/libipsecconf/confread.c 2014-03-26 21:15:56.000000000 +0100 +@@ -20,7 +20,7 @@ + #include <string.h> + #include <limits.h> + #include <assert.h> +-#include <sys/queue.h> ++#include "queue.h" + + #include "oswalloc.h" + diff --git a/package/openswan/patches/patch-lib_libipsecconf_confwrite_c b/package/openswan/patches/patch-lib_libipsecconf_confwrite_c new file mode 100644 index 000000000..d3fced0b3 --- /dev/null +++ b/package/openswan/patches/patch-lib_libipsecconf_confwrite_c @@ -0,0 +1,11 @@ +--- openswan-2.6.38.orig/lib/libipsecconf/confwrite.c 2012-03-23 22:33:43.000000000 +0100 ++++ openswan-2.6.38/lib/libipsecconf/confwrite.c 2014-03-26 21:19:22.000000000 +0100 +@@ -18,7 +18,7 @@ + #include <string.h> + #include <limits.h> + #include <assert.h> +-#include <sys/queue.h> ++#include "queue.h" + + #include "ipsecconf/parser.h" + #include "ipsecconf/confread.h" diff --git a/package/openswan/patches/patch-lib_libipsecconf_parser_l b/package/openswan/patches/patch-lib_libipsecconf_parser_l new file mode 100644 index 000000000..7c4bff2d3 --- /dev/null +++ b/package/openswan/patches/patch-lib_libipsecconf_parser_l @@ -0,0 +1,11 @@ +--- openswan-2.6.38.orig/lib/libipsecconf/parser.l 2012-03-23 22:33:43.000000000 +0100 ++++ openswan-2.6.38/lib/libipsecconf/parser.l 2014-03-27 08:47:12.000000000 +0100 +@@ -19,7 +19,7 @@ + * + */ + +-#include <sys/queue.h> ++#include "queue.h" + #include <string.h> + #include <stdlib.h> + #include <assert.h> diff --git a/package/openswan/patches/patch-lib_libipsecconf_parser_y b/package/openswan/patches/patch-lib_libipsecconf_parser_y new file mode 100644 index 000000000..81037eb64 --- /dev/null +++ b/package/openswan/patches/patch-lib_libipsecconf_parser_y @@ -0,0 +1,11 @@ +--- openswan-2.6.38.orig/lib/libipsecconf/parser.y 2012-03-23 22:33:43.000000000 +0100 ++++ openswan-2.6.38/lib/libipsecconf/parser.y 2014-03-27 08:44:37.000000000 +0100 +@@ -15,7 +15,7 @@ + * + */ + +-#include <sys/queue.h> ++#include "queue.h" + #include <stdio.h> + #include <stdlib.h> + #include <string.h> diff --git a/package/openswan/patches/patch-lib_libipsecconf_starterwhack_c b/package/openswan/patches/patch-lib_libipsecconf_starterwhack_c new file mode 100644 index 000000000..2bc7e6910 --- /dev/null +++ b/package/openswan/patches/patch-lib_libipsecconf_starterwhack_c @@ -0,0 +1,11 @@ +--- openswan-2.6.38.orig/lib/libipsecconf/starterwhack.c 2012-03-23 22:33:43.000000000 +0100 ++++ openswan-2.6.38/lib/libipsecconf/starterwhack.c 2014-03-26 21:21:22.000000000 +0100 +@@ -17,7 +17,7 @@ + #include <sys/types.h> + #include <sys/socket.h> + #include <sys/un.h> +-#include <sys/queue.h> ++#include "queue.h" + #include <stddef.h> + #include <stdio.h> + #include <stdlib.h> diff --git a/package/openswan/patches/patch-lib_libopenswan_kernel_alg_c b/package/openswan/patches/patch-lib_libopenswan_kernel_alg_c new file mode 100644 index 000000000..36cf64ee4 --- /dev/null +++ b/package/openswan/patches/patch-lib_libopenswan_kernel_alg_c @@ -0,0 +1,11 @@ +--- openswan-2.6.38.orig/lib/libopenswan/kernel_alg.c 2012-03-23 22:33:43.000000000 +0100 ++++ openswan-2.6.38/lib/libopenswan/kernel_alg.c 2014-03-26 20:04:18.000000000 +0100 +@@ -27,7 +27,7 @@ + #include <netinet/in.h> + #include <arpa/inet.h> + #include <unistd.h> +-#include <sys/queue.h> ++#include "queue.h" + + #include <openswan.h> + diff --git a/package/openswan/patches/patch-lib_libopenswan_oswlog_c b/package/openswan/patches/patch-lib_libopenswan_oswlog_c new file mode 100644 index 000000000..a093b4e1b --- /dev/null +++ b/package/openswan/patches/patch-lib_libopenswan_oswlog_c @@ -0,0 +1,11 @@ +--- openswan-2.6.38.orig/lib/libopenswan/oswlog.c 2012-03-23 22:33:43.000000000 +0100 ++++ openswan-2.6.38/lib/libopenswan/oswlog.c 2014-03-26 21:09:43.000000000 +0100 +@@ -24,7 +24,7 @@ + #include <string.h> + #include <unistd.h> + #include <signal.h> /* used only if MSG_NOSIGNAL not defined */ +-#include <sys/queue.h> ++#include "queue.h" + #include <libgen.h> + #include <sys/stat.h> + #include <sys/types.h> diff --git a/package/openswan/src/ports/linux/include/queue.h b/package/openswan/src/ports/linux/include/queue.h new file mode 100644 index 000000000..daf4553d3 --- /dev/null +++ b/package/openswan/src/ports/linux/include/queue.h @@ -0,0 +1,574 @@ +/* + * Copyright (c) 1991, 1993 + * The Regents of the University of California. All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * 3. Neither the name of the University nor the names of its contributors + * may be used to endorse or promote products derived from this software + * without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * @(#)queue.h 8.5 (Berkeley) 8/20/94 + */ + +#ifndef _SYS_QUEUE_H_ +#define _SYS_QUEUE_H_ + +/* + * This file defines five types of data structures: singly-linked lists, + * lists, simple queues, tail queues, and circular queues. + * + * A singly-linked list is headed by a single forward pointer. The + * elements are singly linked for minimum space and pointer manipulation + * overhead at the expense of O(n) removal for arbitrary elements. New + * elements can be added to the list after an existing element or at the + * head of the list. Elements being removed from the head of the list + * should use the explicit macro for this purpose for optimum + * efficiency. A singly-linked list may only be traversed in the forward + * direction. Singly-linked lists are ideal for applications with large + * datasets and few or no removals or for implementing a LIFO queue. + * + * A list is headed by a single forward pointer (or an array of forward + * pointers for a hash table header). The elements are doubly linked + * so that an arbitrary element can be removed without a need to + * traverse the list. New elements can be added to the list before + * or after an existing element or at the head of the list. A list + * may only be traversed in the forward direction. + * + * A simple queue is headed by a pair of pointers, one the head of the + * list and the other to the tail of the list. The elements are singly + * linked to save space, so elements can only be removed from the + * head of the list. New elements can be added to the list after + * an existing element, at the head of the list, or at the end of the + * list. A simple queue may only be traversed in the forward direction. + * + * A tail queue is headed by a pair of pointers, one to the head of the + * list and the other to the tail of the list. The elements are doubly + * linked so that an arbitrary element can be removed without a need to + * traverse the list. New elements can be added to the list before or + * after an existing element, at the head of the list, or at the end of + * the list. A tail queue may be traversed in either direction. + * + * A circle queue is headed by a pair of pointers, one to the head of the + * list and the other to the tail of the list. The elements are doubly + * linked so that an arbitrary element can be removed without a need to + * traverse the list. New elements can be added to the list before or after + * an existing element, at the head of the list, or at the end of the list. + * A circle queue may be traversed in either direction, but has a more + * complex end of list detection. + * + * For details on the use of these macros, see the queue(3) manual page. + */ + +/* + * List definitions. + */ +#define LIST_HEAD(name, type) \ +struct name { \ + struct type *lh_first; /* first element */ \ +} + +#define LIST_HEAD_INITIALIZER(head) \ + { NULL } + +#define LIST_ENTRY(type) \ +struct { \ + struct type *le_next; /* next element */ \ + struct type **le_prev; /* address of previous next element */ \ +} + +/* + * List functions. + */ +#define LIST_INIT(head) do { \ + (head)->lh_first = NULL; \ +} while (/*CONSTCOND*/0) + +#define LIST_INSERT_AFTER(listelm, elm, field) do { \ + if (((elm)->field.le_next = (listelm)->field.le_next) != NULL) \ + (listelm)->field.le_next->field.le_prev = \ + &(elm)->field.le_next; \ + (listelm)->field.le_next = (elm); \ + (elm)->field.le_prev = &(listelm)->field.le_next; \ +} while (/*CONSTCOND*/0) + +#define LIST_INSERT_BEFORE(listelm, elm, field) do { \ + (elm)->field.le_prev = (listelm)->field.le_prev; \ + (elm)->field.le_next = (listelm); \ + *(listelm)->field.le_prev = (elm); \ + (listelm)->field.le_prev = &(elm)->field.le_next; \ +} while (/*CONSTCOND*/0) + +#define LIST_INSERT_HEAD(head, elm, field) do { \ + if (((elm)->field.le_next = (head)->lh_first) != NULL) \ + (head)->lh_first->field.le_prev = &(elm)->field.le_next;\ + (head)->lh_first = (elm); \ + (elm)->field.le_prev = &(head)->lh_first; \ +} while (/*CONSTCOND*/0) + +#define LIST_REMOVE(elm, field) do { \ + if ((elm)->field.le_next != NULL) \ + (elm)->field.le_next->field.le_prev = \ + (elm)->field.le_prev; \ + *(elm)->field.le_prev = (elm)->field.le_next; \ +} while (/*CONSTCOND*/0) + +#define LIST_FOREACH(var, head, field) \ + for ((var) = ((head)->lh_first); \ + (var); \ + (var) = ((var)->field.le_next)) + +/* + * List access methods. + */ +#define LIST_EMPTY(head) ((head)->lh_first == NULL) +#define LIST_FIRST(head) ((head)->lh_first) +#define LIST_NEXT(elm, field) ((elm)->field.le_next) + + +/* + * Singly-linked List definitions. + */ +#define SLIST_HEAD(name, type) \ +struct name { \ + struct type *slh_first; /* first element */ \ +} + +#define SLIST_HEAD_INITIALIZER(head) \ + { NULL } + +#define SLIST_ENTRY(type) \ +struct { \ + struct type *sle_next; /* next element */ \ +} + +/* + * Singly-linked List functions. + */ +#define SLIST_INIT(head) do { \ + (head)->slh_first = NULL; \ +} while (/*CONSTCOND*/0) + +#define SLIST_INSERT_AFTER(slistelm, elm, field) do { \ + (elm)->field.sle_next = (slistelm)->field.sle_next; \ + (slistelm)->field.sle_next = (elm); \ +} while (/*CONSTCOND*/0) + +#define SLIST_INSERT_HEAD(head, elm, field) do { \ + (elm)->field.sle_next = (head)->slh_first; \ + (head)->slh_first = (elm); \ +} while (/*CONSTCOND*/0) + +#define SLIST_REMOVE_HEAD(head, field) do { \ + (head)->slh_first = (head)->slh_first->field.sle_next; \ +} while (/*CONSTCOND*/0) + +#define SLIST_REMOVE(head, elm, type, field) do { \ + if ((head)->slh_first == (elm)) { \ + SLIST_REMOVE_HEAD((head), field); \ + } \ + else { \ + struct type *curelm = (head)->slh_first; \ + while(curelm->field.sle_next != (elm)) \ + curelm = curelm->field.sle_next; \ + curelm->field.sle_next = \ + curelm->field.sle_next->field.sle_next; \ + } \ +} while (/*CONSTCOND*/0) + +#define SLIST_FOREACH(var, head, field) \ + for((var) = (head)->slh_first; (var); (var) = (var)->field.sle_next) + +/* + * Singly-linked List access methods. + */ +#define SLIST_EMPTY(head) ((head)->slh_first == NULL) +#define SLIST_FIRST(head) ((head)->slh_first) +#define SLIST_NEXT(elm, field) ((elm)->field.sle_next) + + +/* + * Singly-linked Tail queue declarations. + */ +#define STAILQ_HEAD(name, type) \ +struct name { \ + struct type *stqh_first; /* first element */ \ + struct type **stqh_last; /* addr of last next element */ \ +} + +#define STAILQ_HEAD_INITIALIZER(head) \ + { NULL, &(head).stqh_first } + +#define STAILQ_ENTRY(type) \ +struct { \ + struct type *stqe_next; /* next element */ \ +} + +/* + * Singly-linked Tail queue functions. + */ +#define STAILQ_INIT(head) do { \ + (head)->stqh_first = NULL; \ + (head)->stqh_last = &(head)->stqh_first; \ +} while (/*CONSTCOND*/0) + +#define STAILQ_INSERT_HEAD(head, elm, field) do { \ + if (((elm)->field.stqe_next = (head)->stqh_first) == NULL) \ + (head)->stqh_last = &(elm)->field.stqe_next; \ + (head)->stqh_first = (elm); \ +} while (/*CONSTCOND*/0) + +#define STAILQ_INSERT_TAIL(head, elm, field) do { \ + (elm)->field.stqe_next = NULL; \ + *(head)->stqh_last = (elm); \ + (head)->stqh_last = &(elm)->field.stqe_next; \ +} while (/*CONSTCOND*/0) + +#define STAILQ_INSERT_AFTER(head, listelm, elm, field) do { \ + if (((elm)->field.stqe_next = (listelm)->field.stqe_next) == NULL)\ + (head)->stqh_last = &(elm)->field.stqe_next; \ + (listelm)->field.stqe_next = (elm); \ +} while (/*CONSTCOND*/0) + +#define STAILQ_REMOVE_HEAD(head, field) do { \ + if (((head)->stqh_first = (head)->stqh_first->field.stqe_next) == NULL) \ + (head)->stqh_last = &(head)->stqh_first; \ +} while (/*CONSTCOND*/0) + +#define STAILQ_REMOVE(head, elm, type, field) do { \ + if ((head)->stqh_first == (elm)) { \ + STAILQ_REMOVE_HEAD((head), field); \ + } else { \ + struct type *curelm = (head)->stqh_first; \ + while (curelm->field.stqe_next != (elm)) \ + curelm = curelm->field.stqe_next; \ + if ((curelm->field.stqe_next = \ + curelm->field.stqe_next->field.stqe_next) == NULL) \ + (head)->stqh_last = &(curelm)->field.stqe_next; \ + } \ +} while (/*CONSTCOND*/0) + +#define STAILQ_FOREACH(var, head, field) \ + for ((var) = ((head)->stqh_first); \ + (var); \ + (var) = ((var)->field.stqe_next)) + +#define STAILQ_CONCAT(head1, head2) do { \ + if (!STAILQ_EMPTY((head2))) { \ + *(head1)->stqh_last = (head2)->stqh_first; \ + (head1)->stqh_last = (head2)->stqh_last; \ + STAILQ_INIT((head2)); \ + } \ +} while (/*CONSTCOND*/0) + +/* + * Singly-linked Tail queue access methods. + */ +#define STAILQ_EMPTY(head) ((head)->stqh_first == NULL) +#define STAILQ_FIRST(head) ((head)->stqh_first) +#define STAILQ_NEXT(elm, field) ((elm)->field.stqe_next) + + +/* + * Simple queue definitions. + */ +#define SIMPLEQ_HEAD(name, type) \ +struct name { \ + struct type *sqh_first; /* first element */ \ + struct type **sqh_last; /* addr of last next element */ \ +} + +#define SIMPLEQ_HEAD_INITIALIZER(head) \ + { NULL, &(head).sqh_first } + +#define SIMPLEQ_ENTRY(type) \ +struct { \ + struct type *sqe_next; /* next element */ \ +} + +/* + * Simple queue functions. + */ +#define SIMPLEQ_INIT(head) do { \ + (head)->sqh_first = NULL; \ + (head)->sqh_last = &(head)->sqh_first; \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_INSERT_HEAD(head, elm, field) do { \ + if (((elm)->field.sqe_next = (head)->sqh_first) == NULL) \ + (head)->sqh_last = &(elm)->field.sqe_next; \ + (head)->sqh_first = (elm); \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_INSERT_TAIL(head, elm, field) do { \ + (elm)->field.sqe_next = NULL; \ + *(head)->sqh_last = (elm); \ + (head)->sqh_last = &(elm)->field.sqe_next; \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_INSERT_AFTER(head, listelm, elm, field) do { \ + if (((elm)->field.sqe_next = (listelm)->field.sqe_next) == NULL)\ + (head)->sqh_last = &(elm)->field.sqe_next; \ + (listelm)->field.sqe_next = (elm); \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_REMOVE_HEAD(head, field) do { \ + if (((head)->sqh_first = (head)->sqh_first->field.sqe_next) == NULL) \ + (head)->sqh_last = &(head)->sqh_first; \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_REMOVE(head, elm, type, field) do { \ + if ((head)->sqh_first == (elm)) { \ + SIMPLEQ_REMOVE_HEAD((head), field); \ + } else { \ + struct type *curelm = (head)->sqh_first; \ + while (curelm->field.sqe_next != (elm)) \ + curelm = curelm->field.sqe_next; \ + if ((curelm->field.sqe_next = \ + curelm->field.sqe_next->field.sqe_next) == NULL) \ + (head)->sqh_last = &(curelm)->field.sqe_next; \ + } \ +} while (/*CONSTCOND*/0) + +#define SIMPLEQ_FOREACH(var, head, field) \ + for ((var) = ((head)->sqh_first); \ + (var); \ + (var) = ((var)->field.sqe_next)) + +/* + * Simple queue access methods. + */ +#define SIMPLEQ_EMPTY(head) ((head)->sqh_first == NULL) +#define SIMPLEQ_FIRST(head) ((head)->sqh_first) +#define SIMPLEQ_NEXT(elm, field) ((elm)->field.sqe_next) + + +/* + * Tail queue definitions. + */ +#define _TAILQ_HEAD(name, type, qual) \ +struct name { \ + qual type *tqh_first; /* first element */ \ + qual type *qual *tqh_last; /* addr of last next element */ \ +} +#define TAILQ_HEAD(name, type) _TAILQ_HEAD(name, struct type,) + +#define TAILQ_HEAD_INITIALIZER(head) \ + { NULL, &(head).tqh_first } + +#define _TAILQ_ENTRY(type, qual) \ +struct { \ + qual type *tqe_next; /* next element */ \ + qual type *qual *tqe_prev; /* address of previous next element */\ +} +#define TAILQ_ENTRY(type) _TAILQ_ENTRY(struct type,) + +/* + * Tail queue functions. + */ +#define TAILQ_INIT(head) do { \ + (head)->tqh_first = NULL; \ + (head)->tqh_last = &(head)->tqh_first; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_INSERT_HEAD(head, elm, field) do { \ + if (((elm)->field.tqe_next = (head)->tqh_first) != NULL) \ + (head)->tqh_first->field.tqe_prev = \ + &(elm)->field.tqe_next; \ + else \ + (head)->tqh_last = &(elm)->field.tqe_next; \ + (head)->tqh_first = (elm); \ + (elm)->field.tqe_prev = &(head)->tqh_first; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_INSERT_TAIL(head, elm, field) do { \ + (elm)->field.tqe_next = NULL; \ + (elm)->field.tqe_prev = (head)->tqh_last; \ + *(head)->tqh_last = (elm); \ + (head)->tqh_last = &(elm)->field.tqe_next; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_INSERT_AFTER(head, listelm, elm, field) do { \ + if (((elm)->field.tqe_next = (listelm)->field.tqe_next) != NULL)\ + (elm)->field.tqe_next->field.tqe_prev = \ + &(elm)->field.tqe_next; \ + else \ + (head)->tqh_last = &(elm)->field.tqe_next; \ + (listelm)->field.tqe_next = (elm); \ + (elm)->field.tqe_prev = &(listelm)->field.tqe_next; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_INSERT_BEFORE(listelm, elm, field) do { \ + (elm)->field.tqe_prev = (listelm)->field.tqe_prev; \ + (elm)->field.tqe_next = (listelm); \ + *(listelm)->field.tqe_prev = (elm); \ + (listelm)->field.tqe_prev = &(elm)->field.tqe_next; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_REMOVE(head, elm, field) do { \ + if (((elm)->field.tqe_next) != NULL) \ + (elm)->field.tqe_next->field.tqe_prev = \ + (elm)->field.tqe_prev; \ + else \ + (head)->tqh_last = (elm)->field.tqe_prev; \ + *(elm)->field.tqe_prev = (elm)->field.tqe_next; \ +} while (/*CONSTCOND*/0) + +#define TAILQ_FOREACH(var, head, field) \ + for ((var) = ((head)->tqh_first); \ + (var); \ + (var) = ((var)->field.tqe_next)) + +#define TAILQ_FOREACH_REVERSE(var, head, headname, field) \ + for ((var) = (*(((struct headname *)((head)->tqh_last))->tqh_last)); \ + (var); \ + (var) = (*(((struct headname *)((var)->field.tqe_prev))->tqh_last))) + +#define TAILQ_CONCAT(head1, head2, field) do { \ + if (!TAILQ_EMPTY(head2)) { \ + *(head1)->tqh_last = (head2)->tqh_first; \ + (head2)->tqh_first->field.tqe_prev = (head1)->tqh_last; \ + (head1)->tqh_last = (head2)->tqh_last; \ + TAILQ_INIT((head2)); \ + } \ +} while (/*CONSTCOND*/0) + +/* + * Tail queue access methods. + */ +#define TAILQ_EMPTY(head) ((head)->tqh_first == NULL) +#define TAILQ_FIRST(head) ((head)->tqh_first) +#define TAILQ_NEXT(elm, field) ((elm)->field.tqe_next) + +#define TAILQ_LAST(head, headname) \ + (*(((struct headname *)((head)->tqh_last))->tqh_last)) +#define TAILQ_PREV(elm, headname, field) \ + (*(((struct headname *)((elm)->field.tqe_prev))->tqh_last)) + + +/* + * Circular queue definitions. + */ +#define CIRCLEQ_HEAD(name, type) \ +struct name { \ + struct type *cqh_first; /* first element */ \ + struct type *cqh_last; /* last element */ \ +} + +#define CIRCLEQ_HEAD_INITIALIZER(head) \ + { (void *)&head, (void *)&head } + +#define CIRCLEQ_ENTRY(type) \ +struct { \ + struct type *cqe_next; /* next element */ \ + struct type *cqe_prev; /* previous element */ \ +} + +/* + * Circular queue functions. + */ +#define CIRCLEQ_INIT(head) do { \ + (head)->cqh_first = (void *)(head); \ + (head)->cqh_last = (void *)(head); \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_INSERT_AFTER(head, listelm, elm, field) do { \ + (elm)->field.cqe_next = (listelm)->field.cqe_next; \ + (elm)->field.cqe_prev = (listelm); \ + if ((listelm)->field.cqe_next == (void *)(head)) \ + (head)->cqh_last = (elm); \ + else \ + (listelm)->field.cqe_next->field.cqe_prev = (elm); \ + (listelm)->field.cqe_next = (elm); \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_INSERT_BEFORE(head, listelm, elm, field) do { \ + (elm)->field.cqe_next = (listelm); \ + (elm)->field.cqe_prev = (listelm)->field.cqe_prev; \ + if ((listelm)->field.cqe_prev == (void *)(head)) \ + (head)->cqh_first = (elm); \ + else \ + (listelm)->field.cqe_prev->field.cqe_next = (elm); \ + (listelm)->field.cqe_prev = (elm); \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_INSERT_HEAD(head, elm, field) do { \ + (elm)->field.cqe_next = (head)->cqh_first; \ + (elm)->field.cqe_prev = (void *)(head); \ + if ((head)->cqh_last == (void *)(head)) \ + (head)->cqh_last = (elm); \ + else \ + (head)->cqh_first->field.cqe_prev = (elm); \ + (head)->cqh_first = (elm); \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_INSERT_TAIL(head, elm, field) do { \ + (elm)->field.cqe_next = (void *)(head); \ + (elm)->field.cqe_prev = (head)->cqh_last; \ + if ((head)->cqh_first == (void *)(head)) \ + (head)->cqh_first = (elm); \ + else \ + (head)->cqh_last->field.cqe_next = (elm); \ + (head)->cqh_last = (elm); \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_REMOVE(head, elm, field) do { \ + if ((elm)->field.cqe_next == (void *)(head)) \ + (head)->cqh_last = (elm)->field.cqe_prev; \ + else \ + (elm)->field.cqe_next->field.cqe_prev = \ + (elm)->field.cqe_prev; \ + if ((elm)->field.cqe_prev == (void *)(head)) \ + (head)->cqh_first = (elm)->field.cqe_next; \ + else \ + (elm)->field.cqe_prev->field.cqe_next = \ + (elm)->field.cqe_next; \ +} while (/*CONSTCOND*/0) + +#define CIRCLEQ_FOREACH(var, head, field) \ + for ((var) = ((head)->cqh_first); \ + (var) != (const void *)(head); \ + (var) = ((var)->field.cqe_next)) + +#define CIRCLEQ_FOREACH_REVERSE(var, head, field) \ + for ((var) = ((head)->cqh_last); \ + (var) != (const void *)(head); \ + (var) = ((var)->field.cqe_prev)) + +/* + * Circular queue access methods. + */ +#define CIRCLEQ_EMPTY(head) ((head)->cqh_first == (void *)(head)) +#define CIRCLEQ_FIRST(head) ((head)->cqh_first) +#define CIRCLEQ_LAST(head) ((head)->cqh_last) +#define CIRCLEQ_NEXT(elm, field) ((elm)->field.cqe_next) +#define CIRCLEQ_PREV(elm, field) ((elm)->field.cqe_prev) + +#define CIRCLEQ_LOOP_NEXT(head, elm, field) \ + (((elm)->field.cqe_next == (void *)(head)) \ + ? ((head)->cqh_first) \ + : (elm->field.cqe_next)) +#define CIRCLEQ_LOOP_PREV(head, elm, field) \ + (((elm)->field.cqe_prev == (void *)(head)) \ + ? ((head)->cqh_last) \ + : (elm->field.cqe_prev)) + +#endif /* sys/queue.h */ diff --git a/package/openvpn/Makefile b/package/openvpn/Makefile index e3a5e4ac0..5f4073100 100644 --- a/package/openvpn/Makefile +++ b/package/openvpn/Makefile @@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:= openvpn PKG_VERSION:= 2.3.2 -PKG_RELEASE:= 1 +PKG_RELEASE:= 2 PKG_MD5SUM:= 06e5f93dbf13f2c19647ca15ffc23ac1 PKG_DESCR:= Open Source VPN solution using SSL PKG_SECTION:= net/security @@ -14,9 +14,7 @@ PKG_DEPENDS:= kmod-tun ip PKG_URL:= http://openvpn.net/ PKG_SITES:= http://swupdate.openvpn.org/community/releases/ -PKG_FLAVOURS_OPENVPN:= WITH_LZO WITH_MANAGEMENT WITH_HTTPPROXY WITH_SOCKS SERVER CLIENT -PKGFD_SERVER:= deliver server example configuration -PKGFD_CLIENT:= deliver client example configuration +PKG_FLAVOURS_OPENVPN:= WITH_LZO WITH_MANAGEMENT WITH_HTTPPROXY WITH_SOCKS PKGFD_WITH_LZO:= enable LZO compression support PKGFS_WITH_LZO:= liblzo PKGFB_WITH_LZO:= liblzo @@ -77,13 +75,7 @@ CONFIGURE_ARGS+= --disable-plugins \ openvpn-install: ${INSTALL_DIR} $(IDIR_OPENVPN)/usr/sbin $(IDIR_OPENVPN)/etc/openvpn ${INSTALL_BIN} $(WRKINST)/usr/sbin/openvpn $(IDIR_OPENVPN)/usr/sbin/ -ifeq ($(ADK_PACKAGE_OPENVPN_SERVER),y) - $(CP) ./files/server.conf $(IDIR_OPENVPN)/etc/openvpn/ - echo "/etc/openvpn/server.conf" > ./files/openvpn.conffiles -endif -ifeq ($(ADK_PACKAGE_OPENVPN_CLIENT),y) - $(CP) ./files/client.conf $(IDIR_OPENVPN)/etc/openvpn/ - echo "/etc/openvpn/client.conf" > ./files/openvpn.conffiles -endif + $(CP) ./files/server.conf $(IDIR_OPENVPN)/etc/openvpn/server.conf.example + $(CP) ./files/client.conf $(IDIR_OPENVPN)/etc/openvpn/client.conf.example include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/orbit2/Makefile b/package/orbit2/Makefile index 4f656ea59..d256095f8 100644 --- a/package/orbit2/Makefile +++ b/package/orbit2/Makefile @@ -6,11 +6,11 @@ include $(TOPDIR)/rules.mk PKG_NAME:= ORBit2 PKG_VERSION:= 2.14.19 PKG_EXTRAVER:= 2.14 -PKG_RELEASE:= 4 +PKG_RELEASE:= 5 PKG_MD5SUM:= 87c69c56c6d0bdafa4de5e18ae115cc9 PKG_DESCR:= a CORBA 2.4-compliant Object Request Broker PKG_SECTION:= libs -PKG_BUILDDEP:= gettext-tiny glib-host libIDL-host libIDL +PKG_BUILDDEP:= gettext-tiny glib-host libIDL-host glib libIDL PKG_URL:= http://projects.gnome.org/ORBit2/ PKG_SITES:= ftp://ftp.gnome.org//pub/gnome/sources/ORBit2/${PKG_EXTRAVER}/ PKG_LIBNAME:= orbit2 @@ -21,8 +21,10 @@ include $(TOPDIR)/mk/package.mk $(eval $(call PKG_template,ORBIT2,orbit2,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS})) CFLAGS_FOR_BUILD+= $(shell PATH=$(HOST_PATH) libIDL-config-2 --cflags) -LDFLAGS_FOR_BUILD+= $(shell PATH=$(HOST_PATH) libIDL-config-2 --libs) -LDFLAGS_FOR_BUILD+= -lgmodule-2.0 +LDFLAGS_FOR_BUILD+= -static +LIBS_FOR_BUILD:= $(shell PATH=$(HOST_PATH) libIDL-config-2 --libs) +LIBS_FOR_BUILD+= -lgmodule-2.0 -ldl -lpthread -lrt -lglib-2.0 +XAKE_FLAGS+= LIBS_FOR_BUILD="${LIBS_FOR_BUILD}" CONFIGURE_ENV+= ac_cv_alignof_CORBA_octet=1 \ ac_cv_alignof_CORBA_boolean=1 \ ac_cv_alignof_CORBA_char=1 \ diff --git a/package/orbit2/patches/patch-src_idl-compiler_Makefile_in b/package/orbit2/patches/patch-src_idl-compiler_Makefile_in index ec73ef4f3..f46b6169b 100644 --- a/package/orbit2/patches/patch-src_idl-compiler_Makefile_in +++ b/package/orbit2/patches/patch-src_idl-compiler_Makefile_in @@ -1,5 +1,5 @@ --- ORBit2-2.14.19.orig/src/idl-compiler/Makefile.in 2010-09-28 11:39:39.000000000 +0200 -+++ ORBit2-2.14.19/src/idl-compiler/Makefile.in 2011-03-25 20:28:46.000000000 +0100 ++++ ORBit2-2.14.19/src/idl-compiler/Makefile.in 2014-03-15 20:45:12.000000000 +0100 @@ -66,15 +66,13 @@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles @@ -43,3 +43,12 @@ orbit_idl_2_LDADD = \ $(ORBIT_IDL_LIBS) \ +@@ -383,7 +380,7 @@ clean-binPROGRAMS: + rm -f $$list + orbit-idl-2$(EXEEXT): $(orbit_idl_2_OBJECTS) $(orbit_idl_2_DEPENDENCIES) + @rm -f orbit-idl-2$(EXEEXT) +- $(LINK) $(orbit_idl_2_OBJECTS) $(orbit_idl_2_LDADD) $(LIBS) ++ $(LINK) $(orbit_idl_2_OBJECTS) $(orbit_idl_2_LDADD) $(LIBS) $(LIBS_FOR_BUILD) + + mostlyclean-compile: + -rm -f *.$(OBJEXT) diff --git a/package/parted/Makefile b/package/parted/Makefile index 8223abe7b..97ea55df3 100644 --- a/package/parted/Makefile +++ b/package/parted/Makefile @@ -5,11 +5,11 @@ include $(TOPDIR)/rules.mk PKG_NAME:= parted PKG_VERSION:= 3.1 -PKG_RELEASE:= 2 +PKG_RELEASE:= 3 PKG_MD5SUM:= 5d89d64d94bcfefa9ce8f59f4b81bdcb PKG_DESCR:= partition table editor PKG_SECTION:= fs -PKG_DEPENDS:= libuuid libreadline libpthread libgcc +PKG_DEPENDS:= libblkid libuuid libreadline libpthread libgcc PKG_BUILDDEP:= util-linux readline PKG_URL:= http://www.gnu.org/software/parted/index.shtml PKG_SITES:= ${MASTER_SITE_GNU:=parted/} diff --git a/package/pcc/Makefile b/package/pcc/Makefile index 891651d3a..ef3e70b28 100644 --- a/package/pcc/Makefile +++ b/package/pcc/Makefile @@ -22,19 +22,17 @@ include $(TOPDIR)/mk/package.mk $(eval $(call PKG_template,PCC,pcc,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) # we cross-compile a native compiler for the target system -CONFIGURE_ARGS+= --host=${GNU_TARGET_NAME} -CONFIGURE_ARGS+= --target=${GNU_TARGET_NAME} -CONFIGURE_ARGS+= --with-assembler=/usr/bin/as -CONFIGURE_ARGS+= --with-linker=/usr/bin/ld +CONFIGURE_ARGS+= --host=${GNU_TARGET_NAME} \ + --target=${GNU_TARGET_NAME} \ + --with-assembler=/usr/bin/as \ + --with-linker=/usr/bin/ld ifeq ($(ADK_TARGET_LIB_GLIBC),y) TARGET_CPPFLAGS+= -DADK_FOR_GLIBC -else +endif ifeq ($(ADK_TARGET_LIB_UCLIBC),y) TARGET_CPPFLAGS+= -DADK_FOR_UCLIBC endif -endif -endif pcc-install: $(INSTALL_DIR) $(IDIR_PCC) diff --git a/package/pcre/Makefile b/package/pcre/Makefile index 12738c2cb..174315a81 100644 --- a/package/pcre/Makefile +++ b/package/pcre/Makefile @@ -4,9 +4,9 @@ include ${TOPDIR}/rules.mk PKG_NAME:= pcre -PKG_VERSION:= 8.31 -PKG_RELEASE:= 2 -PKG_MD5SUM:= fab1bb3b91a4c35398263a5c1e0858c1 +PKG_VERSION:= 8.34 +PKG_RELEASE:= 1 +PKG_MD5SUM:= eb34b2c9c727fd64940d6fd9a00995eb PKG_DESCR:= a Perl Compatible Regular Expression library PKG_SECTION:= libs PKG_BUILDDEPS:= gettext-tiny @@ -22,11 +22,15 @@ ifeq ($(ADK_STATIC),y) PKG_OPTS+= libmix endif +include ${TOPDIR}/mk/host.mk include ${TOPDIR}/mk/package.mk +$(eval $(call HOST_template,PCRE,pcre,${PKG_VERSION}-${PKG_RELEASE})) $(eval $(call PKG_template,LIBPCRE,libpcre,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS})) $(eval $(call PKG_template,LIBPCRECPP,libpcrecpp,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKGSD_LIBPCRECPP},${PKG_SECTION})) +HOST_STYLE:= auto +CONFIGURE_ARGS+= --enable-utf XAKE_FLAGS+= ${TARGET_CONFIGURE_OPTS} libpcre-install: @@ -37,4 +41,5 @@ libpcrecpp-install: ${INSTALL_DIR} ${IDIR_LIBPCRECPP}/usr/lib ${CP} ${WRKINST}/usr/lib/libpcrecpp.so* ${IDIR_LIBPCRECPP}/usr/lib +include ${TOPDIR}/mk/host-bottom.mk include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/pcrepp/Makefile b/package/pcrepp/Makefile index e96d04e38..5d662f20f 100644 --- a/package/pcrepp/Makefile +++ b/package/pcrepp/Makefile @@ -5,7 +5,7 @@ include ${TOPDIR}/rules.mk PKG_NAME:= pcrepp PKG_VERSION:= 0.9.5 -PKG_RELEASE:= 1 +PKG_RELEASE:= 2 PKG_MD5SUM:= 1fe6ea8e23ece01fde2ce5fb4746acc2 PKG_DESCR:= Cpp Wrapper classes for PCRE PKG_SECTION:= libs diff --git a/package/pcrepp/patches/patch-configure b/package/pcrepp/patches/patch-configure index 0ee82218e..da7ab7b3e 100644 --- a/package/pcrepp/patches/patch-configure +++ b/package/pcrepp/patches/patch-configure @@ -1,5 +1,23 @@ --- pcre++-0.9.5.orig/configure 2004-08-25 01:38:03.000000000 +0200 -+++ pcre++-0.9.5/configure 2011-08-05 07:30:53.000000000 +0200 ++++ pcre++-0.9.5/configure 2014-03-17 20:07:03.000000000 +0100 +@@ -3844,7 +3844,7 @@ irix5* | irix6* | nonstopux*) + ;; + + # This must be Linux ELF. +-linux-gnu*) ++linux-*) + case $host_cpu in + alpha* | hppa* | i*86 | mips | mipsel | powerpc* | sparc* | ia64*) + lt_cv_deplibs_check_method=pass_all ;; +@@ -6598,7 +6598,7 @@ linux-gnuoldld* | linux-gnuaout* | linux + ;; + + # This must be Linux ELF. +-linux-gnu*) ++linux-*) + version_type=linux + need_lib_prefix=no + need_version=no @@ -8612,7 +8612,7 @@ if test "x$with_pcre_include" = "x"; the CPPFLAGS="$CPPFLAGS -I/include" ;; diff --git a/package/pixman/Makefile b/package/pixman/Makefile index 5cb1821d9..6d5cd5aec 100644 --- a/package/pixman/Makefile +++ b/package/pixman/Makefile @@ -4,10 +4,10 @@ include $(TOPDIR)/rules.mk PKG_NAME:= pixman -PKG_VERSION:= 0.30.0 -PKG_RELEASE:= 2 -PKG_MD5SUM:= ae7ac97921dfa59086ca2231621a79c7 -PKG_DESCR:= Pixel manipulation library +PKG_VERSION:= 0.32.4 +PKG_RELEASE:= 1 +PKG_MD5SUM:= eba449138b972fbf4547a8c152fea162 +PKG_DESCR:= pixel manipulation library PKG_SECTION:= x11/libs PKG_BUILDDEP:= libpng PKG_SITES:= http://www.cairographics.org/releases/ diff --git a/package/pixman/patches/patch-Makefile_in b/package/pixman/patches/patch-Makefile_in new file mode 100644 index 000000000..cebc19113 --- /dev/null +++ b/package/pixman/patches/patch-Makefile_in @@ -0,0 +1,11 @@ +--- pixman-0.32.4.orig/Makefile.in 2013-11-18 03:11:20.000000000 +0100 ++++ pixman-0.32.4/Makefile.in 2014-03-30 21:54:18.000000000 +0200 +@@ -369,7 +369,7 @@ target_alias = @target_alias@ + top_build_prefix = @top_build_prefix@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ +-SUBDIRS = pixman demos test ++SUBDIRS = pixman + pkgconfigdir = $(libdir)/pkgconfig + pkgconfig_DATA = pixman-1.pc + GPGKEY = 3892336E diff --git a/package/pkgconf/Makefile b/package/pkgconf/Makefile index 8375a8236..8dbc5e32a 100644 --- a/package/pkgconf/Makefile +++ b/package/pkgconf/Makefile @@ -4,16 +4,14 @@ include $(TOPDIR)/rules.mk PKG_NAME:= pkgconf -PKG_VERSION:= 0.9.3 +PKG_VERSION:= 0.9.5 PKG_RELEASE:= 1 -PKG_MD5SUM:= 52c553bad686f8be1556b58bc1925f4f +PKG_MD5SUM:= babb4e02f0fb8f4044ee95ad2241a676 PKG_DESCR:= smart pkg-config replacement PKG_SECTION:= lang PKG_URL:= https://github.com/pkgconf/pkgconf PKG_SITES:= http://rabbit.dereferenced.org/~nenolod/distfiles/ -DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.bz2 - include $(TOPDIR)/mk/host.mk include $(TOPDIR)/mk/package.mk diff --git a/package/postfix/Makefile b/package/postfix/Makefile index e95cc4c9c..c68d69e91 100644 --- a/package/postfix/Makefile +++ b/package/postfix/Makefile @@ -4,9 +4,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:= postfix -PKG_VERSION:= 2.10.2 +PKG_VERSION:= 2.11.0 PKG_RELEASE:= 1 -PKG_MD5SUM:= 109e753aecafe487207b425dd46e6ee9 +PKG_MD5SUM:= 25fe7dd05f81cc0755131beecee046fd PKG_DESCR:= Postfix MTA PKG_SECTION:= mail PKG_BUILDDEP:= tinycdb diff --git a/package/postfix/patches/patch-makedefs b/package/postfix/patches/patch-makedefs index d39cec8a9..e4052d8dd 100644 --- a/package/postfix/patches/patch-makedefs +++ b/package/postfix/patches/patch-makedefs @@ -1,6 +1,6 @@ ---- postfix-2.10.2.orig/makedefs 2013-02-04 02:33:13.000000000 +0100 -+++ postfix-2.10.2/makedefs 2013-10-10 16:28:03.000000000 +0200 -@@ -366,16 +366,7 @@ EOF +--- postfix-2.11.0.orig/makedefs 2014-01-05 18:18:56.000000000 +0100 ++++ postfix-2.11.0/makedefs 2014-03-25 08:55:06.000000000 +0100 +@@ -382,16 +382,7 @@ EOF SYSLIBS="-ldb" ;; esac @@ -17,4 +17,4 @@ + SYSLIBS="-lresolv" ;; GNU.0*|GNU/kFreeBSD.[567]*) - SYSTYPE=GNU0 + SYSTYPE=GNU0 diff --git a/package/postfix/patches/patch-src_posttls-finger_posttls-finger_c b/package/postfix/patches/patch-src_posttls-finger_posttls-finger_c new file mode 100644 index 000000000..6f0e74fab --- /dev/null +++ b/package/postfix/patches/patch-src_posttls-finger_posttls-finger_c @@ -0,0 +1,10 @@ +--- postfix-2.11.0.orig/src/posttls-finger/posttls-finger.c 2013-12-16 17:06:33.000000000 +0100 ++++ postfix-2.11.0/src/posttls-finger/posttls-finger.c 2014-03-25 08:58:04.000000000 +0100 +@@ -290,6 +290,7 @@ + */ + #include <sys_defs.h> + #include <stdarg.h> ++#include <stdio.h> + #include <string.h> + #include <ctype.h> + #include <stdlib.h> diff --git a/package/postfix/patches/patch-src_util_sys_defs_h b/package/postfix/patches/patch-src_util_sys_defs_h index ecc7fc219..85974664e 100644 --- a/package/postfix/patches/patch-src_util_sys_defs_h +++ b/package/postfix/patches/patch-src_util_sys_defs_h @@ -1,13 +1,21 @@ ---- postfix-2.10.2.orig/src/util/sys_defs.h 2012-09-25 01:53:56.000000000 +0200 -+++ postfix-2.10.2/src/util/sys_defs.h 2013-10-10 16:30:37.000000000 +0200 -@@ -753,8 +753,8 @@ extern int initgroups(const char *, int) - #define DEF_MAILBOX_LOCK "fcntl, dotlock" /* RedHat >= 4.x */ +--- postfix-2.11.0.orig/src/util/sys_defs.h 2013-09-29 22:51:55.000000000 +0200 ++++ postfix-2.11.0/src/util/sys_defs.h 2014-03-26 19:38:02.000000000 +0100 +@@ -46,7 +46,7 @@ #define HAS_FSYNC #define HAS_DB --#define DEF_DB_TYPE "hash" --#define ALIAS_DB_MAP "hash:/etc/aliases" + #define HAS_SA_LEN +-#define NATIVE_DB_TYPE "hash" ++#define NATIVE_DB_TYPE "cdb" + #if (defined(__NetBSD_Version__) && __NetBSD_Version__ >= 104250000) + #define ALIAS_DB_MAP DEF_DB_TYPE ":/etc/mail/aliases" /* sendmail 8.10 */ + #endif +@@ -54,7 +54,8 @@ + #define ALIAS_DB_MAP DEF_DB_TYPE ":/etc/mail/aliases" /* OpenBSD 2.7 */ + #endif + #ifndef ALIAS_DB_MAP +-#define ALIAS_DB_MAP DEF_DB_TYPE ":/etc/aliases" +#define DEF_DB_TYPE "cdb" -+#define ALIAS_DB_MAP "cdb:/etc/postfix/aliases" - #ifndef NO_NIS - #define HAS_NIS ++#define ALIAS_DB_MAP DEF_DB_TYPE ":/etc/postfix/aliases" #endif + #define GETTIMEOFDAY(t) gettimeofday(t,(struct timezone *) 0) + #define ROOT_PATH "/bin:/usr/bin:/sbin:/usr/sbin" diff --git a/package/ppp/Makefile b/package/ppp/Makefile index 08d545c79..2c3c17bc3 100644 --- a/package/ppp/Makefile +++ b/package/ppp/Makefile @@ -5,7 +5,7 @@ include ${TOPDIR}/rules.mk PKG_NAME:= ppp PKG_VERSION:= 2.4.5 -PKG_RELEASE:= 6 +PKG_RELEASE:= 7 PKG_MD5SUM:= 4621bc56167b6953ec4071043fe0ec57 PKG_DESCR:= Point-to-Point Protocol software PKG_SECTION:= ppp @@ -15,8 +15,6 @@ PKG_URL:= http://ppp.samba.org/ PKG_SITES:= ftp://ftp.samba.org/pub/ppp/ PKG_MULTI:= 1 -PKG_LIBC_DEPENDS:= uclibc glibc - PKG_SUBPKGS:= PPP PPP_MOD_PPPOA PPP_MOD_PPPOE PPP_MOD_RADIUS PKG_SUBPKGS+= PPP_MOD_CHAT PPP_MOD_PPPDUMP PPP_MOD_PPPSTATS PPP_MOD_PPPUMTS PKGSS_PPP_MOD_PPPOE:= kmod-pppoe diff --git a/package/ppp/patches/patch-chat_chat_c b/package/ppp/patches/patch-chat_chat_c new file mode 100644 index 000000000..2718fbd8d --- /dev/null +++ b/package/ppp/patches/patch-chat_chat_c @@ -0,0 +1,74 @@ +--- ppp-2.4.5.orig/chat/chat.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/chat/chat.c 2014-03-17 16:13:08.000000000 +0100 +@@ -209,39 +209,39 @@ int clear_report_next = 0; + + int say_next = 0, hup_next = 0; + +-void *dup_mem __P((void *b, size_t c)); +-void *copy_of __P((char *s)); +-char *grow __P((char *s, char **p, size_t len)); +-void usage __P((void)); +-void msgf __P((const char *fmt, ...)); +-void fatal __P((int code, const char *fmt, ...)); +-SIGTYPE sigalrm __P((int signo)); +-SIGTYPE sigint __P((int signo)); +-SIGTYPE sigterm __P((int signo)); +-SIGTYPE sighup __P((int signo)); +-void unalarm __P((void)); +-void init __P((void)); +-void set_tty_parameters __P((void)); +-void echo_stderr __P((int)); +-void break_sequence __P((void)); +-void terminate __P((int status)); +-void do_file __P((char *chat_file)); +-int get_string __P((register char *string)); +-int put_string __P((register char *s)); +-int write_char __P((int c)); +-int put_char __P((int c)); +-int get_char __P((void)); +-void chat_send __P((register char *s)); +-char *character __P((int c)); +-void chat_expect __P((register char *s)); +-char *clean __P((register char *s, int sending)); +-void break_sequence __P((void)); +-void terminate __P((int status)); +-void pack_array __P((char **array, int end)); +-char *expect_strtok __P((char *, char *)); +-int vfmtmsg __P((char *, int, const char *, va_list)); /* vsprintf++ */ ++void *dup_mem (void *b, size_t c); ++void *copy_of (char *s); ++char *grow (char *s, char **p, size_t len); ++void usage (void); ++void msgf (const char *fmt, ...); ++void fatal (int code, const char *fmt, ...); ++SIGTYPE sigalrm (int signo); ++SIGTYPE sigint (int signo); ++SIGTYPE sigterm (int signo); ++SIGTYPE sighup (int signo); ++void unalarm (void); ++void init (void); ++void set_tty_parameters (void); ++void echo_stderr (int); ++void break_sequence (void); ++void terminate (int status); ++void do_file (char *chat_file); ++int get_string (register char *string); ++int put_string (register char *s); ++int write_char (int c); ++int put_char (int c); ++int get_char (void); ++void chat_send (register char *s); ++char *character (int c); ++void chat_expect (register char *s); ++char *clean (register char *s, int sending); ++void break_sequence (void); ++void terminate (int status); ++void pack_array (char **array, int end); ++char *expect_strtok (char *, char *); ++int vfmtmsg (char *, int, const char *, va_list); /* vsprintf++ */ + +-int main __P((int, char *[])); ++int main (int, char *[]); + + void *dup_mem(b, c) + void *b; diff --git a/package/ppp/patches/patch-include_net_if_ppp_h b/package/ppp/patches/patch-include_net_if_ppp_h new file mode 100644 index 000000000..6741e64c8 --- /dev/null +++ b/package/ppp/patches/patch-include_net_if_ppp_h @@ -0,0 +1,12 @@ +--- ppp-2.4.5.orig/include/net/if_ppp.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/include/net/if_ppp.h 2014-03-17 16:13:06.000000000 +0100 +@@ -150,7 +150,7 @@ struct ifpppcstatsreq { + #endif + + #if (defined(_KERNEL) || defined(KERNEL)) && !defined(NeXT) +-void pppattach __P((void)); +-void pppintr __P((void)); ++void pppattach (void); ++void pppintr (void); + #endif + #endif /* _IF_PPP_H_ */ diff --git a/package/ppp/patches/patch-include_net_ppp-comp_h b/package/ppp/patches/patch-include_net_ppp-comp_h new file mode 100644 index 000000000..42e9562b5 --- /dev/null +++ b/package/ppp/patches/patch-include_net_ppp-comp_h @@ -0,0 +1,56 @@ +--- ppp-2.4.5.orig/include/net/ppp-comp.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/include/net/ppp-comp.h 2014-03-17 16:13:07.000000000 +0100 +@@ -59,36 +59,36 @@ struct compressor { + int compress_proto; /* CCP compression protocol number */ + + /* Allocate space for a compressor (transmit side) */ +- void *(*comp_alloc) __P((u_char *options, int opt_len)); ++ void *(*comp_alloc) (u_char *options, int opt_len); + /* Free space used by a compressor */ +- void (*comp_free) __P((void *state)); ++ void (*comp_free) (void *state); + /* Initialize a compressor */ +- int (*comp_init) __P((void *state, u_char *options, int opt_len, +- int unit, int hdrlen, int debug)); ++ int (*comp_init) (void *state, u_char *options, int opt_len, ++ int unit, int hdrlen, int debug); + /* Reset a compressor */ +- void (*comp_reset) __P((void *state)); ++ void (*comp_reset) (void *state); + /* Compress a packet */ +- int (*compress) __P((void *state, PACKETPTR *mret, +- PACKETPTR mp, int orig_len, int max_len)); ++ int (*compress) (void *state, PACKETPTR *mret, ++ PACKETPTR mp, int orig_len, int max_len); + /* Return compression statistics */ +- void (*comp_stat) __P((void *state, struct compstat *stats)); ++ void (*comp_stat) (void *state, struct compstat *stats); + + /* Allocate space for a decompressor (receive side) */ +- void *(*decomp_alloc) __P((u_char *options, int opt_len)); ++ void *(*decomp_alloc) (u_char *options, int opt_len); + /* Free space used by a decompressor */ +- void (*decomp_free) __P((void *state)); ++ void (*decomp_free) (void *state); + /* Initialize a decompressor */ +- int (*decomp_init) __P((void *state, u_char *options, int opt_len, +- int unit, int hdrlen, int mru, int debug)); ++ int (*decomp_init) (void *state, u_char *options, int opt_len, ++ int unit, int hdrlen, int mru, int debug); + /* Reset a decompressor */ +- void (*decomp_reset) __P((void *state)); ++ void (*decomp_reset) (void *state); + /* Decompress a packet. */ +- int (*decompress) __P((void *state, PACKETPTR mp, +- PACKETPTR *dmpp)); ++ int (*decompress) (void *state, PACKETPTR mp, ++ PACKETPTR *dmpp); + /* Update state for an incompressible packet received */ +- void (*incomp) __P((void *state, PACKETPTR mp)); ++ void (*incomp) (void *state, PACKETPTR mp); + /* Return decompression statistics */ +- void (*decomp_stat) __P((void *state, struct compstat *stats)); ++ void (*decomp_stat) (void *state, struct compstat *stats); + }; + #endif /* PACKETPTR */ + diff --git a/package/ppp/patches/patch-include_net_ppp_defs_h b/package/ppp/patches/patch-include_net_ppp_defs_h new file mode 100644 index 000000000..1945c78d7 --- /dev/null +++ b/package/ppp/patches/patch-include_net_ppp_defs_h @@ -0,0 +1,11 @@ +--- ppp-2.4.5.orig/include/net/ppp_defs.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/include/net/ppp_defs.h 2014-03-17 16:32:53.000000000 +0100 +@@ -38,6 +38,8 @@ + #ifndef _PPP_DEFS_H_ + #define _PPP_DEFS_H_ + ++#include <sys/time.h> ++ + /* + * The basic PPP frame. + */ diff --git a/package/ppp/patches/patch-include_net_slcompress_h b/package/ppp/patches/patch-include_net_slcompress_h new file mode 100644 index 000000000..69d57d909 --- /dev/null +++ b/package/ppp/patches/patch-include_net_slcompress_h @@ -0,0 +1,22 @@ +--- ppp-2.4.5.orig/include/net/slcompress.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/include/net/slcompress.h 2014-03-17 16:13:06.000000000 +0100 +@@ -137,12 +137,12 @@ struct slcompress { + /* flag values */ + #define SLF_TOSS 1 /* tossing rcvd frames because of input err */ + +-void sl_compress_init __P((struct slcompress *)); +-void sl_compress_setup __P((struct slcompress *, int)); +-u_int sl_compress_tcp __P((struct mbuf *, +- struct ip *, struct slcompress *, int)); +-int sl_uncompress_tcp __P((u_char **, int, u_int, struct slcompress *)); +-int sl_uncompress_tcp_core __P((u_char *, int, int, u_int, +- struct slcompress *, u_char **, u_int *)); ++void sl_compress_init (struct slcompress *); ++void sl_compress_setup (struct slcompress *, int); ++u_int sl_compress_tcp (struct mbuf *, ++ struct ip *, struct slcompress *, int); ++int sl_uncompress_tcp (u_char **, int, u_int, struct slcompress *); ++int sl_uncompress_tcp_core (u_char *, int, int, u_int, ++ struct slcompress *, u_char **, u_int *); + + #endif /* _SLCOMPRESS_H_ */ diff --git a/package/ppp/patches/patch-include_net_vjcompress_h b/package/ppp/patches/patch-include_net_vjcompress_h new file mode 100644 index 000000000..cc267c8ea --- /dev/null +++ b/package/ppp/patches/patch-include_net_vjcompress_h @@ -0,0 +1,26 @@ +--- ppp-2.4.5.orig/include/net/vjcompress.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/include/net/vjcompress.h 2014-03-17 16:13:06.000000000 +0100 +@@ -130,15 +130,15 @@ struct vjcompress { + /* flag values */ + #define VJF_TOSS 1 /* tossing rcvd frames because of input err */ + +-extern void vj_compress_init __P((struct vjcompress *comp, int max_state)); +-extern u_int vj_compress_tcp __P((struct ip *ip, u_int mlen, ++extern void vj_compress_init (struct vjcompress *comp, int max_state); ++extern u_int vj_compress_tcp (struct ip *ip, u_int mlen, + struct vjcompress *comp, int compress_cid_flag, +- u_char **vjhdrp)); +-extern void vj_uncompress_err __P((struct vjcompress *comp)); +-extern int vj_uncompress_uncomp __P((u_char *buf, int buflen, +- struct vjcompress *comp)); +-extern int vj_uncompress_tcp __P((u_char *buf, int buflen, int total_len, ++ u_char **vjhdrp); ++extern void vj_uncompress_err (struct vjcompress *comp); ++extern int vj_uncompress_uncomp (u_char *buf, int buflen, ++ struct vjcompress *comp); ++extern int vj_uncompress_tcp (u_char *buf, int buflen, int total_len, + struct vjcompress *comp, u_char **hdrp, +- u_int *hlenp)); ++ u_int *hlenp); + + #endif /* _VJCOMPRESS_H_ */ diff --git a/package/ppp/patches/patch-modules_bsd-comp_c b/package/ppp/patches/patch-modules_bsd-comp_c new file mode 100644 index 000000000..4bba327c7 --- /dev/null +++ b/package/ppp/patches/patch-modules_bsd-comp_c @@ -0,0 +1,35 @@ +--- ppp-2.4.5.orig/modules/bsd-comp.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/modules/bsd-comp.c 2014-03-17 16:13:07.000000000 +0100 +@@ -148,19 +148,19 @@ struct bsd_db { + #define BSD_OVHD 2 /* BSD compress overhead/packet */ + #define BSD_INIT_BITS BSD_MIN_BITS + +-static void *bsd_comp_alloc __P((u_char *options, int opt_len)); +-static void *bsd_decomp_alloc __P((u_char *options, int opt_len)); +-static void bsd_free __P((void *state)); +-static int bsd_comp_init __P((void *state, u_char *options, int opt_len, +- int unit, int hdrlen, int debug)); +-static int bsd_decomp_init __P((void *state, u_char *options, int opt_len, +- int unit, int hdrlen, int mru, int debug)); +-static int bsd_compress __P((void *state, mblk_t **mret, +- mblk_t *mp, int slen, int maxolen)); +-static void bsd_incomp __P((void *state, mblk_t *dmsg)); +-static int bsd_decompress __P((void *state, mblk_t *cmp, mblk_t **dmpp)); +-static void bsd_reset __P((void *state)); +-static void bsd_comp_stats __P((void *state, struct compstat *stats)); ++static void *bsd_comp_alloc (u_char *options, int opt_len); ++static void *bsd_decomp_alloc (u_char *options, int opt_len); ++static void bsd_free (void *state); ++static int bsd_comp_init (void *state, u_char *options, int opt_len, ++ int unit, int hdrlen, int debug); ++static int bsd_decomp_init (void *state, u_char *options, int opt_len, ++ int unit, int hdrlen, int mru, int debug); ++static int bsd_compress (void *state, mblk_t **mret, ++ mblk_t *mp, int slen, int maxolen); ++static void bsd_incomp (void *state, mblk_t *dmsg); ++static int bsd_decompress (void *state, mblk_t *cmp, mblk_t **dmpp); ++static void bsd_reset (void *state); ++static void bsd_comp_stats (void *state, struct compstat *stats); + + /* + * Procedures exported to ppp_comp.c. diff --git a/package/ppp/patches/patch-modules_deflate_c b/package/ppp/patches/patch-modules_deflate_c new file mode 100644 index 000000000..53cd6fc0e --- /dev/null +++ b/package/ppp/patches/patch-modules_deflate_c @@ -0,0 +1,47 @@ +--- ppp-2.4.5.orig/modules/deflate.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/modules/deflate.c 2014-03-17 16:13:07.000000000 +0100 +@@ -80,25 +80,25 @@ struct deflate_state { + + #define DEFLATE_OVHD 2 /* Deflate overhead/packet */ + +-static void *z_alloc __P((void *, u_int items, u_int size)); +-static void *z_alloc_init __P((void *, u_int items, u_int size)); +-static void z_free __P((void *, void *ptr)); +-static void *z_comp_alloc __P((u_char *options, int opt_len)); +-static void *z_decomp_alloc __P((u_char *options, int opt_len)); +-static void z_comp_free __P((void *state)); +-static void z_decomp_free __P((void *state)); +-static int z_comp_init __P((void *state, u_char *options, int opt_len, +- int unit, int hdrlen, int debug)); +-static int z_decomp_init __P((void *state, u_char *options, int opt_len, +- int unit, int hdrlen, int mru, int debug)); +-static int z_compress __P((void *state, mblk_t **mret, +- mblk_t *mp, int slen, int maxolen)); +-static void z_incomp __P((void *state, mblk_t *dmsg)); +-static int z_decompress __P((void *state, mblk_t *cmp, +- mblk_t **dmpp)); +-static void z_comp_reset __P((void *state)); +-static void z_decomp_reset __P((void *state)); +-static void z_comp_stats __P((void *state, struct compstat *stats)); ++static void *z_alloc (void *, u_int items, u_int size); ++static void *z_alloc_init (void *, u_int items, u_int size); ++static void z_free (void *, void *ptr); ++static void *z_comp_alloc (u_char *options, int opt_len); ++static void *z_decomp_alloc (u_char *options, int opt_len); ++static void z_comp_free (void *state); ++static void z_decomp_free (void *state); ++static int z_comp_init (void *state, u_char *options, int opt_len, ++ int unit, int hdrlen, int debug); ++static int z_decomp_init (void *state, u_char *options, int opt_len, ++ int unit, int hdrlen, int mru, int debug); ++static int z_compress (void *state, mblk_t **mret, ++ mblk_t *mp, int slen, int maxolen); ++static void z_incomp (void *state, mblk_t *dmsg); ++static int z_decompress (void *state, mblk_t *cmp, ++ mblk_t **dmpp); ++static void z_comp_reset (void *state); ++static void z_decomp_reset (void *state); ++static void z_comp_stats (void *state, struct compstat *stats); + + /* + * Procedures exported to ppp_comp.c. diff --git a/package/ppp/patches/patch-modules_if_ppp_c b/package/ppp/patches/patch-modules_if_ppp_c new file mode 100644 index 000000000..67561642a --- /dev/null +++ b/package/ppp/patches/patch-modules_if_ppp_c @@ -0,0 +1,43 @@ +--- ppp-2.4.5.orig/modules/if_ppp.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/modules/if_ppp.c 2014-03-17 16:13:07.000000000 +0100 +@@ -80,10 +80,10 @@ + + #define ifr_mtu ifr_metric + +-static int if_ppp_open __P((queue_t *, int, int, int)); +-static int if_ppp_close __P((queue_t *, int)); +-static int if_ppp_wput __P((queue_t *, mblk_t *)); +-static int if_ppp_rput __P((queue_t *, mblk_t *)); ++static int if_ppp_open (queue_t *, int, int, int); ++static int if_ppp_close (queue_t *, int); ++static int if_ppp_wput (queue_t *, mblk_t *); ++static int if_ppp_rput (queue_t *, mblk_t *); + + #define PPP_IF_ID 0x8021 + static struct module_info minfo = { +@@ -117,11 +117,11 @@ static int ppp_nalloc; /* Number of ele + static struct ifnet **ifs; /* Array of pointers to interface structs */ + static if_ppp_t **states; /* Array of pointers to state structs */ + +-static int if_ppp_output __P((struct ifnet *, struct mbuf *, +- struct sockaddr *)); +-static int if_ppp_ioctl __P((struct ifnet *, u_int, caddr_t)); +-static struct mbuf *make_mbufs __P((mblk_t *, int)); +-static mblk_t *make_message __P((struct mbuf *, int)); ++static int if_ppp_output (struct ifnet *, struct mbuf *, ++ struct sockaddr *); ++static int if_ppp_ioctl (struct ifnet *, u_int, caddr_t); ++static struct mbuf *make_mbufs (mblk_t *, int); ++static mblk_t *make_message (struct mbuf *, int); + + #ifdef SNIT_SUPPORT + /* Fake ether header for SNIT */ +@@ -129,7 +129,7 @@ static struct ether_header snit_ehdr = { + #endif + + #ifndef __osf__ +-static void ppp_if_detach __P((struct ifnet *)); ++static void ppp_if_detach (struct ifnet *); + + /* + * Detach all the interfaces before unloading. diff --git a/package/ppp/patches/patch-modules_ppp_ahdlc_c b/package/ppp/patches/patch-modules_ppp_ahdlc_c new file mode 100644 index 000000000..93ad5795a --- /dev/null +++ b/package/ppp/patches/patch-modules_ppp_ahdlc_c @@ -0,0 +1,19 @@ +--- ppp-2.4.5.orig/modules/ppp_ahdlc.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/modules/ppp_ahdlc.c 2014-03-17 16:13:07.000000000 +0100 +@@ -107,11 +107,11 @@ typedef unsigned int uintpoin + + MOD_OPEN_DECL(ahdlc_open); + MOD_CLOSE_DECL(ahdlc_close); +-static int ahdlc_wput __P((queue_t *, mblk_t *)); +-static int ahdlc_rput __P((queue_t *, mblk_t *)); +-static void ahdlc_encode __P((queue_t *, mblk_t *)); +-static void ahdlc_decode __P((queue_t *, mblk_t *)); +-static int msg_byte __P((mblk_t *, unsigned int)); ++static int ahdlc_wput (queue_t *, mblk_t *); ++static int ahdlc_rput (queue_t *, mblk_t *); ++static void ahdlc_encode (queue_t *, mblk_t *); ++static void ahdlc_decode (queue_t *, mblk_t *); ++static int msg_byte (mblk_t *, unsigned int); + + #if defined(SOL2) + /* diff --git a/package/ppp/patches/patch-modules_ppp_c b/package/ppp/patches/patch-modules_ppp_c new file mode 100644 index 000000000..f8c569cad --- /dev/null +++ b/package/ppp/patches/patch-modules_ppp_c @@ -0,0 +1,76 @@ +--- ppp-2.4.5.orig/modules/ppp.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/modules/ppp.c 2014-03-17 16:13:07.000000000 +0100 +@@ -254,43 +254,43 @@ static upperstr_t *minor_devs = NULL; + static upperstr_t *ppas = NULL; + + #ifdef SVR4 +-static int pppopen __P((queue_t *, dev_t *, int, int, cred_t *)); +-static int pppclose __P((queue_t *, int, cred_t *)); ++static int pppopen (queue_t *, dev_t *, int, int, cred_t *); ++static int pppclose (queue_t *, int, cred_t *); + #else +-static int pppopen __P((queue_t *, int, int, int)); +-static int pppclose __P((queue_t *, int)); ++static int pppopen (queue_t *, int, int, int); ++static int pppclose (queue_t *, int); + #endif /* SVR4 */ +-static int pppurput __P((queue_t *, mblk_t *)); +-static int pppuwput __P((queue_t *, mblk_t *)); +-static int pppursrv __P((queue_t *)); +-static int pppuwsrv __P((queue_t *)); +-static int ppplrput __P((queue_t *, mblk_t *)); +-static int ppplwput __P((queue_t *, mblk_t *)); +-static int ppplrsrv __P((queue_t *)); +-static int ppplwsrv __P((queue_t *)); ++static int pppurput (queue_t *, mblk_t *); ++static int pppuwput (queue_t *, mblk_t *); ++static int pppursrv (queue_t *); ++static int pppuwsrv (queue_t *); ++static int ppplrput (queue_t *, mblk_t *); ++static int ppplwput (queue_t *, mblk_t *); ++static int ppplrsrv (queue_t *); ++static int ppplwsrv (queue_t *); + #ifndef NO_DLPI +-static void dlpi_request __P((queue_t *, mblk_t *, upperstr_t *)); +-static void dlpi_error __P((queue_t *, upperstr_t *, int, int, int)); +-static void dlpi_ok __P((queue_t *, int)); ++static void dlpi_request (queue_t *, mblk_t *, upperstr_t *); ++static void dlpi_error (queue_t *, upperstr_t *, int, int, int); ++static void dlpi_ok (queue_t *, int); + #endif +-static int send_data __P((mblk_t *, upperstr_t *)); +-static void new_ppa __P((queue_t *, mblk_t *)); +-static void attach_ppa __P((queue_t *, mblk_t *)); +-static void detach_ppa __P((queue_t *, mblk_t *)); +-static void detach_lower __P((queue_t *, mblk_t *)); +-static void debug_dump __P((queue_t *, mblk_t *)); +-static upperstr_t *find_dest __P((upperstr_t *, int)); ++static int send_data (mblk_t *, upperstr_t *); ++static void new_ppa (queue_t *, mblk_t *); ++static void attach_ppa (queue_t *, mblk_t *); ++static void detach_ppa (queue_t *, mblk_t *); ++static void detach_lower (queue_t *, mblk_t *); ++static void debug_dump (queue_t *, mblk_t *); ++static upperstr_t *find_dest (upperstr_t *, int); + #if defined(SOL2) +-static upperstr_t *find_promisc __P((upperstr_t *, int)); +-static mblk_t *prepend_ether __P((upperstr_t *, mblk_t *, int)); +-static mblk_t *prepend_udind __P((upperstr_t *, mblk_t *, int)); +-static void promisc_sendup __P((upperstr_t *, mblk_t *, int, int)); ++static upperstr_t *find_promisc (upperstr_t *, int); ++static mblk_t *prepend_ether (upperstr_t *, mblk_t *, int); ++static mblk_t *prepend_udind (upperstr_t *, mblk_t *, int); ++static void promisc_sendup (upperstr_t *, mblk_t *, int, int); + #endif /* defined(SOL2) */ +-static int putctl2 __P((queue_t *, int, int, int)); +-static int putctl4 __P((queue_t *, int, int, int)); +-static int pass_packet __P((upperstr_t *ppa, mblk_t *mp, int outbound)); ++static int putctl2 (queue_t *, int, int, int); ++static int putctl4 (queue_t *, int, int, int); ++static int pass_packet (upperstr_t *ppa, mblk_t *mp, int outbound); + #ifdef FILTER_PACKETS +-static int ip_hard_filter __P((upperstr_t *ppa, mblk_t *mp, int outbound)); ++static int ip_hard_filter (upperstr_t *ppa, mblk_t *mp, int outbound); + #endif /* FILTER_PACKETS */ + + #define PPP_ID 0xb1a6 diff --git a/package/ppp/patches/patch-modules_ppp_comp_c b/package/ppp/patches/patch-modules_ppp_comp_c new file mode 100644 index 000000000..944d0d80f --- /dev/null +++ b/package/ppp/patches/patch-modules_ppp_comp_c @@ -0,0 +1,30 @@ +--- ppp-2.4.5.orig/modules/ppp_comp.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/modules/ppp_comp.c 2014-03-17 16:13:07.000000000 +0100 +@@ -74,12 +74,12 @@ + + MOD_OPEN_DECL(ppp_comp_open); + MOD_CLOSE_DECL(ppp_comp_close); +-static int ppp_comp_rput __P((queue_t *, mblk_t *)); +-static int ppp_comp_rsrv __P((queue_t *)); +-static int ppp_comp_wput __P((queue_t *, mblk_t *)); +-static int ppp_comp_wsrv __P((queue_t *)); +-static void ppp_comp_ccp __P((queue_t *, mblk_t *, int)); +-static int msg_byte __P((mblk_t *, unsigned int)); ++static int ppp_comp_rput (queue_t *, mblk_t *); ++static int ppp_comp_rsrv (queue_t *); ++static int ppp_comp_wput (queue_t *, mblk_t *); ++static int ppp_comp_wsrv (queue_t *); ++static void ppp_comp_ccp (queue_t *, mblk_t *, int); ++static int msg_byte (mblk_t *, unsigned int); + + /* Extract byte i of message mp. */ + #define MSG_BYTE(mp, i) ((i) < (mp)->b_wptr - (mp)->b_rptr? (mp)->b_rptr[i]: \ +@@ -118,7 +118,7 @@ int ppp_comp_count; /* number of module + + #ifdef __osf__ + +-static void ppp_comp_alloc __P((comp_state_t *)); ++static void ppp_comp_alloc (comp_state_t *); + typedef struct memreq { + unsigned char comp_opts[20]; + int cmd; diff --git a/package/ppp/patches/patch-modules_ppp_mod_h b/package/ppp/patches/patch-modules_ppp_mod_h new file mode 100644 index 000000000..29f6624e2 --- /dev/null +++ b/package/ppp/patches/patch-modules_ppp_mod_h @@ -0,0 +1,28 @@ +--- ppp-2.4.5.orig/modules/ppp_mod.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/modules/ppp_mod.h 2014-03-17 16:13:07.000000000 +0100 +@@ -143,10 +143,10 @@ typedef int minor_t; + */ + #ifdef SVR4 + #define MOD_OPEN_DECL(name) \ +-static int name __P((queue_t *, dev_t *, int, int, cred_t *)) ++static int name (queue_t *, dev_t *, int, int, cred_t *) + + #define MOD_CLOSE_DECL(name) \ +-static int name __P((queue_t *, int, cred_t *)) ++static int name (queue_t *, int, cred_t *) + + #define MOD_OPEN(name) \ + static int name(q, devp, flag, sflag, credp) \ +@@ -168,10 +168,10 @@ static int name(q, flag, credp) \ + + #else /* not SVR4 */ + #define MOD_OPEN_DECL(name) \ +-static int name __P((queue_t *, int, int, int)) ++static int name (queue_t *, int, int, int) + + #define MOD_CLOSE_DECL(name) \ +-static int name __P((queue_t *, int)) ++static int name (queue_t *, int) + + #define MOD_OPEN(name) \ + static int name(q, dev, flag, sflag) \ diff --git a/package/ppp/patches/patch-pppd_auth_c b/package/ppp/patches/patch-pppd_auth_c new file mode 100644 index 000000000..e15fbc458 --- /dev/null +++ b/package/ppp/patches/patch-pppd_auth_c @@ -0,0 +1,116 @@ +--- ppp-2.4.5.orig/pppd/auth.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/auth.c 2014-03-17 16:13:14.000000000 +0100 +@@ -161,38 +161,38 @@ static int passwd_from_file; + static bool default_auth; + + /* Hook to enable a plugin to control the idle time limit */ +-int (*idle_time_hook) __P((struct ppp_idle *)) = NULL; ++int (*idle_time_hook) (struct ppp_idle *) = NULL; + + /* Hook for a plugin to say whether we can possibly authenticate any peer */ +-int (*pap_check_hook) __P((void)) = NULL; ++int (*pap_check_hook) (void) = NULL; + + /* Hook for a plugin to check the PAP user and password */ +-int (*pap_auth_hook) __P((char *user, char *passwd, char **msgp, ++int (*pap_auth_hook) (char *user, char *passwd, char **msgp, + struct wordlist **paddrs, +- struct wordlist **popts)) = NULL; ++ struct wordlist **popts) = NULL; + + /* Hook for a plugin to know about the PAP user logout */ +-void (*pap_logout_hook) __P((void)) = NULL; ++void (*pap_logout_hook) (void) = NULL; + + /* Hook for a plugin to get the PAP password for authenticating us */ +-int (*pap_passwd_hook) __P((char *user, char *passwd)) = NULL; ++int (*pap_passwd_hook) (char *user, char *passwd) = NULL; + + /* Hook for a plugin to say if we can possibly authenticate a peer using CHAP */ +-int (*chap_check_hook) __P((void)) = NULL; ++int (*chap_check_hook) (void) = NULL; + + /* Hook for a plugin to get the CHAP password for authenticating us */ +-int (*chap_passwd_hook) __P((char *user, char *passwd)) = NULL; ++int (*chap_passwd_hook) (char *user, char *passwd) = NULL; + + /* Hook for a plugin to say whether it is OK if the peer + refuses to authenticate. */ +-int (*null_auth_hook) __P((struct wordlist **paddrs, +- struct wordlist **popts)) = NULL; ++int (*null_auth_hook) (struct wordlist **paddrs, ++ struct wordlist **popts) = NULL; + +-int (*allowed_address_hook) __P((u_int32_t addr)) = NULL; ++int (*allowed_address_hook) (u_int32_t addr) = NULL; + + #ifdef HAVE_MULTILINK + /* Hook for plugin to hear when an interface joins a multilink bundle */ +-void (*multilink_join_hook) __P((void)) = NULL; ++void (*multilink_join_hook) (void) = NULL; + #endif + + /* A notifier for when the peer has authenticated itself, +@@ -241,37 +241,37 @@ char remote_name[MAXNAMELEN]; /* Peer's + + static char *uafname; /* name of most recent +ua file */ + +-extern char *crypt __P((const char *, const char *)); ++extern char *crypt (const char *, const char *); + + /* Prototypes for procedures local to this file. */ + +-static void network_phase __P((int)); +-static void check_idle __P((void *)); +-static void connect_time_expired __P((void *)); +-static int null_login __P((int)); +-static int get_pap_passwd __P((char *)); +-static int have_pap_secret __P((int *)); +-static int have_chap_secret __P((char *, char *, int, int *)); +-static int have_srp_secret __P((char *client, char *server, int need_ip, +- int *lacks_ipp)); +-static int ip_addr_check __P((u_int32_t, struct permitted_ip *)); +-static int scan_authfile __P((FILE *, char *, char *, char *, ++static void network_phase (int); ++static void check_idle (void *); ++static void connect_time_expired (void *); ++static int null_login (int); ++static int get_pap_passwd (char *); ++static int have_pap_secret (int *); ++static int have_chap_secret (char *, char *, int, int *); ++static int have_srp_secret (char *client, char *server, int need_ip, ++ int *lacks_ipp); ++static int ip_addr_check (u_int32_t, struct permitted_ip *); ++static int scan_authfile (FILE *, char *, char *, char *, + struct wordlist **, struct wordlist **, +- char *, int)); +-static void free_wordlist __P((struct wordlist *)); +-static void auth_script __P((char *)); +-static void auth_script_done __P((void *)); +-static void set_allowed_addrs __P((int, struct wordlist *, struct wordlist *)); +-static int some_ip_ok __P((struct wordlist *)); +-static int setupapfile __P((char **)); +-static int privgroup __P((char **)); +-static int set_noauth_addr __P((char **)); +-static int set_permitted_number __P((char **)); +-static void check_access __P((FILE *, char *)); +-static int wordlist_count __P((struct wordlist *)); ++ char *, int); ++static void free_wordlist (struct wordlist *); ++static void auth_script (char *); ++static void auth_script_done (void *); ++static void set_allowed_addrs (int, struct wordlist *, struct wordlist *); ++static int some_ip_ok (struct wordlist *); ++static int setupapfile (char **); ++static int privgroup (char **); ++static int set_noauth_addr (char **); ++static int set_permitted_number (char **); ++static void check_access (FILE *, char *); ++static int wordlist_count (struct wordlist *); + + #ifdef MAXOCTETS +-static void check_maxoctets __P((void *)); ++static void check_maxoctets (void *); + #endif + + /* diff --git a/package/ppp/patches/patch-pppd_cbcp_c b/package/ppp/patches/patch-pppd_cbcp_c new file mode 100644 index 000000000..dfbfb44ab --- /dev/null +++ b/package/ppp/patches/patch-pppd_cbcp_c @@ -0,0 +1,59 @@ +--- ppp-2.4.5.orig/pppd/cbcp.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/cbcp.c 2014-03-17 16:13:14.000000000 +0100 +@@ -50,7 +50,7 @@ static const char rcsid[] = RCSID; + /* + * Options. + */ +-static int setcbcp __P((char **)); ++static int setcbcp (char **); + + static option_t cbcp_option_list[] = { + { "callback", o_special, (void *)setcbcp, +@@ -61,14 +61,14 @@ static option_t cbcp_option_list[] = { + /* + * Protocol entry points. + */ +-static void cbcp_init __P((int unit)); +-static void cbcp_open __P((int unit)); +-static void cbcp_lowerup __P((int unit)); +-static void cbcp_input __P((int unit, u_char *pkt, int len)); +-static void cbcp_protrej __P((int unit)); +-static int cbcp_printpkt __P((u_char *pkt, int len, ++static void cbcp_init (int unit); ++static void cbcp_open (int unit); ++static void cbcp_lowerup (int unit); ++static void cbcp_input (int unit, u_char *pkt, int len); ++static void cbcp_protrej (int unit); ++static int cbcp_printpkt (u_char *pkt, int len, + void (*printer) __P((void *, char *, ...)), +- void *arg)); ++ void *arg); + + struct protent cbcp_protent = { + PPP_CBCP, +@@ -94,11 +94,11 @@ cbcp_state cbcp[NUM_PPP]; + + /* internal prototypes */ + +-static void cbcp_recvreq __P((cbcp_state *us, u_char *pckt, int len)); +-static void cbcp_resp __P((cbcp_state *us)); +-static void cbcp_up __P((cbcp_state *us)); +-static void cbcp_recvack __P((cbcp_state *us, u_char *pckt, int len)); +-static void cbcp_send __P((cbcp_state *us, int code, u_char *buf, int len)); ++static void cbcp_recvreq (cbcp_state *us, u_char *pckt, int len); ++static void cbcp_resp (cbcp_state *us); ++static void cbcp_up (cbcp_state *us); ++static void cbcp_recvack (cbcp_state *us, u_char *pckt, int len); ++static void cbcp_send (cbcp_state *us, int code, u_char *buf, int len); + + /* option processing */ + static int +@@ -227,7 +227,7 @@ static int + cbcp_printpkt(p, plen, printer, arg) + u_char *p; + int plen; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + int code, opt, id, len, olen, delay; diff --git a/package/ppp/patches/patch-pppd_ccp_c b/package/ppp/patches/patch-pppd_ccp_c new file mode 100644 index 000000000..41db56039 --- /dev/null +++ b/package/ppp/patches/patch-pppd_ccp_c @@ -0,0 +1,81 @@ +--- ppp-2.4.5.orig/pppd/ccp.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/ccp.c 2014-03-17 16:13:13.000000000 +0100 +@@ -57,8 +57,8 @@ static const char rcsid[] = RCSID; + /* + * Command-line options. + */ +-static int setbsdcomp __P((char **)); +-static int setdeflate __P((char **)); ++static int setbsdcomp (char **); ++static int setdeflate (char **); + static char bsd_value[8]; + static char deflate_value[8]; + +@@ -164,17 +164,17 @@ static option_t ccp_option_list[] = { + /* + * Protocol entry points from main code. + */ +-static void ccp_init __P((int unit)); +-static void ccp_open __P((int unit)); +-static void ccp_close __P((int unit, char *)); +-static void ccp_lowerup __P((int unit)); +-static void ccp_lowerdown __P((int)); +-static void ccp_input __P((int unit, u_char *pkt, int len)); +-static void ccp_protrej __P((int unit)); +-static int ccp_printpkt __P((u_char *pkt, int len, ++static void ccp_init (int unit); ++static void ccp_open (int unit); ++static void ccp_close (int unit, char *); ++static void ccp_lowerup (int unit); ++static void ccp_lowerdown (int); ++static void ccp_input (int unit, u_char *pkt, int len); ++static void ccp_protrej (int unit); ++static int ccp_printpkt (u_char *pkt, int len, + void (*printer) __P((void *, char *, ...)), +- void *arg)); +-static void ccp_datainput __P((int unit, u_char *pkt, int len)); ++ void *arg); ++static void ccp_datainput (int unit, u_char *pkt, int len); + + struct protent ccp_protent = { + PPP_CCP, +@@ -205,18 +205,18 @@ ccp_options ccp_hisoptions[NUM_PPP]; /* + /* + * Callbacks for fsm code. + */ +-static void ccp_resetci __P((fsm *)); +-static int ccp_cilen __P((fsm *)); +-static void ccp_addci __P((fsm *, u_char *, int *)); +-static int ccp_ackci __P((fsm *, u_char *, int)); +-static int ccp_nakci __P((fsm *, u_char *, int, int)); +-static int ccp_rejci __P((fsm *, u_char *, int)); +-static int ccp_reqci __P((fsm *, u_char *, int *, int)); +-static void ccp_up __P((fsm *)); +-static void ccp_down __P((fsm *)); +-static int ccp_extcode __P((fsm *, int, int, u_char *, int)); +-static void ccp_rack_timeout __P((void *)); +-static char *method_name __P((ccp_options *, ccp_options *)); ++static void ccp_resetci (fsm *); ++static int ccp_cilen (fsm *); ++static void ccp_addci (fsm *, u_char *, int *); ++static int ccp_ackci (fsm *, u_char *, int); ++static int ccp_nakci (fsm *, u_char *, int, int); ++static int ccp_rejci (fsm *, u_char *, int); ++static int ccp_reqci (fsm *, u_char *, int *, int); ++static void ccp_up (fsm *); ++static void ccp_down (fsm *); ++static int ccp_extcode (fsm *, int, int, u_char *, int); ++static void ccp_rack_timeout (void *); ++static char *method_name (ccp_options *, ccp_options *); + + static fsm_callbacks ccp_callbacks = { + ccp_resetci, +@@ -1489,7 +1489,7 @@ static int + ccp_printpkt(p, plen, printer, arg) + u_char *p; + int plen; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + u_char *p0, *optend; diff --git a/package/ppp/patches/patch-pppd_chap-new_c b/package/ppp/patches/patch-pppd_chap-new_c new file mode 100644 index 000000000..fec9acbed --- /dev/null +++ b/package/ppp/patches/patch-pppd_chap-new_c @@ -0,0 +1,20 @@ +--- ppp-2.4.5.orig/pppd/chap-new.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/chap-new.c 2014-03-17 16:13:14.000000000 +0100 +@@ -129,7 +129,7 @@ static void chap_handle_status(struct ch + static void chap_protrej(int unit); + static void chap_input(int unit, unsigned char *pkt, int pktlen); + static int chap_print_pkt(unsigned char *p, int plen, +- void (*printer) __P((void *, char *, ...)), void *arg); ++ void (*printer) (void *, char *, ...), void *arg); + + /* List of digest types that we know about */ + static struct chap_digest_type *chap_digests; +@@ -584,7 +584,7 @@ static char *chap_code_names[] = { + + static int + chap_print_pkt(unsigned char *p, int plen, +- void (*printer) __P((void *, char *, ...)), void *arg) ++ void (*printer) (void *, char *, ...), void *arg) + { + int code, id, len; + int clen, nlen; diff --git a/package/ppp/patches/patch-pppd_chap_ms_c b/package/ppp/patches/patch-pppd_chap_ms_c new file mode 100644 index 000000000..f04abf740 --- /dev/null +++ b/package/ppp/patches/patch-pppd_chap_ms_c @@ -0,0 +1,36 @@ +--- ppp-2.4.5.orig/pppd/chap_ms.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/chap_ms.c 2014-03-17 16:13:15.000000000 +0100 +@@ -97,22 +97,22 @@ + static const char rcsid[] = RCSID; + + +-static void ascii2unicode __P((char[], int, u_char[])); +-static void NTPasswordHash __P((u_char *, int, u_char[MD4_SIGNATURE_SIZE])); +-static void ChallengeResponse __P((u_char *, u_char *, u_char[24])); +-static void ChapMS_NT __P((u_char *, char *, int, u_char[24])); +-static void ChapMS2_NT __P((u_char *, u_char[16], char *, char *, int, +- u_char[24])); ++static void ascii2unicode (char[], int, u_char[]); ++static void NTPasswordHash (u_char *, int, u_char[MD4_SIGNATURE_SIZE]); ++static void ChallengeResponse (u_char *, u_char *, u_char[24]); ++static void ChapMS_NT (u_char *, char *, int, u_char[24]); ++static void ChapMS2_NT (u_char *, u_char[16], char *, char *, int, ++ u_char[24]); + static void GenerateAuthenticatorResponsePlain +- __P((char*, int, u_char[24], u_char[16], u_char *, +- char *, u_char[41])); ++ (char*, int, u_char[24], u_char[16], u_char *, ++ char *, u_char[41]); + #ifdef MSLANMAN +-static void ChapMS_LANMan __P((u_char *, char *, int, u_char *)); ++static void ChapMS_LANMan (u_char *, char *, int, u_char *); + #endif + + #ifdef MPPE +-static void Set_Start_Key __P((u_char *, char *, int)); +-static void SetMasterKeys __P((char *, int, u_char[24], int)); ++static void Set_Start_Key (u_char *, char *, int); ++static void SetMasterKeys (char *, int, u_char[24], int); + #endif + + #ifdef MSLANMAN diff --git a/package/ppp/patches/patch-pppd_chap_ms_h b/package/ppp/patches/patch-pppd_chap_ms_h new file mode 100644 index 000000000..8156d3d95 --- /dev/null +++ b/package/ppp/patches/patch-pppd_chap_ms_h @@ -0,0 +1,24 @@ +--- ppp-2.4.5.orig/pppd/chap_ms.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/chap_ms.h 2014-03-17 16:13:14.000000000 +0100 +@@ -87,16 +87,16 @@ extern void set_mppe_enc_types(int, int) + #define MS_CHAP2_AUTHENTICATEE 0 + #define MS_CHAP2_AUTHENTICATOR 1 + +-void ChapMS __P((u_char *, char *, int, u_char *)); +-void ChapMS2 __P((u_char *, u_char *, char *, char *, int, +- u_char *, u_char[MS_AUTH_RESPONSE_LENGTH+1], int)); ++void ChapMS (u_char *, char *, int, u_char *); ++void ChapMS2 (u_char *, u_char *, char *, char *, int, ++ u_char *, u_char[MS_AUTH_RESPONSE_LENGTH+1], int); + #ifdef MPPE +-void mppe_set_keys __P((u_char *, u_char[MD4_SIGNATURE_SIZE])); ++void mppe_set_keys (u_char *, u_char[MD4_SIGNATURE_SIZE]); + void mppe_set_keys2(u_char PasswordHashHash[MD4_SIGNATURE_SIZE], + u_char NTResponse[24], int IsServer); + #endif + +-void ChallengeHash __P((u_char[16], u_char *, char *, u_char[8])); ++void ChallengeHash (u_char[16], u_char *, char *, u_char[8]); + + void GenerateAuthenticatorResponse(u_char PasswordHashHash[MD4_SIGNATURE_SIZE], + u_char NTResponse[24], u_char PeerChallenge[16], diff --git a/package/ppp/patches/patch-pppd_demand_c b/package/ppp/patches/patch-pppd_demand_c new file mode 100644 index 000000000..42cf70670 --- /dev/null +++ b/package/ppp/patches/patch-pppd_demand_c @@ -0,0 +1,11 @@ +--- ppp-2.4.5.orig/pppd/demand.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/demand.c 2014-03-17 16:13:13.000000000 +0100 +@@ -70,7 +70,7 @@ struct packet { + struct packet *pend_q; + struct packet *pend_qtail; + +-static int active_packet __P((unsigned char *, int)); ++static int active_packet (unsigned char *, int); + + /* + * demand_conf - configure the interface for doing dial-on-demand. diff --git a/package/ppp/patches/patch-pppd_eap_c b/package/ppp/patches/patch-pppd_eap_c new file mode 100644 index 000000000..2a73f162f --- /dev/null +++ b/package/ppp/patches/patch-pppd_eap_c @@ -0,0 +1,41 @@ +--- ppp-2.4.5.orig/pppd/eap.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/eap.c 2014-03-17 16:13:15.000000000 +0100 +@@ -111,13 +111,13 @@ static option_t eap_option_list[] = { + /* + * Protocol entry points. + */ +-static void eap_init __P((int unit)); +-static void eap_input __P((int unit, u_char *inp, int inlen)); +-static void eap_protrej __P((int unit)); +-static void eap_lowerup __P((int unit)); +-static void eap_lowerdown __P((int unit)); +-static int eap_printpkt __P((u_char *inp, int inlen, +- void (*)(void *arg, char *fmt, ...), void *arg)); ++static void eap_init (int unit); ++static void eap_input (int unit, u_char *inp, int inlen); ++static void eap_protrej (int unit); ++static void eap_lowerup (int unit); ++static void eap_lowerdown (int unit); ++static int eap_printpkt (u_char *inp, int inlen, ++ void (*)(void *arg, char *fmt, ...), void *arg); + + struct protent eap_protent = { + PPP_EAP, /* protocol number */ +@@ -178,7 +178,7 @@ static const u_char wkmodulus[] = { + }; + + /* Local forward declarations. */ +-static void eap_server_timeout __P((void *arg)); ++static void eap_server_timeout (void *arg); + + /* + * Convert EAP state code to printable string for debug. +@@ -2144,7 +2144,7 @@ static int + eap_printpkt(inp, inlen, printer, arg) + u_char *inp; + int inlen; +-void (*printer) __P((void *, char *, ...)); ++void (*printer) (void *, char *, ...); + void *arg; + { + int code, id, len, rtype, vallen; diff --git a/package/ppp/patches/patch-pppd_eap_h b/package/ppp/patches/patch-pppd_eap_h new file mode 100644 index 000000000..8df5ca09c --- /dev/null +++ b/package/ppp/patches/patch-pppd_eap_h @@ -0,0 +1,13 @@ +--- ppp-2.4.5.orig/pppd/eap.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/eap.h 2014-03-17 16:13:13.000000000 +0100 +@@ -145,8 +145,8 @@ typedef struct eap_state { + + extern eap_state eap_states[]; + +-void eap_authwithpeer __P((int unit, char *localname)); +-void eap_authpeer __P((int unit, char *localname)); ++void eap_authwithpeer (int unit, char *localname); ++void eap_authpeer (int unit, char *localname); + + extern struct protent eap_protent; + diff --git a/package/ppp/patches/patch-pppd_ecp_c b/package/ppp/patches/patch-pppd_ecp_c new file mode 100644 index 000000000..42ed12934 --- /dev/null +++ b/package/ppp/patches/patch-pppd_ecp_c @@ -0,0 +1,42 @@ +--- ppp-2.4.5.orig/pppd/ecp.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/ecp.c 2014-03-17 16:13:14.000000000 +0100 +@@ -79,20 +79,20 @@ static option_t ecp_option_list[] = { + /* + * Protocol entry points from main code. + */ +-static void ecp_init __P((int unit)); ++static void ecp_init (int unit); + /* +-static void ecp_open __P((int unit)); +-static void ecp_close __P((int unit, char *)); +-static void ecp_lowerup __P((int unit)); +-static void ecp_lowerdown __P((int)); +-static void ecp_input __P((int unit, u_char *pkt, int len)); +-static void ecp_protrej __P((int unit)); ++static void ecp_open (int unit); ++static void ecp_close (int unit, char *); ++static void ecp_lowerup (int unit); ++static void ecp_lowerdown (int); ++static void ecp_input (int unit, u_char *pkt, int len); ++static void ecp_protrej (int unit); + */ +-static int ecp_printpkt __P((u_char *pkt, int len, ++static int ecp_printpkt (u_char *pkt, int len, + void (*printer) __P((void *, char *, ...)), +- void *arg)); ++ void *arg); + /* +-static void ecp_datainput __P((int unit, u_char *pkt, int len)); ++static void ecp_datainput (int unit, u_char *pkt, int len); + */ + + struct protent ecp_protent = { +@@ -165,7 +165,7 @@ static int + ecp_printpkt(p, plen, printer, arg) + u_char *p; + int plen; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + return 0; diff --git a/package/ppp/patches/patch-pppd_eui64_h b/package/ppp/patches/patch-pppd_eui64_h new file mode 100644 index 000000000..ce593874b --- /dev/null +++ b/package/ppp/patches/patch-pppd_eui64_h @@ -0,0 +1,11 @@ +--- ppp-2.4.5.orig/pppd/eui64.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/eui64.h 2014-03-17 16:13:14.000000000 +0100 +@@ -108,7 +108,7 @@ typedef union + } while (0) + #define eui64_setlo32(e, l) eui64_set32(e, l) + +-char *eui64_ntoa __P((eui64_t)); /* Returns ascii representation of id */ ++char *eui64_ntoa (eui64_t); /* Returns ascii representation of id */ + + #endif /* __EUI64_H__ */ + diff --git a/package/ppp/patches/patch-pppd_fsm_c b/package/ppp/patches/patch-pppd_fsm_c new file mode 100644 index 000000000..098d101ee --- /dev/null +++ b/package/ppp/patches/patch-pppd_fsm_c @@ -0,0 +1,25 @@ +--- ppp-2.4.5.orig/pppd/fsm.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/fsm.c 2014-03-17 16:13:14.000000000 +0100 +@@ -57,14 +57,14 @@ + + static const char rcsid[] = RCSID; + +-static void fsm_timeout __P((void *)); +-static void fsm_rconfreq __P((fsm *, int, u_char *, int)); +-static void fsm_rconfack __P((fsm *, int, u_char *, int)); +-static void fsm_rconfnakrej __P((fsm *, int, int, u_char *, int)); +-static void fsm_rtermreq __P((fsm *, int, u_char *, int)); +-static void fsm_rtermack __P((fsm *)); +-static void fsm_rcoderej __P((fsm *, u_char *, int)); +-static void fsm_sconfreq __P((fsm *, int)); ++static void fsm_timeout (void *); ++static void fsm_rconfreq (fsm *, int, u_char *, int); ++static void fsm_rconfack (fsm *, int, u_char *, int); ++static void fsm_rconfnakrej (fsm *, int, int, u_char *, int); ++static void fsm_rtermreq (fsm *, int, u_char *, int); ++static void fsm_rtermack (fsm *); ++static void fsm_rcoderej (fsm *, u_char *, int); ++static void fsm_sconfreq (fsm *, int); + + #define PROTO_NAME(f) ((f)->callbacks->proto_name) + diff --git a/package/ppp/patches/patch-pppd_fsm_h b/package/ppp/patches/patch-pppd_fsm_h new file mode 100644 index 000000000..a0705c0c6 --- /dev/null +++ b/package/ppp/patches/patch-pppd_fsm_h @@ -0,0 +1,73 @@ +--- ppp-2.4.5.orig/pppd/fsm.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/fsm.h 2014-03-17 16:13:14.000000000 +0100 +@@ -86,33 +86,33 @@ typedef struct fsm { + + typedef struct fsm_callbacks { + void (*resetci) /* Reset our Configuration Information */ +- __P((fsm *)); ++ (fsm *); + int (*cilen) /* Length of our Configuration Information */ +- __P((fsm *)); ++ (fsm *); + void (*addci) /* Add our Configuration Information */ +- __P((fsm *, u_char *, int *)); ++ (fsm *, u_char *, int *); + int (*ackci) /* ACK our Configuration Information */ +- __P((fsm *, u_char *, int)); ++ (fsm *, u_char *, int); + int (*nakci) /* NAK our Configuration Information */ +- __P((fsm *, u_char *, int, int)); ++ (fsm *, u_char *, int, int); + int (*rejci) /* Reject our Configuration Information */ +- __P((fsm *, u_char *, int)); ++ (fsm *, u_char *, int); + int (*reqci) /* Request peer's Configuration Information */ +- __P((fsm *, u_char *, int *, int)); ++ (fsm *, u_char *, int *, int); + void (*up) /* Called when fsm reaches OPENED state */ +- __P((fsm *)); ++ (fsm *); + void (*down) /* Called when fsm leaves OPENED state */ +- __P((fsm *)); ++ (fsm *); + void (*starting) /* Called when we want the lower layer */ +- __P((fsm *)); ++ (fsm *); + void (*finished) /* Called when we don't want the lower layer */ +- __P((fsm *)); ++ (fsm *); + void (*protreject) /* Called when Protocol-Reject received */ +- __P((int)); ++ (int); + void (*retransmit) /* Retransmission is necessary */ +- __P((fsm *)); ++ (fsm *); + int (*extcode) /* Called when unknown code received */ +- __P((fsm *, int, int, u_char *, int)); ++ (fsm *, int, int, u_char *, int); + char *proto_name; /* String name for protocol (for messages) */ + } fsm_callbacks; + +@@ -152,14 +152,14 @@ typedef struct fsm_callbacks { + /* + * Prototypes + */ +-void fsm_init __P((fsm *)); +-void fsm_lowerup __P((fsm *)); +-void fsm_lowerdown __P((fsm *)); +-void fsm_open __P((fsm *)); +-void fsm_close __P((fsm *, char *)); +-void fsm_input __P((fsm *, u_char *, int)); +-void fsm_protreject __P((fsm *)); +-void fsm_sdata __P((fsm *, int, int, u_char *, int)); ++void fsm_init (fsm *); ++void fsm_lowerup (fsm *); ++void fsm_lowerdown (fsm *); ++void fsm_open (fsm *); ++void fsm_close (fsm *, char *); ++void fsm_input (fsm *, u_char *, int); ++void fsm_protreject (fsm *); ++void fsm_sdata (fsm *, int, int, u_char *, int); + + + /* diff --git a/package/ppp/patches/patch-pppd_ipcp_c b/package/ppp/patches/patch-pppd_ipcp_c new file mode 100644 index 000000000..e0b610948 --- /dev/null +++ b/package/ppp/patches/patch-pppd_ipcp_c @@ -0,0 +1,129 @@ +--- ppp-2.4.5.orig/pppd/ipcp.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/ipcp.c 2014-03-17 16:13:13.000000000 +0100 +@@ -75,13 +75,13 @@ bool disable_defaultip = 0; /* Don't use + bool noremoteip = 0; /* Let him have no IP address */ + + /* Hook for a plugin to know when IP protocol has come up */ +-void (*ip_up_hook) __P((void)) = NULL; ++void (*ip_up_hook) (void) = NULL; + + /* Hook for a plugin to know when IP protocol has come down */ +-void (*ip_down_hook) __P((void)) = NULL; ++void (*ip_down_hook) (void) = NULL; + + /* Hook for a plugin to choose the remote IP address */ +-void (*ip_choose_hook) __P((u_int32_t *)) = NULL; ++void (*ip_choose_hook) (u_int32_t *) = NULL; + + /* Notifiers for when IPCP goes up and down */ + struct notifier *ip_up_notifier = NULL; +@@ -100,16 +100,16 @@ static char netmask_str[20]; /* string + /* + * Callbacks for fsm code. (CI = Configuration Information) + */ +-static void ipcp_resetci __P((fsm *)); /* Reset our CI */ +-static int ipcp_cilen __P((fsm *)); /* Return length of our CI */ +-static void ipcp_addci __P((fsm *, u_char *, int *)); /* Add our CI */ +-static int ipcp_ackci __P((fsm *, u_char *, int)); /* Peer ack'd our CI */ +-static int ipcp_nakci __P((fsm *, u_char *, int, int));/* Peer nak'd our CI */ +-static int ipcp_rejci __P((fsm *, u_char *, int)); /* Peer rej'd our CI */ +-static int ipcp_reqci __P((fsm *, u_char *, int *, int)); /* Rcv CI */ +-static void ipcp_up __P((fsm *)); /* We're UP */ +-static void ipcp_down __P((fsm *)); /* We're DOWN */ +-static void ipcp_finished __P((fsm *)); /* Don't need lower layer */ ++static void ipcp_resetci (fsm *); /* Reset our CI */ ++static int ipcp_cilen (fsm *); /* Return length of our CI */ ++static void ipcp_addci (fsm *, u_char *, int *); /* Add our CI */ ++static int ipcp_ackci (fsm *, u_char *, int); /* Peer ack'd our CI */ ++static int ipcp_nakci (fsm *, u_char *, int, int);/* Peer nak'd our CI */ ++static int ipcp_rejci (fsm *, u_char *, int); /* Peer rej'd our CI */ ++static int ipcp_reqci (fsm *, u_char *, int *, int); /* Rcv CI */ ++static void ipcp_up (fsm *); /* We're UP */ ++static void ipcp_down (fsm *); /* We're DOWN */ ++static void ipcp_finished (fsm *); /* Don't need lower layer */ + + fsm ipcp_fsm[NUM_PPP]; /* IPCP fsm structure */ + +@@ -134,12 +134,12 @@ static fsm_callbacks ipcp_callbacks = { + /* + * Command-line options. + */ +-static int setvjslots __P((char **)); +-static int setdnsaddr __P((char **)); +-static int setwinsaddr __P((char **)); +-static int setnetmask __P((char **)); +-int setipaddr __P((char *, char **, int)); +-static void printipaddr __P((option_t *, void (*)(void *, char *,...),void *)); ++static int setvjslots (char **); ++static int setdnsaddr (char **); ++static int setwinsaddr (char **); ++static int setnetmask (char **); ++int setipaddr (char *, char **, int); ++static void printipaddr (option_t *, void (*)(void *, char *,...),void *); + + static option_t ipcp_option_list[] = { + { "noip", o_bool, &ipcp_protent.enabled_flag, +@@ -237,19 +237,19 @@ static option_t ipcp_option_list[] = { + /* + * Protocol entry points from main code. + */ +-static void ipcp_init __P((int)); +-static void ipcp_open __P((int)); +-static void ipcp_close __P((int, char *)); +-static void ipcp_lowerup __P((int)); +-static void ipcp_lowerdown __P((int)); +-static void ipcp_input __P((int, u_char *, int)); +-static void ipcp_protrej __P((int)); +-static int ipcp_printpkt __P((u_char *, int, +- void (*) __P((void *, char *, ...)), void *)); +-static void ip_check_options __P((void)); +-static int ip_demand_conf __P((int)); +-static int ip_active_pkt __P((u_char *, int)); +-static void create_resolv __P((u_int32_t, u_int32_t)); ++static void ipcp_init (int); ++static void ipcp_open (int); ++static void ipcp_close (int, char *); ++static void ipcp_lowerup (int); ++static void ipcp_lowerdown (int); ++static void ipcp_input (int, u_char *, int); ++static void ipcp_protrej (int); ++static int ipcp_printpkt (u_char *, int, ++ void (*) __P((void *, char *, ...)), void *); ++static void ip_check_options (void); ++static int ip_demand_conf (int); ++static int ip_active_pkt (u_char *, int); ++static void create_resolv (u_int32_t, u_int32_t); + + struct protent ipcp_protent = { + PPP_IPCP, +@@ -271,9 +271,9 @@ struct protent ipcp_protent = { + ip_active_pkt + }; + +-static void ipcp_clear_addrs __P((int, u_int32_t, u_int32_t)); +-static void ipcp_script __P((char *, int)); /* Run an up/down script */ +-static void ipcp_script_done __P((void *)); ++static void ipcp_clear_addrs (int, u_int32_t, u_int32_t); ++static void ipcp_script (char *, int); /* Run an up/down script */ ++static void ipcp_script_done (void *); + + /* + * Lengths of configuration options. +@@ -482,7 +482,7 @@ setipaddr(arg, argv, doit) + static void + printipaddr(opt, printer, arg) + option_t *opt; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + ipcp_options *wo = &ipcp_wantoptions[0]; +@@ -2126,7 +2126,7 @@ static int + ipcp_printpkt(p, plen, printer, arg) + u_char *p; + int plen; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + int code, id, len, olen; diff --git a/package/ppp/patches/patch-pppd_ipcp_h b/package/ppp/patches/patch-pppd_ipcp_h new file mode 100644 index 000000000..76656d181 --- /dev/null +++ b/package/ppp/patches/patch-pppd_ipcp_h @@ -0,0 +1,10 @@ +--- ppp-2.4.5.orig/pppd/ipcp.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/ipcp.h 2014-03-17 16:13:16.000000000 +0100 +@@ -91,6 +91,6 @@ extern ipcp_options ipcp_gotoptions[]; + extern ipcp_options ipcp_allowoptions[]; + extern ipcp_options ipcp_hisoptions[]; + +-char *ip_ntoa __P((u_int32_t)); ++char *ip_ntoa (u_int32_t); + + extern struct protent ipcp_protent; diff --git a/package/ppp/patches/patch-pppd_ipv6cp_c b/package/ppp/patches/patch-pppd_ipv6cp_c index 1d4123776..0d63be37b 100644 --- a/package/ppp/patches/patch-pppd_ipv6cp_c +++ b/package/ppp/patches/patch-pppd_ipv6cp_c @@ -1,5 +1,5 @@ ---- ppp-2.4.4.orig/pppd/ipv6cp.c 2005-08-26 01:59:34.000000000 +0200 -+++ ppp-2.4.4/pppd/ipv6cp.c 2009-12-18 09:06:00.333449663 +0100 +--- ppp-2.4.5.orig/pppd/ipv6cp.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/ipv6cp.c 2014-03-17 16:13:14.000000000 +0100 @@ -151,6 +151,7 @@ */ @@ -8,3 +8,105 @@ #include <string.h> #include <unistd.h> #include <netdb.h> +@@ -182,16 +183,16 @@ static int ipv6cp_is_up; + /* + * Callbacks for fsm code. (CI = Configuration Information) + */ +-static void ipv6cp_resetci __P((fsm *)); /* Reset our CI */ +-static int ipv6cp_cilen __P((fsm *)); /* Return length of our CI */ +-static void ipv6cp_addci __P((fsm *, u_char *, int *)); /* Add our CI */ +-static int ipv6cp_ackci __P((fsm *, u_char *, int)); /* Peer ack'd our CI */ +-static int ipv6cp_nakci __P((fsm *, u_char *, int, int));/* Peer nak'd our CI */ +-static int ipv6cp_rejci __P((fsm *, u_char *, int)); /* Peer rej'd our CI */ +-static int ipv6cp_reqci __P((fsm *, u_char *, int *, int)); /* Rcv CI */ +-static void ipv6cp_up __P((fsm *)); /* We're UP */ +-static void ipv6cp_down __P((fsm *)); /* We're DOWN */ +-static void ipv6cp_finished __P((fsm *)); /* Don't need lower layer */ ++static void ipv6cp_resetci (fsm *); /* Reset our CI */ ++static int ipv6cp_cilen (fsm *); /* Return length of our CI */ ++static void ipv6cp_addci (fsm *, u_char *, int *); /* Add our CI */ ++static int ipv6cp_ackci (fsm *, u_char *, int); /* Peer ack'd our CI */ ++static int ipv6cp_nakci (fsm *, u_char *, int, int);/* Peer nak'd our CI */ ++static int ipv6cp_rejci (fsm *, u_char *, int); /* Peer rej'd our CI */ ++static int ipv6cp_reqci (fsm *, u_char *, int *, int); /* Rcv CI */ ++static void ipv6cp_up (fsm *); /* We're UP */ ++static void ipv6cp_down (fsm *); /* We're DOWN */ ++static void ipv6cp_finished (fsm *); /* Don't need lower layer */ + + fsm ipv6cp_fsm[NUM_PPP]; /* IPV6CP fsm structure */ + +@@ -216,9 +217,9 @@ static fsm_callbacks ipv6cp_callbacks = + /* + * Command-line options. + */ +-static int setifaceid __P((char **arg)); +-static void printifaceid __P((option_t *, +- void (*)(void *, char *, ...), void *)); ++static int setifaceid (char **arg); ++static void printifaceid (option_t *, ++ void (*)(void *, char *, ...), void *); + + static option_t ipv6cp_option_list[] = { + { "ipv6", o_special, (void *)setifaceid, +@@ -259,18 +260,18 @@ static option_t ipv6cp_option_list[] = { + /* + * Protocol entry points from main code. + */ +-static void ipv6cp_init __P((int)); +-static void ipv6cp_open __P((int)); +-static void ipv6cp_close __P((int, char *)); +-static void ipv6cp_lowerup __P((int)); +-static void ipv6cp_lowerdown __P((int)); +-static void ipv6cp_input __P((int, u_char *, int)); +-static void ipv6cp_protrej __P((int)); +-static int ipv6cp_printpkt __P((u_char *, int, +- void (*) __P((void *, char *, ...)), void *)); +-static void ipv6_check_options __P((void)); +-static int ipv6_demand_conf __P((int)); +-static int ipv6_active_pkt __P((u_char *, int)); ++static void ipv6cp_init (int); ++static void ipv6cp_open (int); ++static void ipv6cp_close (int, char *); ++static void ipv6cp_lowerup (int); ++static void ipv6cp_lowerdown (int); ++static void ipv6cp_input (int, u_char *, int); ++static void ipv6cp_protrej (int); ++static int ipv6cp_printpkt (u_char *, int, ++ void (*) __P((void *, char *, ...)), void *); ++static void ipv6_check_options (void); ++static int ipv6_demand_conf (int); ++static int ipv6_active_pkt (u_char *, int); + + struct protent ipv6cp_protent = { + PPP_IPV6CP, +@@ -292,9 +293,9 @@ struct protent ipv6cp_protent = { + ipv6_active_pkt + }; + +-static void ipv6cp_clear_addrs __P((int, eui64_t, eui64_t)); +-static void ipv6cp_script __P((char *)); +-static void ipv6cp_script_done __P((void *)); ++static void ipv6cp_clear_addrs (int, eui64_t, eui64_t); ++static void ipv6cp_script (char *); ++static void ipv6cp_script_done (void *); + + /* + * Lengths of configuration options. +@@ -380,7 +381,7 @@ char *llv6_ntoa(eui64_t ifaceid); + static void + printifaceid(opt, printer, arg) + option_t *opt; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + ipv6cp_options *wo = &ipv6cp_wantoptions[0]; +@@ -1435,7 +1436,7 @@ static int + ipv6cp_printpkt(p, plen, printer, arg) + u_char *p; + int plen; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + int code, id, len, olen; diff --git a/package/ppp/patches/patch-pppd_ipxcp_c b/package/ppp/patches/patch-pppd_ipxcp_c new file mode 100644 index 000000000..cf75a4c5b --- /dev/null +++ b/package/ppp/patches/patch-pppd_ipxcp_c @@ -0,0 +1,98 @@ +--- ppp-2.4.5.orig/pppd/ipxcp.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/ipxcp.c 2014-03-17 16:13:13.000000000 +0100 +@@ -78,17 +78,17 @@ ipxcp_options ipxcp_hisoptions[NUM_PPP]; + /* + * Callbacks for fsm code. (CI = Configuration Information) + */ +-static void ipxcp_resetci __P((fsm *)); /* Reset our CI */ +-static int ipxcp_cilen __P((fsm *)); /* Return length of our CI */ +-static void ipxcp_addci __P((fsm *, u_char *, int *)); /* Add our CI */ +-static int ipxcp_ackci __P((fsm *, u_char *, int)); /* Peer ack'd our CI */ +-static int ipxcp_nakci __P((fsm *, u_char *, int, int));/* Peer nak'd our CI */ +-static int ipxcp_rejci __P((fsm *, u_char *, int)); /* Peer rej'd our CI */ +-static int ipxcp_reqci __P((fsm *, u_char *, int *, int)); /* Rcv CI */ +-static void ipxcp_up __P((fsm *)); /* We're UP */ +-static void ipxcp_down __P((fsm *)); /* We're DOWN */ +-static void ipxcp_finished __P((fsm *)); /* Don't need lower layer */ +-static void ipxcp_script __P((fsm *, char *)); /* Run an up/down script */ ++static void ipxcp_resetci (fsm *); /* Reset our CI */ ++static int ipxcp_cilen (fsm *); /* Return length of our CI */ ++static void ipxcp_addci (fsm *, u_char *, int *); /* Add our CI */ ++static int ipxcp_ackci (fsm *, u_char *, int); /* Peer ack'd our CI */ ++static int ipxcp_nakci (fsm *, u_char *, int, int);/* Peer nak'd our CI */ ++static int ipxcp_rejci (fsm *, u_char *, int); /* Peer rej'd our CI */ ++static int ipxcp_reqci (fsm *, u_char *, int *, int); /* Rcv CI */ ++static void ipxcp_up (fsm *); /* We're UP */ ++static void ipxcp_down (fsm *); /* We're DOWN */ ++static void ipxcp_finished (fsm *); /* Don't need lower layer */ ++static void ipxcp_script (fsm *, char *); /* Run an up/down script */ + + fsm ipxcp_fsm[NUM_PPP]; /* IPXCP fsm structure */ + +@@ -113,10 +113,10 @@ static fsm_callbacks ipxcp_callbacks = { + /* + * Command-line options. + */ +-static int setipxnode __P((char **)); +-static void printipxnode __P((option_t *, +- void (*)(void *, char *, ...), void *)); +-static int setipxname __P((char **)); ++static int setipxnode (char **); ++static void printipxnode (option_t *, ++ void (*)(void *, char *, ...), void *); ++static int setipxname (char **); + + static option_t ipxcp_option_list[] = { + { "ipx", o_bool, &ipxcp_protent.enabled_flag, +@@ -170,15 +170,15 @@ static option_t ipxcp_option_list[] = { + * Protocol entry points. + */ + +-static void ipxcp_init __P((int)); +-static void ipxcp_open __P((int)); +-static void ipxcp_close __P((int, char *)); +-static void ipxcp_lowerup __P((int)); +-static void ipxcp_lowerdown __P((int)); +-static void ipxcp_input __P((int, u_char *, int)); +-static void ipxcp_protrej __P((int)); +-static int ipxcp_printpkt __P((u_char *, int, +- void (*) __P((void *, char *, ...)), void *)); ++static void ipxcp_init (int); ++static void ipxcp_open (int); ++static void ipxcp_close (int, char *); ++static void ipxcp_lowerup (int); ++static void ipxcp_lowerdown (int); ++static void ipxcp_input (int, u_char *, int); ++static void ipxcp_protrej (int); ++static int ipxcp_printpkt (u_char *, int, ++ void (*) __P((void *, char *, ...)), void *); + + struct protent ipxcp_protent = { + PPP_IPXCP, +@@ -217,7 +217,7 @@ struct protent ipxcp_protent = { + + static int ipxcp_is_up; + +-static char *ipx_ntoa __P((u_int32_t)); ++static char *ipx_ntoa (u_int32_t); + + /* Used in printing the node number */ + #define NODE(base) base[0], base[1], base[2], base[3], base[4], base[5] +@@ -323,7 +323,7 @@ setipxnode(argv) + static void + printipxnode(opt, printer, arg) + option_t *opt; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + unsigned char *p; +@@ -1473,7 +1473,7 @@ static int + ipxcp_printpkt(p, plen, printer, arg) + u_char *p; + int plen; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + int code, id, len, olen; diff --git a/package/ppp/patches/patch-pppd_lcp_c b/package/ppp/patches/patch-pppd_lcp_c new file mode 100644 index 000000000..5d8971b94 --- /dev/null +++ b/package/ppp/patches/patch-pppd_lcp_c @@ -0,0 +1,115 @@ +--- ppp-2.4.5.orig/pppd/lcp.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/lcp.c 2014-03-17 16:13:13.000000000 +0100 +@@ -66,7 +66,7 @@ static const char rcsid[] = RCSID; + /* steal a bit in fsm flags word */ + #define DELAYED_UP 0x100 + +-static void lcp_delayed_up __P((void *)); ++static void lcp_delayed_up (void *); + + /* + * LCP-related command-line options. +@@ -76,12 +76,12 @@ int lcp_echo_fails = 0; /* Tolerance to + bool lax_recv = 0; /* accept control chars in asyncmap */ + bool noendpoint = 0; /* don't send/accept endpoint discriminator */ + +-static int noopt __P((char **)); ++static int noopt (char **); + + #ifdef HAVE_MULTILINK +-static int setendpoint __P((char **)); +-static void printendpoint __P((option_t *, void (*)(void *, char *, ...), +- void *)); ++static int setendpoint (char **); ++static void printendpoint (option_t *, void (*)(void *, char *, ...), ++ void *); + #endif /* HAVE_MULTILINK */ + + static option_t lcp_option_list[] = { +@@ -202,31 +202,31 @@ static u_char nak_buffer[PPP_MRU]; /* wh + /* + * Callbacks for fsm code. (CI = Configuration Information) + */ +-static void lcp_resetci __P((fsm *)); /* Reset our CI */ +-static int lcp_cilen __P((fsm *)); /* Return length of our CI */ +-static void lcp_addci __P((fsm *, u_char *, int *)); /* Add our CI to pkt */ +-static int lcp_ackci __P((fsm *, u_char *, int)); /* Peer ack'd our CI */ +-static int lcp_nakci __P((fsm *, u_char *, int, int)); /* Peer nak'd our CI */ +-static int lcp_rejci __P((fsm *, u_char *, int)); /* Peer rej'd our CI */ +-static int lcp_reqci __P((fsm *, u_char *, int *, int)); /* Rcv peer CI */ +-static void lcp_up __P((fsm *)); /* We're UP */ +-static void lcp_down __P((fsm *)); /* We're DOWN */ +-static void lcp_starting __P((fsm *)); /* We need lower layer up */ +-static void lcp_finished __P((fsm *)); /* We need lower layer down */ +-static int lcp_extcode __P((fsm *, int, int, u_char *, int)); +-static void lcp_rprotrej __P((fsm *, u_char *, int)); ++static void lcp_resetci (fsm *); /* Reset our CI */ ++static int lcp_cilen (fsm *); /* Return length of our CI */ ++static void lcp_addci (fsm *, u_char *, int *); /* Add our CI to pkt */ ++static int lcp_ackci (fsm *, u_char *, int); /* Peer ack'd our CI */ ++static int lcp_nakci (fsm *, u_char *, int, int); /* Peer nak'd our CI */ ++static int lcp_rejci (fsm *, u_char *, int); /* Peer rej'd our CI */ ++static int lcp_reqci (fsm *, u_char *, int *, int); /* Rcv peer CI */ ++static void lcp_up (fsm *); /* We're UP */ ++static void lcp_down (fsm *); /* We're DOWN */ ++static void lcp_starting (fsm *); /* We need lower layer up */ ++static void lcp_finished (fsm *); /* We need lower layer down */ ++static int lcp_extcode (fsm *, int, int, u_char *, int); ++static void lcp_rprotrej (fsm *, u_char *, int); + + /* + * routines to send LCP echos to peer + */ + +-static void lcp_echo_lowerup __P((int)); +-static void lcp_echo_lowerdown __P((int)); +-static void LcpEchoTimeout __P((void *)); +-static void lcp_received_echo_reply __P((fsm *, int, u_char *, int)); +-static void LcpSendEchoRequest __P((fsm *)); +-static void LcpLinkFailure __P((fsm *)); +-static void LcpEchoCheck __P((fsm *)); ++static void lcp_echo_lowerup (int); ++static void lcp_echo_lowerdown (int); ++static void LcpEchoTimeout (void *); ++static void lcp_received_echo_reply (fsm *, int, u_char *, int); ++static void LcpSendEchoRequest (fsm *); ++static void LcpLinkFailure (fsm *); ++static void LcpEchoCheck (fsm *); + + static fsm_callbacks lcp_callbacks = { /* LCP callback routines */ + lcp_resetci, /* Reset our Configuration Information */ +@@ -251,11 +251,11 @@ static fsm_callbacks lcp_callbacks = { / + * Some of these are called directly. + */ + +-static void lcp_init __P((int)); +-static void lcp_input __P((int, u_char *, int)); +-static void lcp_protrej __P((int)); +-static int lcp_printpkt __P((u_char *, int, +- void (*) __P((void *, char *, ...)), void *)); ++static void lcp_init (int); ++static void lcp_input (int, u_char *, int); ++static void lcp_protrej (int); ++static int lcp_printpkt (u_char *, int, ++ void (*) __P((void *, char *, ...)), void *); + + struct protent lcp_protent = { + PPP_LCP, +@@ -322,7 +322,7 @@ setendpoint(argv) + static void + printendpoint(opt, printer, arg) + option_t *opt; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + printer(arg, "%s", epdisc_to_str(&lcp_wantoptions[0].endpoint)); +@@ -1985,7 +1985,7 @@ static int + lcp_printpkt(p, plen, printer, arg) + u_char *p; + int plen; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + int code, id, len, olen, i; diff --git a/package/ppp/patches/patch-pppd_lcp_h b/package/ppp/patches/patch-pppd_lcp_h new file mode 100644 index 000000000..379df37a5 --- /dev/null +++ b/package/ppp/patches/patch-pppd_lcp_h @@ -0,0 +1,19 @@ +--- ppp-2.4.5.orig/pppd/lcp.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/lcp.h 2014-03-17 16:13:16.000000000 +0100 +@@ -122,11 +122,11 @@ extern lcp_options lcp_hisoptions[]; + #define MINMRU 128 /* No MRUs below this */ + #define MAXMRU 16384 /* Normally limit MRU to this */ + +-void lcp_open __P((int)); +-void lcp_close __P((int, char *)); +-void lcp_lowerup __P((int)); +-void lcp_lowerdown __P((int)); +-void lcp_sprotrej __P((int, u_char *, int)); /* send protocol reject */ ++void lcp_open (int); ++void lcp_close (int, char *); ++void lcp_lowerup (int); ++void lcp_lowerdown (int); ++void lcp_sprotrej (int, u_char *, int); /* send protocol reject */ + + extern struct protent lcp_protent; + diff --git a/package/ppp/patches/patch-pppd_magic_c b/package/ppp/patches/patch-pppd_magic_c new file mode 100644 index 000000000..073619eac --- /dev/null +++ b/package/ppp/patches/patch-pppd_magic_c @@ -0,0 +1,13 @@ +--- ppp-2.4.5.orig/pppd/magic.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/magic.c 2014-03-17 16:13:14.000000000 +0100 +@@ -53,8 +53,8 @@ + + static const char rcsid[] = RCSID; + +-extern long mrand48 __P((void)); +-extern void srand48 __P((long)); ++extern long mrand48 (void); ++extern void srand48 (long); + + /* + * magic_init - Initialize the magic number generator. diff --git a/package/ppp/patches/patch-pppd_magic_h b/package/ppp/patches/patch-pppd_magic_h new file mode 100644 index 000000000..af4ea88df --- /dev/null +++ b/package/ppp/patches/patch-pppd_magic_h @@ -0,0 +1,14 @@ +--- ppp-2.4.5.orig/pppd/magic.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/magic.h 2014-03-17 16:13:14.000000000 +0100 +@@ -42,8 +42,8 @@ + * $Id: magic.h,v 1.5 2003/06/11 23:56:26 paulus Exp $ + */ + +-void magic_init __P((void)); /* Initialize the magic number generator */ +-u_int32_t magic __P((void)); /* Returns the next magic number */ ++void magic_init (void); /* Initialize the magic number generator */ ++u_int32_t magic (void); /* Returns the next magic number */ + + /* Fill buffer with random bytes */ +-void random_bytes __P((unsigned char *buf, int len)); ++void random_bytes (unsigned char *buf, int len); diff --git a/package/ppp/patches/patch-pppd_main_c b/package/ppp/patches/patch-pppd_main_c index 630420deb..adc00acd1 100644 --- a/package/ppp/patches/patch-pppd_main_c +++ b/package/ppp/patches/patch-pppd_main_c @@ -1,5 +1,5 @@ --- ppp-2.4.5.orig/pppd/main.c 2009-11-16 23:26:07.000000000 +0100 -+++ ppp-2.4.5/pppd/main.c 2011-01-16 15:51:05.000000000 +0100 ++++ ppp-2.4.5/pppd/main.c 2014-03-17 16:13:13.000000000 +0100 @@ -90,6 +90,7 @@ #include <sys/socket.h> #include <netinet/in.h> @@ -8,14 +8,97 @@ #include "pppd.h" #include "magic.h" -@@ -228,6 +229,7 @@ static struct subprocess *children; +@@ -159,10 +160,10 @@ TDB_CONTEXT *pppdb; /* database for sto + + char db_key[32]; + +-int (*holdoff_hook) __P((void)) = NULL; +-int (*new_phase_hook) __P((int)) = NULL; +-void (*snoop_recv_hook) __P((unsigned char *p, int len)) = NULL; +-void (*snoop_send_hook) __P((unsigned char *p, int len)) = NULL; ++int (*holdoff_hook) (void) = NULL; ++int (*new_phase_hook) (int) = NULL; ++void (*snoop_recv_hook) (unsigned char *p, int len) = NULL; ++void (*snoop_send_hook) (unsigned char *p, int len) = NULL; + + static int conn_running; /* we have a [dis]connector running */ + static int fd_loop; /* fd for getting demand-dial packets */ +@@ -218,7 +219,7 @@ bool bundle_terminating; + struct subprocess { + pid_t pid; + char *prog; +- void (*done) __P((void *)); ++ void (*done) (void *); + void *arg; + int killable; + struct subprocess *next; +@@ -228,38 +229,39 @@ static struct subprocess *children; /* Prototypes for procedures local to this file. */ +-static void setup_signals __P((void)); +-static void create_pidfile __P((int pid)); +-static void create_linkpidfile __P((int pid)); +-static void cleanup __P((void)); +-static void get_input __P((void)); +-static void calltimeout __P((void)); +-static struct timeval *timeleft __P((struct timeval *)); +-static void kill_my_pg __P((int)); +-static void hup __P((int)); +-static void term __P((int)); +-static void chld __P((int)); +-static void toggle_debug __P((int)); +-static void open_ccp __P((int)); +-static void bad_signal __P((int)); +-static void holdoff_end __P((void *)); +-static void forget_child __P((int pid, int status)); +-static int reap_kids __P((void)); +-static void childwait_end __P((void *)); +static void check_time(void); - static void setup_signals __P((void)); - static void create_pidfile __P((int pid)); - static void create_linkpidfile __P((int pid)); ++static void setup_signals (void); ++static void create_pidfile (int pid); ++static void create_linkpidfile (int pid); ++static void cleanup (void); ++static void get_input (void); ++static void calltimeout (void); ++static struct timeval *timeleft (struct timeval *); ++static void kill_my_pg (int); ++static void hup (int); ++static void term (int); ++static void chld (int); ++static void toggle_debug (int); ++static void open_ccp (int); ++static void bad_signal (int); ++static void holdoff_end (void *); ++static void forget_child (int pid, int status); ++static int reap_kids (void); ++static void childwait_end (void *); + + #ifdef USE_TDB +-static void update_db_entry __P((void)); +-static void add_db_key __P((const char *)); +-static void delete_db_key __P((const char *)); +-static void cleanup_db __P((void)); ++static void update_db_entry (void); ++static void add_db_key (const char *); ++static void delete_db_key (const char *); ++static void cleanup_db (void); + #endif + +-static void handle_events __P((void)); +-void print_link_stats __P((void)); ++static void handle_events (void); ++void print_link_stats (void); + +-extern char *ttyname __P((int)); +-extern char *getlogin __P((void)); +-int main __P((int, char *[])); ++extern char *ttyname (int); ++extern char *getlogin (void); ++int main (int, char *[]); + + #ifdef ultrix + #undef O_NONBLOCK @@ -530,6 +532,7 @@ main(argc, argv) info("Starting link"); } @@ -24,7 +107,14 @@ gettimeofday(&start_time, NULL); script_unsetenv("CONNECT_TIME"); script_unsetenv("BYTES_SENT"); -@@ -1263,6 +1266,36 @@ struct callout { +@@ -1257,19 +1260,49 @@ update_link_stats(u) + struct callout { + struct timeval c_time; /* time at which to call routine */ + void *c_arg; /* argument to routine */ +- void (*c_func) __P((void *)); /* routine */ ++ void (*c_func) (void *); /* routine */ + struct callout *c_next; + }; static struct callout *callout = NULL; /* Callout list */ static struct timeval timenow; /* Current time */ @@ -61,6 +151,23 @@ /* * timeout - Schedule a timeout. + */ + void + timeout(func, arg, secs, usecs) +- void (*func) __P((void *)); ++ void (*func) (void *); + void *arg; + int secs, usecs; + { +@@ -1308,7 +1341,7 @@ timeout(func, arg, secs, usecs) + */ + void + untimeout(func, arg) +- void (*func) __P((void *)); ++ void (*func) (void *); + void *arg; + { + struct callout **copp, *freep; @@ -1333,6 +1366,8 @@ calltimeout() { struct callout *p; @@ -79,3 +186,21 @@ gettimeofday(&timenow, NULL); tvp->tv_sec = callout->c_time.tv_sec - timenow.tv_sec; +@@ -1692,7 +1729,7 @@ run_program(prog, args, must_exist, done + char *prog; + char **args; + int must_exist; +- void (*done) __P((void *)); ++ void (*done) (void *); + void *arg; + int wait; + { +@@ -1767,7 +1804,7 @@ void + record_child(pid, prog, done, arg, killable) + int pid; + char *prog; +- void (*done) __P((void *)); ++ void (*done) (void *); + void *arg; + int killable; + { diff --git a/package/ppp/patches/patch-pppd_md4_h b/package/ppp/patches/patch-pppd_md4_h new file mode 100644 index 000000000..95eb0bb46 --- /dev/null +++ b/package/ppp/patches/patch-pppd_md4_h @@ -0,0 +1,36 @@ +--- ppp-2.4.5.orig/pppd/md4.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/md4.h 2014-03-17 16:13:13.000000000 +0100 +@@ -29,7 +29,7 @@ typedef struct { + ** Initialize the MD4_CTX prepatory to doing a message digest + ** computation. + */ +-extern void MD4Init __P((MD4_CTX *MD)); ++extern void MD4Init (MD4_CTX *MD); + + /* MD4Update(MD,X,count) + ** Input: X -- a pointer to an array of unsigned characters. +@@ -43,7 +43,7 @@ extern void MD4Init __P((MD4_CTX *MD)); + ** every MD computation should end with one call to MD4Update with a + ** count less than 512. Zero is OK for a count. + */ +-extern void MD4Update __P((MD4_CTX *MD, unsigned char *X, unsigned int count)); ++extern void MD4Update (MD4_CTX *MD, unsigned char *X, unsigned int count); + + /* MD4Print(MD) + ** Prints message digest buffer MD as 32 hexadecimal digits. +@@ -51,13 +51,13 @@ extern void MD4Update __P((MD4_CTX *MD, + ** of buffer[3]. + ** Each byte is printed with high-order hexadecimal digit first. + */ +-extern void MD4Print __P((MD4_CTX *)); ++extern void MD4Print (MD4_CTX *); + + /* MD4Final(buf, MD) + ** Returns message digest from MD and terminates the message + ** digest computation. + */ +-extern void MD4Final __P((unsigned char *, MD4_CTX *)); ++extern void MD4Final (unsigned char *, MD4_CTX *); + + /* + ** End of md4.h diff --git a/package/ppp/patches/patch-pppd_multilink_c b/package/ppp/patches/patch-pppd_multilink_c new file mode 100644 index 000000000..511a80cae --- /dev/null +++ b/package/ppp/patches/patch-pppd_multilink_c @@ -0,0 +1,22 @@ +--- ppp-2.4.5.orig/pppd/multilink.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/multilink.c 2014-03-17 16:13:15.000000000 +0100 +@@ -50,13 +50,13 @@ bool multilink_master; /* we own the mu + extern TDB_CONTEXT *pppdb; + extern char db_key[]; + +-static void make_bundle_links __P((int append)); +-static void remove_bundle_link __P((void)); +-static void iterate_bundle_links __P((void (*func) __P((char *)))); ++static void make_bundle_links (int append); ++static void remove_bundle_link (void); ++static void iterate_bundle_links (void (*func) __P((char *))); + +-static int get_default_epdisc __P((struct epdisc *)); +-static int parse_num __P((char *str, const char *key, int *valp)); +-static int owns_unit __P((TDB_DATA pid, int unit)); ++static int get_default_epdisc (struct epdisc *); ++static int parse_num (char *str, const char *key, int *valp); ++static int owns_unit (TDB_DATA pid, int unit); + + #define set_ip_epdisc(ep, addr) do { \ + ep->length = 4; \ diff --git a/package/ppp/patches/patch-pppd_options_c b/package/ppp/patches/patch-pppd_options_c new file mode 100644 index 000000000..d23d1291d --- /dev/null +++ b/package/ppp/patches/patch-pppd_options_c @@ -0,0 +1,155 @@ +--- ppp-2.4.5.orig/pppd/options.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/options.c 2014-03-17 16:13:14.000000000 +0100 +@@ -76,7 +76,7 @@ + #include "pathnames.h" + + #if defined(ultrix) || defined(NeXT) +-char *strdup __P((char *)); ++char *strdup (char *); + #endif + + static const char rcsid[] = RCSID; +@@ -147,30 +147,30 @@ static char logfile_name[MAXPATHLEN]; /* + /* + * Prototypes + */ +-static int setdomain __P((char **)); +-static int readfile __P((char **)); +-static int callfile __P((char **)); +-static int showversion __P((char **)); +-static int showhelp __P((char **)); +-static void usage __P((void)); +-static int setlogfile __P((char **)); ++static int setdomain (char **); ++static int readfile (char **); ++static int callfile (char **); ++static int showversion (char **); ++static int showhelp (char **); ++static void usage (void); ++static int setlogfile (char **); + #ifdef PLUGIN +-static int loadplugin __P((char **)); ++static int loadplugin (char **); + #endif + + #ifdef PPP_FILTER +-static int setpassfilter __P((char **)); +-static int setactivefilter __P((char **)); ++static int setpassfilter (char **); ++static int setactivefilter (char **); + #endif + + #ifdef MAXOCTETS +-static int setmodir __P((char **)); ++static int setmodir (char **); + #endif + +-static option_t *find_option __P((const char *name)); +-static int process_option __P((option_t *, char *, char **)); +-static int n_arguments __P((option_t *)); +-static int number_option __P((char *, u_int32_t *, int)); ++static option_t *find_option (const char *name); ++static int process_option (option_t *, char *, char **); ++static int n_arguments (option_t *); ++static int number_option (char *, u_int32_t *, int); + + /* + * Structure to store extra lists of options. +@@ -577,13 +577,13 @@ match_option(name, opt, dowild) + option_t *opt; + int dowild; + { +- int (*match) __P((char *, char **, int)); ++ int (*match) (char *, char **, int); + + if (dowild != (opt->type == o_wild)) + return 0; + if (!dowild) + return strcmp(name, opt->name) == 0; +- match = (int (*) __P((char *, char **, int))) opt->addr; ++ match = (int (*) (char *, char **, int)) opt->addr; + return (*match)(name, NULL, 0); + } + +@@ -635,8 +635,8 @@ process_option(opt, cmd, argv) + u_int32_t v; + int iv, a; + char *sv; +- int (*parser) __P((char **)); +- int (*wildp) __P((char *, char **, int)); ++ int (*parser) (char **); ++ int (*wildp) (char *, char **, int); + char *optopt = (opt->type == o_wild)? "": " option"; + int prio = option_priority; + option_t *mainopt = opt; +@@ -767,7 +767,7 @@ process_option(opt, cmd, argv) + + case o_special_noarg: + case o_special: +- parser = (int (*) __P((char **))) opt->addr; ++ parser = (int (*) (char **)) opt->addr; + if (!(*parser)(argv)) + return 0; + if (opt->flags & OPT_A2LIST) { +@@ -790,7 +790,7 @@ process_option(opt, cmd, argv) + break; + + case o_wild: +- wildp = (int (*) __P((char *, char **, int))) opt->addr; ++ wildp = (int (*) (char *, char **, int)) opt->addr; + if (!(*wildp)(cmd, argv, 1)) + return 0; + break; +@@ -881,7 +881,7 @@ check_options() + static void + print_option(opt, mainopt, printer, arg) + option_t *opt, *mainopt; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + int i, v; +@@ -944,12 +944,12 @@ print_option(opt, mainopt, printer, arg) + printer(arg, " "); + } + if (opt->flags & OPT_A2PRINTER) { +- void (*oprt) __P((option_t *, ++ void (*oprt) (option_t *, + void ((*)__P((void *, char *, ...))), +- void *)); +- oprt = (void (*) __P((option_t *, ++ void *); ++ oprt = (void (*) (option_t *, + void ((*)__P((void *, char *, ...))), +- void *)))opt->addr2; ++ void *))opt->addr2; + (*oprt)(opt, printer, arg); + } else if (opt->flags & OPT_A2STRVAL) { + p = (char *) opt->addr2; +@@ -986,7 +986,7 @@ print_option(opt, mainopt, printer, arg) + static void + print_option_list(opt, printer, arg) + option_t *opt; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + while (opt->name != NULL) { +@@ -1004,7 +1004,7 @@ print_option_list(opt, printer, arg) + */ + void + print_options(printer, arg) +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + struct option_list *list; +@@ -1576,7 +1576,7 @@ loadplugin(argv) + char *arg = *argv; + void *handle; + const char *err; +- void (*init) __P((void)); ++ void (*init) (void); + char *path = arg; + const char *vers; + diff --git a/package/ppp/patches/patch-pppd_plugins_radius_radiusclient_h b/package/ppp/patches/patch-pppd_plugins_radius_radiusclient_h new file mode 100644 index 000000000..6c6d1582c --- /dev/null +++ b/package/ppp/patches/patch-pppd_plugins_radius_radiusclient_h @@ -0,0 +1,121 @@ +--- ppp-2.4.5.orig/pppd/plugins/radius/radiusclient.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/plugins/radius/radiusclient.h 2014-03-17 16:13:11.000000000 +0100 +@@ -382,74 +382,74 @@ typedef struct env + + /* avpair.c */ + +-VALUE_PAIR *rc_avpair_add __P((VALUE_PAIR **, int, void *, int, int)); +-int rc_avpair_assign __P((VALUE_PAIR *, void *, int)); +-VALUE_PAIR *rc_avpair_new __P((int, void *, int, int)); +-VALUE_PAIR *rc_avpair_gen __P((AUTH_HDR *)); +-VALUE_PAIR *rc_avpair_get __P((VALUE_PAIR *, UINT4)); +-VALUE_PAIR *rc_avpair_copy __P((VALUE_PAIR *)); +-void rc_avpair_insert __P((VALUE_PAIR **, VALUE_PAIR *, VALUE_PAIR *)); +-void rc_avpair_free __P((VALUE_PAIR *)); +-int rc_avpair_parse __P((char *, VALUE_PAIR **)); +-int rc_avpair_tostr __P((VALUE_PAIR *, char *, int, char *, int)); +-VALUE_PAIR *rc_avpair_readin __P((FILE *)); ++VALUE_PAIR *rc_avpair_add (VALUE_PAIR **, int, void *, int, int); ++int rc_avpair_assign (VALUE_PAIR *, void *, int); ++VALUE_PAIR *rc_avpair_new (int, void *, int, int); ++VALUE_PAIR *rc_avpair_gen (AUTH_HDR *); ++VALUE_PAIR *rc_avpair_get (VALUE_PAIR *, UINT4); ++VALUE_PAIR *rc_avpair_copy (VALUE_PAIR *); ++void rc_avpair_insert (VALUE_PAIR **, VALUE_PAIR *, VALUE_PAIR *); ++void rc_avpair_free (VALUE_PAIR *); ++int rc_avpair_parse (char *, VALUE_PAIR **); ++int rc_avpair_tostr (VALUE_PAIR *, char *, int, char *, int); ++VALUE_PAIR *rc_avpair_readin (FILE *); + + /* buildreq.c */ + +-void rc_buildreq __P((SEND_DATA *, int, char *, unsigned short, int, int)); +-unsigned char rc_get_seqnbr __P((void)); +-int rc_auth __P((UINT4, VALUE_PAIR *, VALUE_PAIR **, char *, REQUEST_INFO *)); +-int rc_auth_using_server __P((SERVER *, UINT4, VALUE_PAIR *, VALUE_PAIR **, +- char *, REQUEST_INFO *)); +-int rc_auth_proxy __P((VALUE_PAIR *, VALUE_PAIR **, char *)); +-int rc_acct __P((UINT4, VALUE_PAIR *)); +-int rc_acct_using_server __P((SERVER *, UINT4, VALUE_PAIR *)); +-int rc_acct_proxy __P((VALUE_PAIR *)); +-int rc_check __P((char *, unsigned short, char *)); ++void rc_buildreq (SEND_DATA *, int, char *, unsigned short, int, int); ++unsigned char rc_get_seqnbr (void); ++int rc_auth (UINT4, VALUE_PAIR *, VALUE_PAIR **, char *, REQUEST_INFO *); ++int rc_auth_using_server (SERVER *, UINT4, VALUE_PAIR *, VALUE_PAIR **, ++ char *, REQUEST_INFO *); ++int rc_auth_proxy (VALUE_PAIR *, VALUE_PAIR **, char *); ++int rc_acct (UINT4, VALUE_PAIR *); ++int rc_acct_using_server (SERVER *, UINT4, VALUE_PAIR *); ++int rc_acct_proxy (VALUE_PAIR *); ++int rc_check (char *, unsigned short, char *); + + /* clientid.c */ + +-int rc_read_mapfile __P((char *)); +-UINT4 rc_map2id __P((char *)); ++int rc_read_mapfile (char *); ++UINT4 rc_map2id (char *); + + /* config.c */ + +-int rc_read_config __P((char *)); +-char *rc_conf_str __P((char *)); +-int rc_conf_int __P((char *)); +-SERVER *rc_conf_srv __P((char *)); +-int rc_find_server __P((char *, UINT4 *, char *)); ++int rc_read_config (char *); ++char *rc_conf_str (char *); ++int rc_conf_int (char *); ++SERVER *rc_conf_srv (char *); ++int rc_find_server (char *, UINT4 *, char *); + + /* dict.c */ + +-int rc_read_dictionary __P((char *)); +-DICT_ATTR *rc_dict_getattr __P((int, int)); +-DICT_ATTR *rc_dict_findattr __P((char *)); +-DICT_VALUE *rc_dict_findval __P((char *)); +-DICT_VALUE * rc_dict_getval __P((UINT4, char *)); +-VENDOR_DICT * rc_dict_findvendor __P((char *)); +-VENDOR_DICT * rc_dict_getvendor __P((int)); ++int rc_read_dictionary (char *); ++DICT_ATTR *rc_dict_getattr (int, int); ++DICT_ATTR *rc_dict_findattr (char *); ++DICT_VALUE *rc_dict_findval (char *); ++DICT_VALUE * rc_dict_getval (UINT4, char *); ++VENDOR_DICT * rc_dict_findvendor (char *); ++VENDOR_DICT * rc_dict_getvendor (int); + + /* ip_util.c */ + +-UINT4 rc_get_ipaddr __P((char *)); +-int rc_good_ipaddr __P((char *)); +-const char *rc_ip_hostname __P((UINT4)); +-UINT4 rc_own_ipaddress __P((void)); ++UINT4 rc_get_ipaddr (char *); ++int rc_good_ipaddr (char *); ++const char *rc_ip_hostname (UINT4); ++UINT4 rc_own_ipaddress (void); + + + /* sendserver.c */ + +-int rc_send_server __P((SEND_DATA *, char *, REQUEST_INFO *)); ++int rc_send_server (SEND_DATA *, char *, REQUEST_INFO *); + + /* util.c */ + +-void rc_str2tm __P((char *, struct tm *)); +-char *rc_mksid __P((void)); +-void rc_mdelay __P((int)); ++void rc_str2tm (char *, struct tm *); ++char *rc_mksid (void); ++void rc_mdelay (int); + + /* md5.c */ + +-void rc_md5_calc __P((unsigned char *, unsigned char *, unsigned int)); ++void rc_md5_calc (unsigned char *, unsigned char *, unsigned int); + + #endif /* RADIUSCLIENT_H */ diff --git a/package/ppp/patches/patch-pppd_plugins_rp-pppoe_if_c b/package/ppp/patches/patch-pppd_plugins_rp-pppoe_if_c new file mode 100644 index 000000000..462b24613 --- /dev/null +++ b/package/ppp/patches/patch-pppd_plugins_rp-pppoe_if_c @@ -0,0 +1,13 @@ +--- ppp-2.4.5.orig/pppd/plugins/rp-pppoe/if.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/plugins/rp-pppoe/if.c 2014-03-17 16:32:55.000000000 +0100 +@@ -30,10 +30,6 @@ static char const RCSID[] = + #include <linux/if_packet.h> + #endif + +-#ifdef HAVE_NET_ETHERNET_H +-#include <net/ethernet.h> +-#endif +- + #ifdef HAVE_ASM_TYPES_H + #include <asm/types.h> + #endif diff --git a/package/ppp/patches/patch-pppd_plugins_rp-pppoe_plugin_c b/package/ppp/patches/patch-pppd_plugins_rp-pppoe_plugin_c new file mode 100644 index 000000000..9a2b922b2 --- /dev/null +++ b/package/ppp/patches/patch-pppd_plugins_rp-pppoe_plugin_c @@ -0,0 +1,10 @@ +--- ppp-2.4.5.orig/pppd/plugins/rp-pppoe/plugin.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/plugins/rp-pppoe/plugin.c 2014-03-17 16:32:55.000000000 +0100 +@@ -46,7 +46,6 @@ static char const RCSID[] = + #include <unistd.h> + #include <fcntl.h> + #include <signal.h> +-#include <net/ethernet.h> + #include <net/if_arp.h> + #include <linux/ppp_defs.h> + #include <linux/if_ppp.h> diff --git a/package/ppp/patches/patch-pppd_plugins_rp-pppoe_pppoe-discovery_c b/package/ppp/patches/patch-pppd_plugins_rp-pppoe_pppoe-discovery_c new file mode 100644 index 000000000..6b79ad968 --- /dev/null +++ b/package/ppp/patches/patch-pppd_plugins_rp-pppoe_pppoe-discovery_c @@ -0,0 +1,22 @@ +--- ppp-2.4.5.orig/pppd/plugins/rp-pppoe/pppoe-discovery.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/plugins/rp-pppoe/pppoe-discovery.c 2014-03-17 16:32:55.000000000 +0100 +@@ -27,10 +27,6 @@ + #include <linux/if_packet.h> + #endif + +-#ifdef HAVE_NET_ETHERNET_H +-#include <net/ethernet.h> +-#endif +- + #ifdef HAVE_ASM_TYPES_H + #include <asm/types.h> + #endif +@@ -55,6 +51,8 @@ void die(int status) + exit(status); + } + ++#define error(x...) fprintf(stderr, x) ++ + /* Initialize frame types to RFC 2516 values. Some broken peers apparently + use different frame types... sigh... */ + diff --git a/package/ppp/patches/patch-pppd_plugins_rp-pppoe_pppoe_h b/package/ppp/patches/patch-pppd_plugins_rp-pppoe_pppoe_h new file mode 100644 index 000000000..9597ff314 --- /dev/null +++ b/package/ppp/patches/patch-pppd_plugins_rp-pppoe_pppoe_h @@ -0,0 +1,29 @@ +--- ppp-2.4.5.orig/pppd/plugins/rp-pppoe/pppoe.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/plugins/rp-pppoe/pppoe.h 2014-03-17 16:32:55.000000000 +0100 +@@ -40,7 +40,6 @@ + #endif + + #ifdef HAVE_SYS_CDEFS_H +-#include <sys/cdefs.h> + #endif + + #ifdef HAVE_SYS_SOCKET_H +@@ -86,18 +85,6 @@ typedef unsigned long UINT32_t; + + #include <netinet/in.h> + +-#ifdef HAVE_NETINET_IF_ETHER_H +-#include <sys/types.h> +- +-#ifdef HAVE_SYS_SOCKET_H +-#include <sys/socket.h> +-#endif +-#ifndef HAVE_SYS_DLPI_H +-#include <netinet/if_ether.h> +-#endif +-#endif +- +- + + /* Ethernet frame types according to RFC 2516 */ + #define ETH_PPPOE_DISCOVERY 0x8863 diff --git a/package/ppp/patches/patch-pppd_pppcrypt_h b/package/ppp/patches/patch-pppd_pppcrypt_h new file mode 100644 index 000000000..53cac9746 --- /dev/null +++ b/package/ppp/patches/patch-pppd_pppcrypt_h @@ -0,0 +1,14 @@ +--- ppp-2.4.5.orig/pppd/pppcrypt.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/pppcrypt.h 2014-03-17 16:13:13.000000000 +0100 +@@ -41,8 +41,8 @@ + #include <des.h> + #endif + +-extern bool DesSetkey __P((u_char *)); +-extern bool DesEncrypt __P((u_char *, u_char *)); +-extern bool DesDecrypt __P((u_char *, u_char *)); ++extern bool DesSetkey (u_char *); ++extern bool DesEncrypt (u_char *, u_char *); ++extern bool DesDecrypt (u_char *, u_char *); + + #endif /* PPPCRYPT_H */ diff --git a/package/ppp/patches/patch-pppd_pppd_h b/package/ppp/patches/patch-pppd_pppd_h new file mode 100644 index 000000000..85e81b675 --- /dev/null +++ b/package/ppp/patches/patch-pppd_pppd_h @@ -0,0 +1,532 @@ +--- ppp-2.4.5.orig/pppd/pppd.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/pppd.h 2014-03-17 16:13:14.000000000 +0100 +@@ -198,7 +198,7 @@ struct epdisc { + #define EPD_MAGIC 4 + #define EPD_PHONENUM 5 + +-typedef void (*notify_func) __P((void *, int)); ++typedef void (*notify_func) (void *, int); + + struct notifier { + struct notifier *next; +@@ -392,35 +392,35 @@ extern int option_priority; /* priority + struct protent { + u_short protocol; /* PPP protocol number */ + /* Initialization procedure */ +- void (*init) __P((int unit)); ++ void (*init) (int unit); + /* Process a received packet */ +- void (*input) __P((int unit, u_char *pkt, int len)); ++ void (*input) (int unit, u_char *pkt, int len); + /* Process a received protocol-reject */ +- void (*protrej) __P((int unit)); ++ void (*protrej) (int unit); + /* Lower layer has come up */ +- void (*lowerup) __P((int unit)); ++ void (*lowerup) (int unit); + /* Lower layer has gone down */ +- void (*lowerdown) __P((int unit)); ++ void (*lowerdown) (int unit); + /* Open the protocol */ +- void (*open) __P((int unit)); ++ void (*open) (int unit); + /* Close the protocol */ +- void (*close) __P((int unit, char *reason)); ++ void (*close) (int unit, char *reason); + /* Print a packet in readable form */ +- int (*printpkt) __P((u_char *pkt, int len, ++ int (*printpkt) (u_char *pkt, int len, + void (*printer) __P((void *, char *, ...)), +- void *arg)); ++ void *arg); + /* Process a received data packet */ +- void (*datainput) __P((int unit, u_char *pkt, int len)); ++ void (*datainput) (int unit, u_char *pkt, int len); + bool enabled_flag; /* 0 iff protocol is disabled */ + char *name; /* Text name of protocol */ + char *data_name; /* Text name of corresponding data protocol */ + option_t *options; /* List of command-line options */ + /* Check requested options, assign defaults */ +- void (*check_options) __P((void)); ++ void (*check_options) (void); + /* Configure interface for demand-dial */ +- int (*demand_conf) __P((int unit)); ++ int (*demand_conf) (int unit); + /* Say whether to bring up link for this pkt */ +- int (*active_pkt) __P((u_char *pkt, int len)); ++ int (*active_pkt) (u_char *pkt, int len); + }; + + /* Table of pointers to supported protocols */ +@@ -437,25 +437,25 @@ struct channel { + /* set of options for this channel */ + option_t *options; + /* find and process a per-channel options file */ +- void (*process_extra_options) __P((void)); ++ void (*process_extra_options) (void); + /* check all the options that have been given */ +- void (*check_options) __P((void)); ++ void (*check_options) (void); + /* get the channel ready to do PPP, return a file descriptor */ +- int (*connect) __P((void)); ++ int (*connect) (void); + /* we're finished with the channel */ +- void (*disconnect) __P((void)); ++ void (*disconnect) (void); + /* put the channel into PPP `mode' */ +- int (*establish_ppp) __P((int)); ++ int (*establish_ppp) (int); + /* take the channel out of PPP `mode', restore loopback if demand */ +- void (*disestablish_ppp) __P((int)); ++ void (*disestablish_ppp) (int); + /* set the transmit-side PPP parameters of the channel */ +- void (*send_config) __P((int, u_int32_t, int, int)); ++ void (*send_config) (int, u_int32_t, int, int); + /* set the receive-side PPP parameters of the channel */ +- void (*recv_config) __P((int, u_int32_t, int, int)); ++ void (*recv_config) (int, u_int32_t, int, int); + /* cleanup on error or normal exit */ +- void (*cleanup) __P((void)); ++ void (*cleanup) (void); + /* close the device, called in children after fork */ +- void (*close) __P((void)); ++ void (*close) (void); + }; + + extern struct channel *the_channel; +@@ -465,117 +465,117 @@ extern struct channel *the_channel; + */ + + /* Procedures exported from main.c. */ +-void set_ifunit __P((int)); /* set stuff that depends on ifunit */ +-void detach __P((void)); /* Detach from controlling tty */ +-void die __P((int)); /* Cleanup and exit */ +-void quit __P((void)); /* like die(1) */ +-void novm __P((char *)); /* Say we ran out of memory, and die */ +-void timeout __P((void (*func)(void *), void *arg, int s, int us)); ++void set_ifunit (int); /* set stuff that depends on ifunit */ ++void detach (void); /* Detach from controlling tty */ ++void die (int); /* Cleanup and exit */ ++void quit (void); /* like die(1) */ ++void novm (char *); /* Say we ran out of memory, and die */ ++void timeout (void (*func)(void *), void *arg, int s, int us); + /* Call func(arg) after s.us seconds */ +-void untimeout __P((void (*func)(void *), void *arg)); ++void untimeout (void (*func)(void *), void *arg); + /* Cancel call to func(arg) */ +-void record_child __P((int, char *, void (*) (void *), void *, int)); +-pid_t safe_fork __P((int, int, int)); /* Fork & close stuff in child */ +-int device_script __P((char *cmd, int in, int out, int dont_wait)); ++void record_child (int, char *, void (*) (void *), void *, int); ++pid_t safe_fork (int, int, int); /* Fork & close stuff in child */ ++int device_script (char *cmd, int in, int out, int dont_wait); + /* Run `cmd' with given stdin and stdout */ +-pid_t run_program __P((char *prog, char **args, int must_exist, +- void (*done)(void *), void *arg, int wait)); ++pid_t run_program (char *prog, char **args, int must_exist, ++ void (*done)(void *), void *arg, int wait); + /* Run program prog with args in child */ +-void reopen_log __P((void)); /* (re)open the connection to syslog */ +-void print_link_stats __P((void)); /* Print stats, if available */ +-void reset_link_stats __P((int)); /* Reset (init) stats when link goes up */ +-void update_link_stats __P((int)); /* Get stats at link termination */ +-void script_setenv __P((char *, char *, int)); /* set script env var */ +-void script_unsetenv __P((char *)); /* unset script env var */ +-void new_phase __P((int)); /* signal start of new phase */ +-void add_notifier __P((struct notifier **, notify_func, void *)); +-void remove_notifier __P((struct notifier **, notify_func, void *)); +-void notify __P((struct notifier *, int)); +-int ppp_send_config __P((int, int, u_int32_t, int, int)); +-int ppp_recv_config __P((int, int, u_int32_t, int, int)); +-const char *protocol_name __P((int)); +-void remove_pidfiles __P((void)); +-void lock_db __P((void)); +-void unlock_db __P((void)); ++void reopen_log (void); /* (re)open the connection to syslog */ ++void print_link_stats (void); /* Print stats, if available */ ++void reset_link_stats (int); /* Reset (init) stats when link goes up */ ++void update_link_stats (int); /* Get stats at link termination */ ++void script_setenv (char *, char *, int); /* set script env var */ ++void script_unsetenv (char *); /* unset script env var */ ++void new_phase (int); /* signal start of new phase */ ++void add_notifier (struct notifier **, notify_func, void *); ++void remove_notifier (struct notifier **, notify_func, void *); ++void notify (struct notifier *, int); ++int ppp_send_config (int, int, u_int32_t, int, int); ++int ppp_recv_config (int, int, u_int32_t, int, int); ++const char *protocol_name (int); ++void remove_pidfiles (void); ++void lock_db (void); ++void unlock_db (void); + + /* Procedures exported from tty.c. */ +-void tty_init __P((void)); ++void tty_init (void); + + /* Procedures exported from utils.c. */ +-void log_packet __P((u_char *, int, char *, int)); ++void log_packet (u_char *, int, char *, int); + /* Format a packet and log it with syslog */ +-void print_string __P((char *, int, void (*) (void *, char *, ...), +- void *)); /* Format a string for output */ +-int slprintf __P((char *, int, char *, ...)); /* sprintf++ */ +-int vslprintf __P((char *, int, char *, va_list)); /* vsprintf++ */ +-size_t strlcpy __P((char *, const char *, size_t)); /* safe strcpy */ +-size_t strlcat __P((char *, const char *, size_t)); /* safe strncpy */ +-void dbglog __P((char *, ...)); /* log a debug message */ +-void info __P((char *, ...)); /* log an informational message */ +-void notice __P((char *, ...)); /* log a notice-level message */ +-void warn __P((char *, ...)); /* log a warning message */ +-void error __P((char *, ...)); /* log an error message */ +-void fatal __P((char *, ...)); /* log an error message and die(1) */ +-void init_pr_log __P((const char *, int)); /* initialize for using pr_log */ +-void pr_log __P((void *, char *, ...)); /* printer fn, output to syslog */ +-void end_pr_log __P((void)); /* finish up after using pr_log */ +-void dump_packet __P((const char *, u_char *, int)); ++void print_string (char *, int, void (*) (void *, char *, ...), ++ void *); /* Format a string for output */ ++int slprintf (char *, int, char *, ...); /* sprintf++ */ ++int vslprintf (char *, int, char *, va_list); /* vsprintf++ */ ++size_t strlcpy (char *, const char *, size_t); /* safe strcpy */ ++size_t strlcat (char *, const char *, size_t); /* safe strncpy */ ++void dbglog (char *, ...); /* log a debug message */ ++void info (char *, ...); /* log an informational message */ ++void notice (char *, ...); /* log a notice-level message */ ++void warn (char *, ...); /* log a warning message */ ++void error (char *, ...); /* log an error message */ ++void fatal (char *, ...); /* log an error message and die(1) */ ++void init_pr_log (const char *, int); /* initialize for using pr_log */ ++void pr_log (void *, char *, ...); /* printer fn, output to syslog */ ++void end_pr_log (void); /* finish up after using pr_log */ ++void dump_packet (const char *, u_char *, int); + /* dump packet to debug log if interesting */ +-ssize_t complete_read __P((int, void *, size_t)); ++ssize_t complete_read (int, void *, size_t); + /* read a complete buffer */ + + /* Procedures exported from auth.c */ +-void link_required __P((int)); /* we are starting to use the link */ +-void start_link __P((int)); /* bring the link up now */ +-void link_terminated __P((int)); /* we are finished with the link */ +-void link_down __P((int)); /* the LCP layer has left the Opened state */ +-void upper_layers_down __P((int));/* take all NCPs down */ +-void link_established __P((int)); /* the link is up; authenticate now */ +-void start_networks __P((int)); /* start all the network control protos */ +-void continue_networks __P((int)); /* start network [ip, etc] control protos */ +-void np_up __P((int, int)); /* a network protocol has come up */ +-void np_down __P((int, int)); /* a network protocol has gone down */ +-void np_finished __P((int, int)); /* a network protocol no longer needs link */ +-void auth_peer_fail __P((int, int)); ++void link_required (int); /* we are starting to use the link */ ++void start_link (int); /* bring the link up now */ ++void link_terminated (int); /* we are finished with the link */ ++void link_down (int); /* the LCP layer has left the Opened state */ ++void upper_layers_down (int);/* take all NCPs down */ ++void link_established (int); /* the link is up; authenticate now */ ++void start_networks (int); /* start all the network control protos */ ++void continue_networks (int); /* start network [ip, etc] control protos */ ++void np_up (int, int); /* a network protocol has come up */ ++void np_down (int, int); /* a network protocol has gone down */ ++void np_finished (int, int); /* a network protocol no longer needs link */ ++void auth_peer_fail (int, int); + /* peer failed to authenticate itself */ +-void auth_peer_success __P((int, int, int, char *, int)); ++void auth_peer_success (int, int, int, char *, int); + /* peer successfully authenticated itself */ +-void auth_withpeer_fail __P((int, int)); ++void auth_withpeer_fail (int, int); + /* we failed to authenticate ourselves */ +-void auth_withpeer_success __P((int, int, int)); ++void auth_withpeer_success (int, int, int); + /* we successfully authenticated ourselves */ +-void auth_check_options __P((void)); ++void auth_check_options (void); + /* check authentication options supplied */ +-void auth_reset __P((int)); /* check what secrets we have */ +-int check_passwd __P((int, char *, int, char *, int, char **)); ++void auth_reset (int); /* check what secrets we have */ ++int check_passwd (int, char *, int, char *, int, char **); + /* Check peer-supplied username/password */ +-int get_secret __P((int, char *, char *, char *, int *, int)); ++int get_secret (int, char *, char *, char *, int *, int); + /* get "secret" for chap */ +-int get_srp_secret __P((int unit, char *client, char *server, char *secret, +- int am_server)); +-int auth_ip_addr __P((int, u_int32_t)); ++int get_srp_secret (int unit, char *client, char *server, char *secret, ++ int am_server); ++int auth_ip_addr (int, u_int32_t); + /* check if IP address is authorized */ +-int auth_number __P((void)); /* check if remote number is authorized */ +-int bad_ip_adrs __P((u_int32_t)); ++int auth_number (void); /* check if remote number is authorized */ ++int bad_ip_adrs (u_int32_t); + /* check if IP address is unreasonable */ + + /* Procedures exported from demand.c */ +-void demand_conf __P((void)); /* config interface(s) for demand-dial */ +-void demand_block __P((void)); /* set all NPs to queue up packets */ +-void demand_unblock __P((void)); /* set all NPs to pass packets */ +-void demand_discard __P((void)); /* set all NPs to discard packets */ +-void demand_rexmit __P((int)); /* retransmit saved frames for an NP */ +-int loop_chars __P((unsigned char *, int)); /* process chars from loopback */ +-int loop_frame __P((unsigned char *, int)); /* should we bring link up? */ ++void demand_conf (void); /* config interface(s) for demand-dial */ ++void demand_block (void); /* set all NPs to queue up packets */ ++void demand_unblock (void); /* set all NPs to pass packets */ ++void demand_discard (void); /* set all NPs to discard packets */ ++void demand_rexmit (int); /* retransmit saved frames for an NP */ ++int loop_chars (unsigned char *, int); /* process chars from loopback */ ++int loop_frame (unsigned char *, int); /* should we bring link up? */ + + /* Procedures exported from multilink.c */ + #ifdef HAVE_MULTILINK +-void mp_check_options __P((void)); /* Check multilink-related options */ +-int mp_join_bundle __P((void)); /* join our link to an appropriate bundle */ +-void mp_exit_bundle __P((void)); /* have disconnected our link from bundle */ +-void mp_bundle_terminated __P((void)); +-char *epdisc_to_str __P((struct epdisc *)); /* string from endpoint discrim. */ +-int str_to_epdisc __P((struct epdisc *, char *)); /* endpt disc. from str */ ++void mp_check_options (void); /* Check multilink-related options */ ++int mp_join_bundle (void); /* join our link to an appropriate bundle */ ++void mp_exit_bundle (void); /* have disconnected our link from bundle */ ++void mp_bundle_terminated (void); ++char *epdisc_to_str (struct epdisc *); /* string from endpoint discrim. */ ++int str_to_epdisc (struct epdisc *, char *); /* endpt disc. from str */ + #else + #define mp_bundle_terminated() /* nothing */ + #define mp_exit_bundle() /* nothing */ +@@ -584,142 +584,142 @@ int str_to_epdisc __P((struct epdisc *, + #endif + + /* Procedures exported from sys-*.c */ +-void sys_init __P((void)); /* Do system-dependent initialization */ +-void sys_cleanup __P((void)); /* Restore system state before exiting */ +-int sys_check_options __P((void)); /* Check options specified */ +-void sys_close __P((void)); /* Clean up in a child before execing */ +-int ppp_available __P((void)); /* Test whether ppp kernel support exists */ +-int get_pty __P((int *, int *, char *, int)); /* Get pty master/slave */ +-int open_ppp_loopback __P((void)); /* Open loopback for demand-dialling */ +-int tty_establish_ppp __P((int)); /* Turn serial port into a ppp interface */ +-void tty_disestablish_ppp __P((int)); /* Restore port to normal operation */ +-void generic_disestablish_ppp __P((int dev_fd)); /* Restore device setting */ +-int generic_establish_ppp __P((int dev_fd)); /* Make a ppp interface */ +-void make_new_bundle __P((int, int, int, int)); /* Create new bundle */ +-int bundle_attach __P((int)); /* Attach link to existing bundle */ +-void cfg_bundle __P((int, int, int, int)); /* Configure existing bundle */ +-void destroy_bundle __P((void)); /* Tell driver to destroy bundle */ +-void clean_check __P((void)); /* Check if line was 8-bit clean */ +-void set_up_tty __P((int, int)); /* Set up port's speed, parameters, etc. */ +-void restore_tty __P((int)); /* Restore port's original parameters */ +-void setdtr __P((int, int)); /* Raise or lower port's DTR line */ +-void output __P((int, u_char *, int)); /* Output a PPP packet */ +-void wait_input __P((struct timeval *)); ++void sys_init (void); /* Do system-dependent initialization */ ++void sys_cleanup (void); /* Restore system state before exiting */ ++int sys_check_options (void); /* Check options specified */ ++void sys_close (void); /* Clean up in a child before execing */ ++int ppp_available (void); /* Test whether ppp kernel support exists */ ++int get_pty (int *, int *, char *, int); /* Get pty master/slave */ ++int open_ppp_loopback (void); /* Open loopback for demand-dialling */ ++int tty_establish_ppp (int); /* Turn serial port into a ppp interface */ ++void tty_disestablish_ppp (int); /* Restore port to normal operation */ ++void generic_disestablish_ppp (int dev_fd); /* Restore device setting */ ++int generic_establish_ppp (int dev_fd); /* Make a ppp interface */ ++void make_new_bundle (int, int, int, int); /* Create new bundle */ ++int bundle_attach (int); /* Attach link to existing bundle */ ++void cfg_bundle (int, int, int, int); /* Configure existing bundle */ ++void destroy_bundle (void); /* Tell driver to destroy bundle */ ++void clean_check (void); /* Check if line was 8-bit clean */ ++void set_up_tty (int, int); /* Set up port's speed, parameters, etc. */ ++void restore_tty (int); /* Restore port's original parameters */ ++void setdtr (int, int); /* Raise or lower port's DTR line */ ++void output (int, u_char *, int); /* Output a PPP packet */ ++void wait_input (struct timeval *); + /* Wait for input, with timeout */ +-void add_fd __P((int)); /* Add fd to set to wait for */ +-void remove_fd __P((int)); /* Remove fd from set to wait for */ +-int read_packet __P((u_char *)); /* Read PPP packet */ +-int get_loop_output __P((void)); /* Read pkts from loopback */ +-void tty_send_config __P((int, u_int32_t, int, int)); ++void add_fd (int); /* Add fd to set to wait for */ ++void remove_fd (int); /* Remove fd from set to wait for */ ++int read_packet (u_char *); /* Read PPP packet */ ++int get_loop_output (void); /* Read pkts from loopback */ ++void tty_send_config (int, u_int32_t, int, int); + /* Configure i/f transmit parameters */ +-void tty_set_xaccm __P((ext_accm)); ++void tty_set_xaccm (ext_accm); + /* Set extended transmit ACCM */ +-void tty_recv_config __P((int, u_int32_t, int, int)); ++void tty_recv_config (int, u_int32_t, int, int); + /* Configure i/f receive parameters */ +-int ccp_test __P((int, u_char *, int, int)); ++int ccp_test (int, u_char *, int, int); + /* Test support for compression scheme */ +-void ccp_flags_set __P((int, int, int)); ++void ccp_flags_set (int, int, int); + /* Set kernel CCP state */ +-int ccp_fatal_error __P((int)); /* Test for fatal decomp error in kernel */ +-int get_idle_time __P((int, struct ppp_idle *)); ++int ccp_fatal_error (int); /* Test for fatal decomp error in kernel */ ++int get_idle_time (int, struct ppp_idle *); + /* Find out how long link has been idle */ +-int get_ppp_stats __P((int, struct pppd_stats *)); ++int get_ppp_stats (int, struct pppd_stats *); + /* Return link statistics */ +-void netif_set_mtu __P((int, int)); /* Set PPP interface MTU */ +-int netif_get_mtu __P((int)); /* Get PPP interface MTU */ +-int sifvjcomp __P((int, int, int, int)); ++void netif_set_mtu (int, int); /* Set PPP interface MTU */ ++int netif_get_mtu (int); /* Get PPP interface MTU */ ++int sifvjcomp (int, int, int, int); + /* Configure VJ TCP header compression */ +-int sifup __P((int)); /* Configure i/f up for one protocol */ +-int sifnpmode __P((int u, int proto, enum NPmode mode)); ++int sifup (int); /* Configure i/f up for one protocol */ ++int sifnpmode (int u, int proto, enum NPmode mode); + /* Set mode for handling packets for proto */ +-int sifdown __P((int)); /* Configure i/f down for one protocol */ +-int sifaddr __P((int, u_int32_t, u_int32_t, u_int32_t)); ++int sifdown (int); /* Configure i/f down for one protocol */ ++int sifaddr (int, u_int32_t, u_int32_t, u_int32_t); + /* Configure IPv4 addresses for i/f */ +-int cifaddr __P((int, u_int32_t, u_int32_t)); ++int cifaddr (int, u_int32_t, u_int32_t); + /* Reset i/f IP addresses */ + #ifdef INET6 +-int sif6addr __P((int, eui64_t, eui64_t)); ++int sif6addr (int, eui64_t, eui64_t); + /* Configure IPv6 addresses for i/f */ +-int cif6addr __P((int, eui64_t, eui64_t)); ++int cif6addr (int, eui64_t, eui64_t); + /* Remove an IPv6 address from i/f */ + #endif +-int sifdefaultroute __P((int, u_int32_t, u_int32_t)); ++int sifdefaultroute (int, u_int32_t, u_int32_t); + /* Create default route through i/f */ +-int cifdefaultroute __P((int, u_int32_t, u_int32_t)); ++int cifdefaultroute (int, u_int32_t, u_int32_t); + /* Delete default route through i/f */ +-int sifproxyarp __P((int, u_int32_t)); ++int sifproxyarp (int, u_int32_t); + /* Add proxy ARP entry for peer */ +-int cifproxyarp __P((int, u_int32_t)); ++int cifproxyarp (int, u_int32_t); + /* Delete proxy ARP entry for peer */ +-u_int32_t GetMask __P((u_int32_t)); /* Get appropriate netmask for address */ +-int lock __P((char *)); /* Create lock file for device */ +-int relock __P((int)); /* Rewrite lock file with new pid */ +-void unlock __P((void)); /* Delete previously-created lock file */ +-void logwtmp __P((const char *, const char *, const char *)); ++u_int32_t GetMask (u_int32_t); /* Get appropriate netmask for address */ ++int lock (char *); /* Create lock file for device */ ++int relock (int); /* Rewrite lock file with new pid */ ++void unlock (void); /* Delete previously-created lock file */ ++void logwtmp (const char *, const char *, const char *); + /* Write entry to wtmp file */ +-int get_host_seed __P((void)); /* Get host-dependent random number seed */ +-int have_route_to __P((u_int32_t)); /* Check if route to addr exists */ ++int get_host_seed (void); /* Get host-dependent random number seed */ ++int have_route_to (u_int32_t); /* Check if route to addr exists */ + #ifdef PPP_FILTER +-int set_filters __P((struct bpf_program *pass, struct bpf_program *active)); ++int set_filters (struct bpf_program *pass, struct bpf_program *active); + /* Set filter programs in kernel */ + #endif + #ifdef IPX_CHANGE +-int sipxfaddr __P((int, unsigned long, unsigned char *)); +-int cipxfaddr __P((int)); ++int sipxfaddr (int, unsigned long, unsigned char *); ++int cipxfaddr (int); + #endif +-int get_if_hwaddr __P((u_char *addr, char *name)); +-char *get_first_ethernet __P((void)); ++int get_if_hwaddr (u_char *addr, char *name); ++char *get_first_ethernet (void); + + /* Procedures exported from options.c */ +-int setipaddr __P((char *, char **, int)); /* Set local/remote ip addresses */ +-int parse_args __P((int argc, char **argv)); ++int setipaddr (char *, char **, int); /* Set local/remote ip addresses */ ++int parse_args (int argc, char **argv); + /* Parse options from arguments given */ +-int options_from_file __P((char *filename, int must_exist, int check_prot, +- int privileged)); ++int options_from_file (char *filename, int must_exist, int check_prot, ++ int privileged); + /* Parse options from an options file */ +-int options_from_user __P((void)); /* Parse options from user's .ppprc */ +-int options_for_tty __P((void)); /* Parse options from /etc/ppp/options.tty */ +-int options_from_list __P((struct wordlist *, int privileged)); ++int options_from_user (void); /* Parse options from user's .ppprc */ ++int options_for_tty (void); /* Parse options from /etc/ppp/options.tty */ ++int options_from_list (struct wordlist *, int privileged); + /* Parse options from a wordlist */ +-int getword __P((FILE *f, char *word, int *newlinep, char *filename)); ++int getword (FILE *f, char *word, int *newlinep, char *filename); + /* Read a word from a file */ +-void option_error __P((char *fmt, ...)); ++void option_error (char *fmt, ...); + /* Print an error message about an option */ +-int int_option __P((char *, int *)); ++int int_option (char *, int *); + /* Simplified number_option for decimal ints */ +-void add_options __P((option_t *)); /* Add extra options */ +-void check_options __P((void)); /* check values after all options parsed */ +-int override_value __P((const char *, int, const char *)); ++void add_options (option_t *); /* Add extra options */ ++void check_options (void); /* check values after all options parsed */ ++int override_value (const char *, int, const char *); + /* override value if permitted by priority */ +-void print_options __P((void (*) __P((void *, char *, ...)), void *)); ++void print_options (void (*) __P((void *, char *, ...)), void *); + /* print out values of all options */ + +-int parse_dotted_ip __P((char *, u_int32_t *)); ++int parse_dotted_ip (char *, u_int32_t *); + + /* + * Hooks to enable plugins to change various things. + */ +-extern int (*new_phase_hook) __P((int)); +-extern int (*idle_time_hook) __P((struct ppp_idle *)); +-extern int (*holdoff_hook) __P((void)); +-extern int (*pap_check_hook) __P((void)); +-extern int (*pap_auth_hook) __P((char *user, char *passwd, char **msgp, ++extern int (*new_phase_hook) (int); ++extern int (*idle_time_hook) (struct ppp_idle *); ++extern int (*holdoff_hook) (void); ++extern int (*pap_check_hook) (void); ++extern int (*pap_auth_hook) (char *user, char *passwd, char **msgp, + struct wordlist **paddrs, +- struct wordlist **popts)); +-extern void (*pap_logout_hook) __P((void)); +-extern int (*pap_passwd_hook) __P((char *user, char *passwd)); +-extern int (*allowed_address_hook) __P((u_int32_t addr)); +-extern void (*ip_up_hook) __P((void)); +-extern void (*ip_down_hook) __P((void)); +-extern void (*ip_choose_hook) __P((u_int32_t *)); ++ struct wordlist **popts); ++extern void (*pap_logout_hook) (void); ++extern int (*pap_passwd_hook) (char *user, char *passwd); ++extern int (*allowed_address_hook) (u_int32_t addr); ++extern void (*ip_up_hook) (void); ++extern void (*ip_down_hook) (void); ++extern void (*ip_choose_hook) (u_int32_t *); + +-extern int (*chap_check_hook) __P((void)); +-extern int (*chap_passwd_hook) __P((char *user, char *passwd)); +-extern void (*multilink_join_hook) __P((void)); ++extern int (*chap_check_hook) (void); ++extern int (*chap_passwd_hook) (char *user, char *passwd); ++extern void (*multilink_join_hook) (void); + + /* Let a plugin snoop sent and received packets. Useful for L2TP */ +-extern void (*snoop_recv_hook) __P((unsigned char *p, int len)); +-extern void (*snoop_send_hook) __P((unsigned char *p, int len)); ++extern void (*snoop_recv_hook) (unsigned char *p, int len); ++extern void (*snoop_send_hook) (unsigned char *p, int len); + + /* + * Inline versions of get/put char/short/long. diff --git a/package/ppp/patches/patch-pppd_sys-linux_c b/package/ppp/patches/patch-pppd_sys-linux_c new file mode 100644 index 000000000..d64c41f9e --- /dev/null +++ b/package/ppp/patches/patch-pppd_sys-linux_c @@ -0,0 +1,22 @@ +--- ppp-2.4.5.orig/pppd/sys-linux.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/sys-linux.c 2014-03-17 16:32:55.000000000 +0100 +@@ -102,19 +102,11 @@ + #define MAX_ADDR_LEN 7 + #endif + +-#if __GLIBC__ >= 2 + #include <asm/types.h> /* glibc 2 conflicts with linux/types.h */ + #include <net/if.h> + #include <net/if_arp.h> + #include <net/route.h> + #include <netinet/if_ether.h> +-#else +-#include <linux/types.h> +-#include <linux/if.h> +-#include <linux/if_arp.h> +-#include <linux/route.h> +-#include <linux/if_ether.h> +-#endif + #include <netinet/in.h> + #include <arpa/inet.h> + diff --git a/package/ppp/patches/patch-pppd_sys-solaris_c b/package/ppp/patches/patch-pppd_sys-solaris_c new file mode 100644 index 000000000..66ee69cb8 --- /dev/null +++ b/package/ppp/patches/patch-pppd_sys-solaris_c @@ -0,0 +1,27 @@ +--- ppp-2.4.5.orig/pppd/sys-solaris.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/sys-solaris.c 2014-03-17 16:13:13.000000000 +0100 +@@ -241,15 +241,15 @@ static u_int32_t default_route_gateway; + static u_int32_t proxy_arp_addr; /* Addr for proxy arp entry added */ + + /* Prototypes for procedures local to this file. */ +-static int translate_speed __P((int)); +-static int baud_rate_of __P((int)); +-static int get_ether_addr __P((u_int32_t, struct sockaddr *)); +-static int get_hw_addr __P((char *, u_int32_t, struct sockaddr *)); +-static int get_hw_addr_dlpi __P((char *, struct sockaddr *)); +-static int dlpi_attach __P((int, int)); +-static int dlpi_info_req __P((int)); +-static int dlpi_get_reply __P((int, union DL_primitives *, int, int)); +-static int strioctl __P((int, int, void *, int, int)); ++static int translate_speed (int); ++static int baud_rate_of (int); ++static int get_ether_addr (u_int32_t, struct sockaddr *); ++static int get_hw_addr (char *, u_int32_t, struct sockaddr *); ++static int get_hw_addr_dlpi (char *, struct sockaddr *); ++static int dlpi_attach (int, int); ++static int dlpi_info_req (int); ++static int dlpi_get_reply (int, union DL_primitives *, int, int); ++static int strioctl (int, int, void *, int, int); + + #ifdef SOL2 + /* diff --git a/package/ppp/patches/patch-pppd_tty_c b/package/ppp/patches/patch-pppd_tty_c new file mode 100644 index 000000000..3588e439a --- /dev/null +++ b/package/ppp/patches/patch-pppd_tty_c @@ -0,0 +1,61 @@ +--- ppp-2.4.5.orig/pppd/tty.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/tty.c 2014-03-17 16:13:14.000000000 +0100 +@@ -98,28 +98,28 @@ + #include "fsm.h" + #include "lcp.h" + +-void tty_process_extra_options __P((void)); +-void tty_check_options __P((void)); +-int connect_tty __P((void)); +-void disconnect_tty __P((void)); +-void tty_close_fds __P((void)); +-void cleanup_tty __P((void)); +-void tty_do_send_config __P((int, u_int32_t, int, int)); ++void tty_process_extra_options (void); ++void tty_check_options (void); ++int connect_tty (void); ++void disconnect_tty (void); ++void tty_close_fds (void); ++void cleanup_tty (void); ++void tty_do_send_config (int, u_int32_t, int, int); + +-static int setdevname __P((char *, char **, int)); +-static int setspeed __P((char *, char **, int)); +-static int setxonxoff __P((char **)); +-static int setescape __P((char **)); +-static void printescape __P((option_t *, void (*)(void *, char *,...),void *)); +-static void finish_tty __P((void)); +-static int start_charshunt __P((int, int)); +-static void stop_charshunt __P((void *, int)); +-static void charshunt_done __P((void *)); +-static void charshunt __P((int, int, char *)); +-static int record_write __P((FILE *, int code, u_char *buf, int nb, +- struct timeval *)); +-static int open_socket __P((char *)); +-static void maybe_relock __P((void *, int)); ++static int setdevname (char *, char **, int); ++static int setspeed (char *, char **, int); ++static int setxonxoff (char **); ++static int setescape (char **); ++static void printescape (option_t *, void (*)(void *, char *,...),void *); ++static void finish_tty (void); ++static int start_charshunt (int, int); ++static void stop_charshunt (void *, int); ++static void charshunt_done (void *); ++static void charshunt (int, int, char *); ++static int record_write (FILE *, int code, u_char *buf, int nb, ++ struct timeval *); ++static int open_socket (char *); ++static void maybe_relock (void *, int); + + static int pty_master; /* fd for master side of pty */ + static int pty_slave; /* fd for slave side of pty */ +@@ -374,7 +374,7 @@ setescape(argv) + static void + printescape(opt, printer, arg) + option_t *opt; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + int n; diff --git a/package/ppp/patches/patch-pppd_upap_c b/package/ppp/patches/patch-pppd_upap_c new file mode 100644 index 000000000..cd6ca9d73 --- /dev/null +++ b/package/ppp/patches/patch-pppd_upap_c @@ -0,0 +1,53 @@ +--- ppp-2.4.5.orig/pppd/upap.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/upap.c 2014-03-17 16:13:13.000000000 +0100 +@@ -78,13 +78,13 @@ static option_t pap_option_list[] = { + /* + * Protocol entry points. + */ +-static void upap_init __P((int)); +-static void upap_lowerup __P((int)); +-static void upap_lowerdown __P((int)); +-static void upap_input __P((int, u_char *, int)); +-static void upap_protrej __P((int)); +-static int upap_printpkt __P((u_char *, int, +- void (*) __P((void *, char *, ...)), void *)); ++static void upap_init (int); ++static void upap_lowerup (int); ++static void upap_lowerdown (int); ++static void upap_input (int, u_char *, int); ++static void upap_protrej (int); ++static int upap_printpkt (u_char *, int, ++ void (*) __P((void *, char *, ...)), void *); + + struct protent pap_protent = { + PPP_PAP, +@@ -108,13 +108,13 @@ struct protent pap_protent = { + + upap_state upap[NUM_PPP]; /* UPAP state; one for each unit */ + +-static void upap_timeout __P((void *)); +-static void upap_reqtimeout __P((void *)); +-static void upap_rauthreq __P((upap_state *, u_char *, int, int)); +-static void upap_rauthack __P((upap_state *, u_char *, int, int)); +-static void upap_rauthnak __P((upap_state *, u_char *, int, int)); +-static void upap_sauthreq __P((upap_state *)); +-static void upap_sresp __P((upap_state *, int, int, char *, int)); ++static void upap_timeout (void *); ++static void upap_reqtimeout (void *); ++static void upap_rauthreq (upap_state *, u_char *, int, int); ++static void upap_rauthack (upap_state *, u_char *, int, int); ++static void upap_rauthnak (upap_state *, u_char *, int, int); ++static void upap_sauthreq (upap_state *); ++static void upap_sresp (upap_state *, int, int, char *, int); + + + /* +@@ -612,7 +612,7 @@ static int + upap_printpkt(p, plen, printer, arg) + u_char *p; + int plen; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + int code, id, len; diff --git a/package/ppp/patches/patch-pppd_upap_h b/package/ppp/patches/patch-pppd_upap_h new file mode 100644 index 000000000..1af1f5b21 --- /dev/null +++ b/package/ppp/patches/patch-pppd_upap_h @@ -0,0 +1,12 @@ +--- ppp-2.4.5.orig/pppd/upap.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/upap.h 2014-03-17 16:13:13.000000000 +0100 +@@ -104,7 +104,7 @@ typedef struct upap_state { + + extern upap_state upap[]; + +-void upap_authwithpeer __P((int, char *, char *)); +-void upap_authpeer __P((int)); ++void upap_authwithpeer (int, char *, char *); ++void upap_authpeer (int); + + extern struct protent pap_protent; diff --git a/package/ppp/patches/patch-pppd_utils_c b/package/ppp/patches/patch-pppd_utils_c new file mode 100644 index 000000000..46304e640 --- /dev/null +++ b/package/ppp/patches/patch-pppd_utils_c @@ -0,0 +1,37 @@ +--- ppp-2.4.5.orig/pppd/utils.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppd/utils.c 2014-03-17 16:13:14.000000000 +0100 +@@ -65,11 +65,11 @@ static const char rcsid[] = RCSID; + extern char *strerror(); + #endif + +-static void logit __P((int, char *, va_list)); +-static void log_write __P((int, char *)); +-static void vslp_printer __P((void *, char *, ...)); +-static void format_packet __P((u_char *, int, void (*) (void *, char *, ...), +- void *)); ++static void logit (int, char *, va_list); ++static void log_write (int, char *); ++static void vslp_printer (void *, char *, ...); ++static void format_packet (u_char *, int, void (*) (void *, char *, ...), ++ void *); + + struct buffer_info { + char *ptr; +@@ -475,7 +475,7 @@ static void + format_packet(p, len, printer, arg) + u_char *p; + int len; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + int i, n; +@@ -613,7 +613,7 @@ void + print_string(p, len, printer, arg) + char *p; + int len; +- void (*printer) __P((void *, char *, ...)); ++ void (*printer) (void *, char *, ...); + void *arg; + { + int c; diff --git a/package/ppp/patches/patch-pppdump_bsd-comp_c b/package/ppp/patches/patch-pppdump_bsd-comp_c new file mode 100644 index 000000000..16060c7da --- /dev/null +++ b/package/ppp/patches/patch-pppdump_bsd-comp_c @@ -0,0 +1,27 @@ +--- ppp-2.4.5.orig/pppdump/bsd-comp.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppdump/bsd-comp.c 2014-03-17 16:13:08.000000000 +0100 +@@ -124,15 +124,15 @@ struct bsd_db { + #define BSD_OVHD 2 /* BSD compress overhead/packet */ + #define BSD_INIT_BITS BSD_MIN_BITS + +-static void *bsd_decomp_alloc __P((u_char *options, int opt_len)); +-static void bsd_free __P((void *state)); +-static int bsd_decomp_init __P((void *state, u_char *options, int opt_len, +- int unit, int hdrlen, int mru, int debug)); +-static void bsd_incomp __P((void *state, u_char *dmsg, int len)); +-static int bsd_decompress __P((void *state, u_char *cmp, int inlen, +- u_char *dmp, int *outlen)); +-static void bsd_reset __P((void *state)); +-static void bsd_comp_stats __P((void *state, struct compstat *stats)); ++static void *bsd_decomp_alloc (u_char *options, int opt_len); ++static void bsd_free (void *state); ++static int bsd_decomp_init (void *state, u_char *options, int opt_len, ++ int unit, int hdrlen, int mru, int debug); ++static void bsd_incomp (void *state, u_char *dmsg, int len); ++static int bsd_decompress (void *state, u_char *cmp, int inlen, ++ u_char *dmp, int *outlen); ++static void bsd_reset (void *state); ++static void bsd_comp_stats (void *state, struct compstat *stats); + + /* + * Exported procedures. diff --git a/package/ppp/patches/patch-pppdump_deflate_c b/package/ppp/patches/patch-pppdump_deflate_c new file mode 100644 index 000000000..ff44ea30c --- /dev/null +++ b/package/ppp/patches/patch-pppdump_deflate_c @@ -0,0 +1,31 @@ +--- ppp-2.4.5.orig/pppdump/deflate.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppdump/deflate.c 2014-03-17 16:13:08.000000000 +0100 +@@ -65,17 +65,17 @@ struct deflate_state { + + #define DEFLATE_OVHD 2 /* Deflate overhead/packet */ + +-static void *z_alloc __P((void *, u_int items, u_int size)); +-static void z_free __P((void *, void *ptr, u_int nb)); +-static void *z_decomp_alloc __P((u_char *options, int opt_len)); +-static void z_decomp_free __P((void *state)); +-static int z_decomp_init __P((void *state, u_char *options, int opt_len, +- int unit, int hdrlen, int mru, int debug)); +-static void z_incomp __P((void *state, u_char *dmsg, int len)); +-static int z_decompress __P((void *state, u_char *cmp, int inlen, +- u_char *dmp, int *outlenp)); +-static void z_decomp_reset __P((void *state)); +-static void z_comp_stats __P((void *state, struct compstat *stats)); ++static void *z_alloc (void *, u_int items, u_int size); ++static void z_free (void *, void *ptr, u_int nb); ++static void *z_decomp_alloc (u_char *options, int opt_len); ++static void z_decomp_free (void *state); ++static int z_decomp_init (void *state, u_char *options, int opt_len, ++ int unit, int hdrlen, int mru, int debug); ++static void z_incomp (void *state, u_char *dmsg, int len); ++static int z_decompress (void *state, u_char *cmp, int inlen, ++ u_char *dmp, int *outlenp); ++static void z_decomp_reset (void *state); ++static void z_comp_stats (void *state, struct compstat *stats); + + /* + * Procedures exported to if_ppp.c. diff --git a/package/ppp/patches/patch-pppdump_ppp-comp_h b/package/ppp/patches/patch-pppdump_ppp-comp_h new file mode 100644 index 000000000..ce9da513c --- /dev/null +++ b/package/ppp/patches/patch-pppdump_ppp-comp_h @@ -0,0 +1,33 @@ +--- ppp-2.4.5.orig/pppdump/ppp-comp.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppdump/ppp-comp.h 2014-03-17 16:13:08.000000000 +0100 +@@ -58,21 +58,21 @@ struct compressor { + int compress_proto; /* CCP compression protocol number */ + + /* Allocate space for a decompressor (receive side) */ +- void *(*decomp_alloc) __P((u_char *options, int opt_len)); ++ void *(*decomp_alloc) (u_char *options, int opt_len); + /* Free space used by a decompressor */ +- void (*decomp_free) __P((void *state)); ++ void (*decomp_free) (void *state); + /* Initialize a decompressor */ +- int (*decomp_init) __P((void *state, u_char *options, int opt_len, +- int unit, int hdrlen, int mru, int debug)); ++ int (*decomp_init) (void *state, u_char *options, int opt_len, ++ int unit, int hdrlen, int mru, int debug); + /* Reset a decompressor */ +- void (*decomp_reset) __P((void *state)); ++ void (*decomp_reset) (void *state); + /* Decompress a packet. */ +- int (*decompress) __P((void *state, u_char *mp, int inlen, +- u_char *dmp, int *outlen)); ++ int (*decompress) (void *state, u_char *mp, int inlen, ++ u_char *dmp, int *outlen); + /* Update state for an incompressible packet received */ +- void (*incomp) __P((void *state, u_char *mp, int len)); ++ void (*incomp) (void *state, u_char *mp, int len); + /* Return decompression statistics */ +- void (*decomp_stat) __P((void *state, struct compstat *stats)); ++ void (*decomp_stat) (void *state, struct compstat *stats); + }; + + /* diff --git a/package/ppp/patches/patch-pppstats_pppstats_c b/package/ppp/patches/patch-pppstats_pppstats_c new file mode 100644 index 000000000..5718ab77d --- /dev/null +++ b/package/ppp/patches/patch-pppstats_pppstats_c @@ -0,0 +1,22 @@ +--- ppp-2.4.5.orig/pppstats/pppstats.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/pppstats/pppstats.c 2014-03-17 16:13:07.000000000 +0100 +@@ -107,13 +107,13 @@ extern char *optarg; + #define PPP_DRV_NAME "ppp" + #endif /* !defined(PPP_DRV_NAME) */ + +-static void usage __P((void)); +-static void catchalarm __P((int)); +-static void get_ppp_stats __P((struct ppp_stats *)); +-static void get_ppp_cstats __P((struct ppp_comp_stats *)); +-static void intpr __P((void)); ++static void usage (void); ++static void catchalarm (int); ++static void get_ppp_stats (struct ppp_stats *); ++static void get_ppp_cstats (struct ppp_comp_stats *); ++static void intpr (void); + +-int main __P((int, char *argv[])); ++int main (int, char *argv[]); + + static void + usage() diff --git a/package/ppp/patches/patch-solaris_ppp_ahdlc_c b/package/ppp/patches/patch-solaris_ppp_ahdlc_c new file mode 100644 index 000000000..eca303a29 --- /dev/null +++ b/package/ppp/patches/patch-solaris_ppp_ahdlc_c @@ -0,0 +1,19 @@ +--- ppp-2.4.5.orig/solaris/ppp_ahdlc.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/solaris/ppp_ahdlc.c 2014-03-17 16:13:16.000000000 +0100 +@@ -109,11 +109,11 @@ typedef unsigned int uintpoin + + MOD_OPEN_DECL(ahdlc_open); + MOD_CLOSE_DECL(ahdlc_close); +-static int ahdlc_wput __P((queue_t *, mblk_t *)); +-static int ahdlc_rput __P((queue_t *, mblk_t *)); +-static void ahdlc_encode __P((queue_t *, mblk_t *)); +-static void ahdlc_decode __P((queue_t *, mblk_t *)); +-static int msg_byte __P((mblk_t *, unsigned int)); ++static int ahdlc_wput (queue_t *, mblk_t *); ++static int ahdlc_rput (queue_t *, mblk_t *); ++static void ahdlc_encode (queue_t *, mblk_t *); ++static void ahdlc_decode (queue_t *, mblk_t *); ++static int msg_byte (mblk_t *, unsigned int); + + #if defined(SOL2) + /* diff --git a/package/ppp/patches/patch-solaris_ppp_c b/package/ppp/patches/patch-solaris_ppp_c new file mode 100644 index 000000000..33e12e5aa --- /dev/null +++ b/package/ppp/patches/patch-solaris_ppp_c @@ -0,0 +1,78 @@ +--- ppp-2.4.5.orig/solaris/ppp.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/solaris/ppp.c 2014-03-17 16:13:16.000000000 +0100 +@@ -254,45 +254,45 @@ static upperstr_t *minor_devs = NULL; + static upperstr_t *ppas = NULL; + + #ifdef SVR4 +-static int pppopen __P((queue_t *, dev_t *, int, int, cred_t *)); +-static int pppclose __P((queue_t *, int, cred_t *)); ++static int pppopen (queue_t *, dev_t *, int, int, cred_t *); ++static int pppclose (queue_t *, int, cred_t *); + #else +-static int pppopen __P((queue_t *, int, int, int)); +-static int pppclose __P((queue_t *, int)); ++static int pppopen (queue_t *, int, int, int); ++static int pppclose (queue_t *, int); + #endif /* SVR4 */ +-static int pppurput __P((queue_t *, mblk_t *)); +-static int pppuwput __P((queue_t *, mblk_t *)); +-static int pppursrv __P((queue_t *)); +-static int pppuwsrv __P((queue_t *)); +-static int ppplrput __P((queue_t *, mblk_t *)); +-static int ppplwput __P((queue_t *, mblk_t *)); +-static int ppplrsrv __P((queue_t *)); +-static int ppplwsrv __P((queue_t *)); ++static int pppurput (queue_t *, mblk_t *); ++static int pppuwput (queue_t *, mblk_t *); ++static int pppursrv (queue_t *); ++static int pppuwsrv (queue_t *); ++static int ppplrput (queue_t *, mblk_t *); ++static int ppplwput (queue_t *, mblk_t *); ++static int ppplrsrv (queue_t *); ++static int ppplwsrv (queue_t *); + #ifndef NO_DLPI +-static void dlpi_request __P((queue_t *, mblk_t *, upperstr_t *)); +-static void dlpi_error __P((queue_t *, upperstr_t *, int, int, int)); +-static void dlpi_ok __P((queue_t *, int)); ++static void dlpi_request (queue_t *, mblk_t *, upperstr_t *); ++static void dlpi_error (queue_t *, upperstr_t *, int, int, int); ++static void dlpi_ok (queue_t *, int); + #endif +-static int send_data __P((mblk_t *, upperstr_t *)); +-static void new_ppa __P((queue_t *, mblk_t *)); +-static void attach_ppa __P((queue_t *, mblk_t *)); ++static int send_data (mblk_t *, upperstr_t *); ++static void new_ppa (queue_t *, mblk_t *); ++static void attach_ppa (queue_t *, mblk_t *); + #ifndef NO_DLPI +-static void detach_ppa __P((queue_t *, mblk_t *)); ++static void detach_ppa (queue_t *, mblk_t *); + #endif +-static void detach_lower __P((queue_t *, mblk_t *)); +-static void debug_dump __P((queue_t *, mblk_t *)); +-static upperstr_t *find_dest __P((upperstr_t *, int)); ++static void detach_lower (queue_t *, mblk_t *); ++static void debug_dump (queue_t *, mblk_t *); ++static upperstr_t *find_dest (upperstr_t *, int); + #if defined(SOL2) +-static upperstr_t *find_promisc __P((upperstr_t *, int)); +-static mblk_t *prepend_ether __P((upperstr_t *, mblk_t *, int)); +-static mblk_t *prepend_udind __P((upperstr_t *, mblk_t *, int)); +-static void promisc_sendup __P((upperstr_t *, mblk_t *, int, int)); ++static upperstr_t *find_promisc (upperstr_t *, int); ++static mblk_t *prepend_ether (upperstr_t *, mblk_t *, int); ++static mblk_t *prepend_udind (upperstr_t *, mblk_t *, int); ++static void promisc_sendup (upperstr_t *, mblk_t *, int, int); + #endif /* defined(SOL2) */ +-static int putctl2 __P((queue_t *, int, int, int)); +-static int putctl4 __P((queue_t *, int, int, int)); +-static int pass_packet __P((upperstr_t *ppa, mblk_t *mp, int outbound)); ++static int putctl2 (queue_t *, int, int, int); ++static int putctl4 (queue_t *, int, int, int); ++static int pass_packet (upperstr_t *ppa, mblk_t *mp, int outbound); + #ifdef FILTER_PACKETS +-static int ip_hard_filter __P((upperstr_t *ppa, mblk_t *mp, int outbound)); ++static int ip_hard_filter (upperstr_t *ppa, mblk_t *mp, int outbound); + #endif /* FILTER_PACKETS */ + + #define PPP_ID 0xb1a6 diff --git a/package/ppp/patches/patch-solaris_ppp_comp_c b/package/ppp/patches/patch-solaris_ppp_comp_c new file mode 100644 index 000000000..22673953c --- /dev/null +++ b/package/ppp/patches/patch-solaris_ppp_comp_c @@ -0,0 +1,30 @@ +--- ppp-2.4.5.orig/solaris/ppp_comp.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/solaris/ppp_comp.c 2014-03-17 16:13:16.000000000 +0100 +@@ -74,12 +74,12 @@ + + MOD_OPEN_DECL(ppp_comp_open); + MOD_CLOSE_DECL(ppp_comp_close); +-static int ppp_comp_rput __P((queue_t *, mblk_t *)); +-static int ppp_comp_rsrv __P((queue_t *)); +-static int ppp_comp_wput __P((queue_t *, mblk_t *)); +-static int ppp_comp_wsrv __P((queue_t *)); +-static void ppp_comp_ccp __P((queue_t *, mblk_t *, int)); +-static int msg_byte __P((mblk_t *, unsigned int)); ++static int ppp_comp_rput (queue_t *, mblk_t *); ++static int ppp_comp_rsrv (queue_t *); ++static int ppp_comp_wput (queue_t *, mblk_t *); ++static int ppp_comp_wsrv (queue_t *); ++static void ppp_comp_ccp (queue_t *, mblk_t *, int); ++static int msg_byte (mblk_t *, unsigned int); + + /* Extract byte i of message mp. */ + #define MSG_BYTE(mp, i) ((i) < (mp)->b_wptr - (mp)->b_rptr? (mp)->b_rptr[i]: \ +@@ -118,7 +118,7 @@ int ppp_comp_count; /* number of module + + #ifdef __osf__ + +-static void ppp_comp_alloc __P((comp_state_t *)); ++static void ppp_comp_alloc (comp_state_t *); + typedef struct memreq { + unsigned char comp_opts[20]; + int cmd; diff --git a/package/ppp/patches/patch-solaris_ppp_mod_c b/package/ppp/patches/patch-solaris_ppp_mod_c new file mode 100644 index 000000000..1d3f48fde --- /dev/null +++ b/package/ppp/patches/patch-solaris_ppp_mod_c @@ -0,0 +1,17 @@ +--- ppp-2.4.5.orig/solaris/ppp_mod.c 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/solaris/ppp_mod.c 2014-03-17 16:13:16.000000000 +0100 +@@ -53,10 +53,10 @@ + #define __P(x) () + #endif + +-static int ppp_identify __P((dev_info_t *)); +-static int ppp_attach __P((dev_info_t *, ddi_attach_cmd_t)); +-static int ppp_detach __P((dev_info_t *, ddi_detach_cmd_t)); +-static int ppp_devinfo __P((dev_info_t *, ddi_info_cmd_t, void *, void **)); ++static int ppp_identify (dev_info_t *); ++static int ppp_attach (dev_info_t *, ddi_attach_cmd_t); ++static int ppp_detach (dev_info_t *, ddi_detach_cmd_t); ++static int ppp_devinfo (dev_info_t *, ddi_info_cmd_t, void *, void **); + + extern struct streamtab pppinfo; + extern krwlock_t ppp_lower_lock; diff --git a/package/ppp/patches/patch-solaris_ppp_mod_h b/package/ppp/patches/patch-solaris_ppp_mod_h new file mode 100644 index 000000000..dfb70ff62 --- /dev/null +++ b/package/ppp/patches/patch-solaris_ppp_mod_h @@ -0,0 +1,28 @@ +--- ppp-2.4.5.orig/solaris/ppp_mod.h 2009-11-16 23:26:07.000000000 +0100 ++++ ppp-2.4.5/solaris/ppp_mod.h 2014-03-17 16:13:16.000000000 +0100 +@@ -143,10 +143,10 @@ typedef int minor_t; + */ + #ifdef SVR4 + #define MOD_OPEN_DECL(name) \ +-static int name __P((queue_t *, dev_t *, int, int, cred_t *)) ++static int name (queue_t *, dev_t *, int, int, cred_t *) + + #define MOD_CLOSE_DECL(name) \ +-static int name __P((queue_t *, int, cred_t *)) ++static int name (queue_t *, int, cred_t *) + + #define MOD_OPEN(name) \ + static int name(q, devp, flag, sflag, credp) \ +@@ -168,10 +168,10 @@ static int name(q, flag, credp) \ + + #else /* not SVR4 */ + #define MOD_OPEN_DECL(name) \ +-static int name __P((queue_t *, int, int, int)) ++static int name (queue_t *, int, int, int) + + #define MOD_CLOSE_DECL(name) \ +-static int name __P((queue_t *, int)) ++static int name (queue_t *, int) + + #define MOD_OPEN(name) \ + static int name(q, dev, flag, sflag) \ diff --git a/package/presentproto/Makefile b/package/presentproto/Makefile new file mode 100644 index 000000000..f3bb3b9ff --- /dev/null +++ b/package/presentproto/Makefile @@ -0,0 +1,19 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(TOPDIR)/rules.mk + +PKG_NAME:= presentproto +PKG_VERSION:= 1.0 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 57eaf4bb58e86476ec89cfb42d675961 +PKG_DESCR:= present protocol headers +PKG_SECTION:= devel +PKG_SITES:= ${MASTER_SITE_XORG} +PKG_OPTS:= dev devonly + +include $(TOPDIR)/mk/package.mk + +$(eval $(call PKG_template,PRESENTPROTO,presentproto,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS})) + +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/python2/Makefile b/package/python2/Makefile index fe284da9d..b5aac2032 100644 --- a/package/python2/Makefile +++ b/package/python2/Makefile @@ -5,11 +5,12 @@ include ${TOPDIR}/rules.mk PKG_NAME:= python2 PKG_VERSION:= 2.7.5 -PKG_RELEASE:= 11 +PKG_RELEASE:= 12 PKG_MD5SUM:= b4f01a1d0ba0b46b05c73b2ac909b1df PKG_DESCR:= Python scripting language (Version 2) PKG_SECTION:= lang -PKG_BUILDDEP:= autotool libffi bzip2-host python2-host +PKG_BUILDDEP:= libffi python2-host +HOST_BUILDDEP:= libffi-host bzip2-host autotool PKG_DEPENDS:= libpthread libffi libgcc PKG_URL:= http://www.python.org/ PKG_SITES:= http://www.python.org/ftp/python/${PKG_VERSION}/ @@ -96,18 +97,20 @@ CONFIGURE_ARGS:= --with-threads \ --without-cxx-main HOST_STYLE:= auto -HOST_CONFIGURE_ARGS:= --with-threads \ +HOST_CONFIGURE_ARGS+= --with-threads \ --disable-ipv6 \ --disable-shared \ --disable-toolbox-glue \ --without-cxx-main CFLAGS_FOR_BUILD+= -fPIC -post-extract: +hostpre-configure: $(CP) $(TOPDIR)/package/python2/files/patch-Lib_distutils_sysconfig_py $(WRKBUILD) $(SED) "s#@@STAGING_TARGET_DIR@@#$(STAGING_TARGET_DIR)#" $(WRKBUILD)/patch-Lib_distutils_sysconfig_py $(SED) "s#@@STAGING_HOST_DIR@@#$(STAGING_HOST_DIR)#" $(WRKBUILD)/patch-Lib_distutils_sysconfig_py - (cd $(WRKBUILD) && patch -p0 <$(WRKBUILD)/patch-Lib_distutils_sysconfig_py) + (cd $(WRKBUILD) && patch -p0 < patch-Lib_distutils_sysconfig_py) + $(SED) "s#@EXENAME@#$(STAGING_HOST_DIR)/usr/bin/python#" \ + $(WRKBUILD)/Misc/python-config.in hostpost-install: $(INSTALL_BIN) ${WRKBUILD}/Parser/pgen \ @@ -119,6 +122,10 @@ hostpost-install: patch -p0 < $(WRKBUILD)/python-config.patch) pre-configure: + $(CP) $(TOPDIR)/package/python2/files/patch-Lib_distutils_sysconfig_py $(WRKBUILD) + $(SED) "s#@@STAGING_TARGET_DIR@@#$(STAGING_TARGET_DIR)#" $(WRKBUILD)/patch-Lib_distutils_sysconfig_py + $(SED) "s#@@STAGING_HOST_DIR@@#$(STAGING_HOST_DIR)#" $(WRKBUILD)/patch-Lib_distutils_sysconfig_py + (cd $(WRKBUILD) && patch -p0 <$(WRKBUILD)/patch-Lib_distutils_sysconfig_py) $(SED) "s#@EXENAME@#$(STAGING_HOST_DIR)/usr/bin/python#" \ $(WRKBUILD)/Misc/python-config.in diff --git a/package/python3/Makefile b/package/python3/Makefile index 3d7158443..e939a9155 100644 --- a/package/python3/Makefile +++ b/package/python3/Makefile @@ -4,15 +4,16 @@ include ${TOPDIR}/rules.mk PKG_NAME:= python3 -PKG_VERSION:= 3.3.2 -PKG_RELEASE:= 3 -PKG_MD5SUM:= 0a2ea57f6184baf45b150aee53c0c8da +PKG_VERSION:= 3.4.0 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 77c22725e14af3d71022cbfdebff4903 PKG_DESCR:= Python scripting language (Version 3) PKG_SECTION:= lang PKG_DEPENDS:= libpthread libgcc libffi PKG_BUILDDEP:= python3-host libffi +HOST_BUILDDEP:= libffi-host PKG_URL:= http://www.python.org/ -PKG_SITES:= http://www.python.org/ftp/python/${PKG_VERSION}/ +PKG_SITES:= http://legacy.python.org/ftp/python/${PKG_VERSION}/ PKG_HOST_DEPENDS:= !netbsd !openbsd !cygwin @@ -44,7 +45,7 @@ PKGFD_MOD_SSL:= OpenSSL support PKGFB_MOD_SSL:= openssl PKGFS_MOD_SSL:= libopenssl -DISTFILES= Python-${PKG_VERSION}.tgz +DISTFILES= Python-${PKG_VERSION}.tar.xz WRKDIST= ${WRKDIR}/Python-${PKG_VERSION} include ${TOPDIR}/mk/host.mk @@ -55,9 +56,9 @@ define PKG_mod_template INSTALL_MODS_$${ADK_PACKAGE_${1}}+= ${2}-install ${2}-install: - ${INSTALL_DIR} $$(IDIR_$(1))/usr/lib/python3.3/lib-dynload + ${INSTALL_DIR} $$(IDIR_$(1))/usr/lib/python3.4/lib-dynload for m in ${2}; do \ - ${INSTALL_DATA} $(WRKINST)/usr/lib/python3.3/lib-dynload/$$$${m}*.so $$(IDIR_$(1))/usr/lib/python3.3/lib-dynload ;\ + ${INSTALL_DATA} $(WRKINST)/usr/lib/python3.4/lib-dynload/$$$${m}*.so $$(IDIR_$(1))/usr/lib/python3.4/lib-dynload ;\ done endef @@ -84,6 +85,7 @@ $(eval $(call PKG_mod_template,PYTHON3_MOD_SSL,_ssl)) $(eval $(call PKG_mod_template,PYTHON3_MOD_READLINE,readline)) MAKE_ENV+= HOSTPGEN=$(STAGING_HOST_DIR)/usr/bin/pgen3 +FAKE_FLAGS+= ENSUREPIP=no CONFIGURE_ARGS:= --with-threads \ --with-system-ffi \ --with-system-expat \ @@ -97,21 +99,21 @@ HOST_STYLE:= auto HOST_CONFIGURE_ARGS+= --without-cxx-main \ --with-threads -hostpost-install: - $(INSTALL_BIN) ${WRKBUILD}/Parser/pgen \ - $(STAGING_HOST_DIR)/usr/bin/pgen3 +#hostpost-install: +# $(INSTALL_BIN) ${WRKBUILD}/Parser/pgen \ +# $(STAGING_HOST_DIR)/usr/bin/pgen3 python3-install: ${INSTALL_MODS_y} ${INSTALL_MODS_m} ${INSTALL_DIR} ${IDIR_PYTHON3}/usr/bin ${IDIR_PYTHON3}/usr/lib - ${INSTALL_DIR} ${IDIR_PYTHON3}/usr/lib/python3.3 - ${INSTALL_DIR} ${IDIR_PYTHON3}/usr/include/python3.3m + ${INSTALL_DIR} ${IDIR_PYTHON3}/usr/lib/python3.4 + ${INSTALL_DIR} ${IDIR_PYTHON3}/usr/include/python3.4m ${INSTALL_BIN} ${WRKINST}/usr/bin/python3 ${IDIR_PYTHON3}/usr/bin ${CP} ${WRKINST}/usr/lib/libpython*.so* ${IDIR_PYTHON3}/usr/lib - ${CP} ${WRKINST}/usr/lib/python3.3/* ${IDIR_PYTHON3}/usr/lib/python3.3 - ${CP} ${WRKINST}/usr/include/python3.3m/pyconfig.h \ - ${IDIR_PYTHON3}/usr/include/python3.3m + ${CP} ${WRKINST}/usr/lib/python3.4/* ${IDIR_PYTHON3}/usr/lib/python3.4 + ${CP} ${WRKINST}/usr/include/python3.4m/pyconfig.h \ + ${IDIR_PYTHON3}/usr/include/python3.4m @-for i in zlib _bz2 _curses _ssl _gdbm _sqlite pyexpat readline; do \ - rm ${IDIR_PYTHON3}/usr/lib/python3.3/lib-dynload/$${i}*so; \ + rm ${IDIR_PYTHON3}/usr/lib/python3.4/lib-dynload/$${i}*so; \ done include ${TOPDIR}/mk/host-bottom.mk diff --git a/package/python3/patches/patch-Makefile_pre_in b/package/python3/patches/patch-Makefile_pre_in deleted file mode 100644 index 5a4077eba..000000000 --- a/package/python3/patches/patch-Makefile_pre_in +++ /dev/null @@ -1,70 +0,0 @@ ---- Python-3.3.2.orig/Makefile.pre.in 2013-05-15 18:32:57.000000000 +0200 -+++ Python-3.3.2/Makefile.pre.in 2013-10-29 07:56:46.000000000 +0100 -@@ -70,9 +70,9 @@ MAKESETUP= $(srcdir)/Modules/makese - OPT= @OPT@ - BASECFLAGS= @BASECFLAGS@ - BASECPPFLAGS= @BASECPPFLAGS@ --CONFIGURE_CFLAGS= @CFLAGS@ --CONFIGURE_CPPFLAGS= @CPPFLAGS@ --CONFIGURE_LDFLAGS= @LDFLAGS@ -+CONFIGURE_CFLAGS= -+CONFIGURE_CPPFLAGS= -+CONFIGURE_LDFLAGS= - # Avoid assigning CFLAGS, LDFLAGS, etc. so users can use them on the - # command line to append to these values without stomping the pre-set - # values. -@@ -249,6 +249,7 @@ LIBFFI_INCLUDEDIR= @LIBFFI_INCLUDEDIR@ - ########################################################################## - # Parser - PGEN= Parser/pgen$(EXE) -+HOSTPGEN?= ./Parser/pgen$(EXE) - - PSRCS= \ - Parser/acceler.c \ -@@ -493,7 +494,7 @@ sharedmods: $(BUILDPYTHON) pybuilddir.tx - *) quiet="";; \ - esac; \ - $(RUNSHARED) CC='$(CC)' LDSHARED='$(BLDSHARED)' OPT='$(OPT)' \ -- $(PYTHON_FOR_BUILD) $(srcdir)/setup.py $$quiet build -+ $(PYTHON_FOR_BUILD) $(srcdir)/setup.py build - - # Build static library - # avoid long command lines, same as LIBRARY_OBJS -@@ -669,7 +670,7 @@ $(IO_OBJS): $(IO_H) - $(GRAMMAR_H): $(GRAMMAR_INPUT) $(PGENSRCS) - @$(MKDIR_P) Include - $(MAKE) $(PGEN) -- $(PGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C) -+ $(HOSTPGEN) $(GRAMMAR_INPUT) $(GRAMMAR_H) $(GRAMMAR_C) - $(GRAMMAR_C): $(GRAMMAR_H) $(GRAMMAR_INPUT) $(PGENSRCS) - $(MAKE) $(GRAMMAR_H) - touch $(GRAMMAR_C) -@@ -1112,28 +1113,6 @@ libinstall: build_all $(srcdir)/Lib/$(PL - $(INSTALL_DATA) $(srcdir)/Modules/xxmodule.c \ - $(DESTDIR)$(LIBDEST)/distutils/tests ; \ - fi -- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- $(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \ -- -d $(LIBDEST) -f \ -- -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ -- $(DESTDIR)$(LIBDEST) -- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- $(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \ -- -d $(LIBDEST) -f \ -- -x 'bad_coding|badsyntax|site-packages|lib2to3/tests/data' \ -- $(DESTDIR)$(LIBDEST) -- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- $(PYTHON_FOR_BUILD) -Wi $(DESTDIR)$(LIBDEST)/compileall.py \ -- -d $(LIBDEST)/site-packages -f \ -- -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages -- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- $(PYTHON_FOR_BUILD) -Wi -O $(DESTDIR)$(LIBDEST)/compileall.py \ -- -d $(LIBDEST)/site-packages -f \ -- -x badsyntax $(DESTDIR)$(LIBDEST)/site-packages -- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/Grammar.txt -- -PYTHONPATH=$(DESTDIR)$(LIBDEST) $(RUNSHARED) \ -- $(PYTHON_FOR_BUILD) -m lib2to3.pgen2.driver $(DESTDIR)$(LIBDEST)/lib2to3/PatternGrammar.txt - - # Create the PLATDIR source directory, if one wasn't distributed.. - $(srcdir)/Lib/$(PLATDIR): diff --git a/package/python3/patches/patch-Modules_posixmodule_c b/package/python3/patches/patch-Modules_posixmodule_c deleted file mode 100644 index 537958513..000000000 --- a/package/python3/patches/patch-Modules_posixmodule_c +++ /dev/null @@ -1,20 +0,0 @@ ---- Python-3.3.2.orig/Modules/posixmodule.c 2013-05-15 18:32:59.000000000 +0200 -+++ Python-3.3.2/Modules/posixmodule.c 2014-01-06 18:59:54.000000000 +0100 -@@ -7679,7 +7679,7 @@ PyDoc_STRVAR(posix_close__doc__, - Close a file descriptor (for low level IO)."); - - static PyObject * --posix_close(PyObject *self, PyObject *args) -+posix_pyclose(PyObject *self, PyObject *args) - { - int fd, res; - if (!PyArg_ParseTuple(args, "i:close", &fd)) -@@ -11082,7 +11082,7 @@ static PyMethodDef posix_methods[] = { - {"open", (PyCFunction)posix_open,\ - METH_VARARGS | METH_KEYWORDS, - posix_open__doc__}, -- {"close", posix_close, METH_VARARGS, posix_close__doc__}, -+ {"close", posix_pyclose, METH_VARARGS, posix_close__doc__}, - {"closerange", posix_closerange, METH_VARARGS, posix_closerange__doc__}, - {"device_encoding", device_encoding, METH_VARARGS, device_encoding__doc__}, - {"dup", posix_dup, METH_VARARGS, posix_dup__doc__}, diff --git a/package/radvd/Makefile b/package/radvd/Makefile index 1dd5b6ccf..dc927a628 100644 --- a/package/radvd/Makefile +++ b/package/radvd/Makefile @@ -4,9 +4,9 @@ include ${TOPDIR}/rules.mk PKG_NAME:= radvd -PKG_VERSION:= 1.9.7 +PKG_VERSION:= 1.10.0 PKG_RELEASE:= 1 -PKG_MD5SUM:= 85141c7dc7d35e5499e16052742f1040 +PKG_MD5SUM:= 5ef15bc6c8316dba02147065f8dfdad3 PKG_DESCR:= Routing Advertisement Daemon for IPv6 PKG_SECTION:= ipv6 PKG_DEPENDS:= kmod-ipv6 libdaemon diff --git a/package/randrproto/Makefile b/package/randrproto/Makefile index 407f27fbf..fbd6341e5 100644 --- a/package/randrproto/Makefile +++ b/package/randrproto/Makefile @@ -4,9 +4,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:= randrproto -PKG_VERSION:= 1.3.2 +PKG_VERSION:= 1.4.0 PKG_RELEASE:= 1 -PKG_MD5SUM:= b8fd2f75cf156c9f6e6771addd07ef59 +PKG_MD5SUM:= af44f250b89783eb4967f1dc5b32ef68 PKG_DESCR:= Xrandr protcol headers PKG_SECTION:= devel PKG_SITES:= ${MASTER_SITE_XORG} diff --git a/package/rng-tools/Makefile b/package/rng-tools/Makefile index 26ad29821..0daf65bf7 100644 --- a/package/rng-tools/Makefile +++ b/package/rng-tools/Makefile @@ -4,15 +4,16 @@ include $(TOPDIR)/rules.mk PKG_NAME:= rng-tools -PKG_VERSION:= 2 -PKG_RELEASE:= 2 -PKG_MD5SUM:= 63d503191eabed630324c104cc024475 -PKG_DESCR:= Daemon to use hardware random number generators. +PKG_VERSION:= 4 +PKG_RELEASE:= 1 +PKG_MD5SUM:= ae89dbfcf08bdfbea19066cfbf599127 +PKG_DESCR:= daemon to use hardware random number generators. PKG_SECTION:= crypto PKG_URL:= http://gkernel.sourceforge.net/ PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=gkernel/} -PKG_LIBC_DEPENDS:= glibc musl +# argp.h required +PKG_LIBC_DEPENDS:= glibc include $(TOPDIR)/mk/package.mk diff --git a/package/rrdcollect/Makefile b/package/rrdcollect/Makefile index c437d5399..39a4d3b2a 100644 --- a/package/rrdcollect/Makefile +++ b/package/rrdcollect/Makefile @@ -4,15 +4,17 @@ include ${TOPDIR}/rules.mk PKG_NAME:= rrdcollect -PKG_VERSION:= 0.2.9 +PKG_VERSION:= 0.2.10 PKG_RELEASE:= 1 -PKG_MD5SUM:= 1e94eb0f8d55ebf0f042c10baebc2d3d +PKG_MD5SUM:= 138e21fc9f2de0b8b6c89f1506394ef8 PKG_DESCR:= Round-Robin Database (RRD) collecting daemon PKG_SECTION:= admin PKG_DEPENDS:= librrd PKG_BUILDDEP:= rrdtool PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=rrdcollect/} +DISTFILES:= ${PKG_NAME}-${PKG_VERSION}.tar.bz2 + ifneq (${ADK_PACKAGE_LIBRRD},) RRDTOOL_LIBS:= -lart_lgpl_2 -lfreetype -lpng endif @@ -25,8 +27,8 @@ CONFIGURE_ENV+= LIBS="${RRDTOOL_LIBS} -lz" \ ac_cv_func_malloc_0_nonnull=yes CONFIGURE_ARGS+= --enable-exec \ --without-rrdtool \ - --with-librrd \ - --without-libpcre + --without-libpcre \ + --with-librrd TARGET_CPPFLAGS+= -DSOCKET_COMM rrdcollect-install: diff --git a/package/sane-backends/Makefile b/package/sane-backends/Makefile index 4bad787ef..570febc37 100644 --- a/package/sane-backends/Makefile +++ b/package/sane-backends/Makefile @@ -5,12 +5,12 @@ include ${TOPDIR}/rules.mk PKG_NAME:= sane-backends PKG_VERSION:= 1.0.22 -PKG_RELEASE:= 1 +PKG_RELEASE:= 3 PKG_MD5SUM:= fadf56a60f4776bfb24491f66b617cf5 PKG_DESCR:= Scanner access now easy PKG_SECTION:= misc PKG_DEPENDS:= libpthread -PKG_BUILDDEP:= libpthread libusb +PKG_BUILDDEP:= libpthread libusb libusb-compat PKG_URL:= http://www.sane-project.org/ PKG_SITES:= ftp://ftp2.sane-project.org/pub/sane/${PKG_NAME}-${PKG_VERSION}/ PKG_MULTI:= 1 @@ -165,6 +165,7 @@ $(eval $(call PKG_mod_template,SANE_BACKEND_UMAX1220U,umax1220u)) $(eval $(call PKG_mod_template,SANE_BACKEND_UMAX_PP,umax_pp)) $(eval $(call PKG_mod_template,SANE_BACKEND_UMAX,umax)) +TARGET_CFLAGS+= -D_GNU_SOURCE CONFIGURE_ENV+= ac_cv_func_ioperm=no have_libv4l1=no CONFIGURE_ARGS+= --disable-translations \ --without-gphoto2 \ diff --git a/package/sane-backends/patches/patch-backend_canon630u-common_c b/package/sane-backends/patches/patch-backend_canon630u-common_c new file mode 100644 index 000000000..d9acb4bf1 --- /dev/null +++ b/package/sane-backends/patches/patch-backend_canon630u-common_c @@ -0,0 +1,12 @@ +--- sane-backends-1.0.22.orig/backend/canon630u-common.c 2010-12-02 00:49:58.000000000 +0100 ++++ sane-backends-1.0.22/backend/canon630u-common.c 2014-03-18 08:33:31.000000000 +0100 +@@ -58,9 +58,7 @@ + #include <unistd.h> /* usleep */ + #include <time.h> + #include <math.h> /* exp() */ +-#ifdef HAVE_OS2_H + #include <sys/types.h> /* mode_t */ +-#endif + #include <sys/stat.h> + #include "lm9830.h" + diff --git a/package/sane-backends/patches/patch-backend_epson2-commands_c b/package/sane-backends/patches/patch-backend_epson2-commands_c new file mode 100644 index 000000000..3b2c46841 --- /dev/null +++ b/package/sane-backends/patches/patch-backend_epson2-commands_c @@ -0,0 +1,10 @@ +--- sane-backends-1.0.22.orig/backend/epson2-commands.c 2010-12-02 00:49:58.000000000 +0100 ++++ sane-backends-1.0.22/backend/epson2-commands.c 2014-03-18 08:34:27.000000000 +0100 +@@ -19,6 +19,7 @@ + + #include "sane/config.h" + ++#include <sys/types.h> + #include <byteorder.h> + #include <math.h> + diff --git a/package/sane-backends/patches/patch-backend_genesys_c b/package/sane-backends/patches/patch-backend_genesys_c new file mode 100644 index 000000000..fc0398856 --- /dev/null +++ b/package/sane-backends/patches/patch-backend_genesys_c @@ -0,0 +1,10 @@ +--- sane-backends-1.0.22.orig/backend/genesys.c 2011-02-14 00:10:18.000000000 +0100 ++++ sane-backends-1.0.22/backend/genesys.c 2014-03-18 08:36:00.000000000 +0100 +@@ -65,6 +65,7 @@ + #include <errno.h> + #include <string.h> + #include <stdlib.h> ++#include <sys/types.h> + #include <unistd.h> + #include <math.h> + diff --git a/package/sane-backends/patches/patch-backend_genesys_h b/package/sane-backends/patches/patch-backend_genesys_h new file mode 100644 index 000000000..efc830be1 --- /dev/null +++ b/package/sane-backends/patches/patch-backend_genesys_h @@ -0,0 +1,10 @@ +--- sane-backends-1.0.22.orig/backend/genesys.h 2011-01-16 02:01:28.000000000 +0100 ++++ sane-backends-1.0.22/backend/genesys.h 2014-03-18 08:36:42.000000000 +0100 +@@ -52,6 +52,7 @@ + */ + #undef UNIT_TESTING + ++#include <sys/types.h> + #include "genesys_low.h" + + #define FREE_IFNOT_NULL(x) if(x!=NULL) { free(x); x=NULL;} diff --git a/package/sane-backends/patches/patch-backend_genesys_low_c b/package/sane-backends/patches/patch-backend_genesys_low_c new file mode 100644 index 000000000..430ab3791 --- /dev/null +++ b/package/sane-backends/patches/patch-backend_genesys_low_c @@ -0,0 +1,10 @@ +--- sane-backends-1.0.22.orig/backend/genesys_low.c 2011-02-14 00:10:18.000000000 +0100 ++++ sane-backends-1.0.22/backend/genesys_low.c 2014-03-18 08:37:27.000000000 +0100 +@@ -46,6 +46,7 @@ + #include <errno.h> + #include <string.h> + #include <stdlib.h> ++#include <sys/types.h> + #include <unistd.h> + #include <math.h> + diff --git a/package/sane-backends/patches/patch-backend_hp3900_rts8822_c b/package/sane-backends/patches/patch-backend_hp3900_rts8822_c new file mode 100644 index 000000000..59b9b5a9b --- /dev/null +++ b/package/sane-backends/patches/patch-backend_hp3900_rts8822_c @@ -0,0 +1,10 @@ +--- sane-backends-1.0.22.orig/backend/hp3900_rts8822.c 2010-12-02 00:49:58.000000000 +0100 ++++ sane-backends-1.0.22/backend/hp3900_rts8822.c 2014-03-18 08:38:21.000000000 +0100 +@@ -64,6 +64,7 @@ + #include <stdio.h> + #include <stdlib.h> + #include <string.h> /* bzero() */ ++#include <sys/types.h> + #include <time.h> /* clock() */ + #include <math.h> /* truncf() */ + #include <ctype.h> /* tolower() */ diff --git a/package/sane-backends/patches/patch-backend_hp5400_sanei_c b/package/sane-backends/patches/patch-backend_hp5400_sanei_c new file mode 100644 index 000000000..7f340d607 --- /dev/null +++ b/package/sane-backends/patches/patch-backend_hp5400_sanei_c @@ -0,0 +1,10 @@ +--- sane-backends-1.0.22.orig/backend/hp5400_sanei.c 2010-12-02 00:49:58.000000000 +0100 ++++ sane-backends-1.0.22/backend/hp5400_sanei.c 2014-03-18 08:39:35.000000000 +0100 +@@ -56,6 +56,7 @@ + #include "hp5400_xfer.h" + #include "hp5400_debug.h" + #include <stdio.h> ++#include <sys/types.h> + #include "../include/sane/sanei_usb.h" + + #define CMD_INITBULK1 0x0087 /* send 0x14 */ diff --git a/package/sane-backends/patches/patch-backend_hp5590_low_c b/package/sane-backends/patches/patch-backend_hp5590_low_c new file mode 100644 index 000000000..7812886dc --- /dev/null +++ b/package/sane-backends/patches/patch-backend_hp5590_low_c @@ -0,0 +1,10 @@ +--- sane-backends-1.0.22.orig/backend/hp5590_low.c 2010-12-02 00:49:58.000000000 +0100 ++++ sane-backends-1.0.22/backend/hp5590_low.c 2014-03-18 08:38:55.000000000 +0100 +@@ -46,6 +46,7 @@ + + #include <stdio.h> + #include <string.h> ++#include <sys/types.h> + #include <errno.h> + #ifdef HAVE_NETINET_IN_H + # include <netinet/in.h> diff --git a/package/sane-backends/patches/patch-backend_kvs20xx_opt_c b/package/sane-backends/patches/patch-backend_kvs20xx_opt_c new file mode 100644 index 000000000..253699d14 --- /dev/null +++ b/package/sane-backends/patches/patch-backend_kvs20xx_opt_c @@ -0,0 +1,10 @@ +--- sane-backends-1.0.22.orig/backend/kvs20xx_opt.c 2010-12-02 00:49:58.000000000 +0100 ++++ sane-backends-1.0.22/backend/kvs20xx_opt.c 2014-03-18 08:41:24.000000000 +0100 +@@ -8,6 +8,7 @@ + + #include "../include/sane/config.h" + ++#include <sys/types.h> + #include <string.h> + + #define DEBUG_DECLARE_ONLY diff --git a/package/sane-backends/patches/patch-backend_rts88xx_lib_c b/package/sane-backends/patches/patch-backend_rts88xx_lib_c new file mode 100644 index 000000000..060f0a10e --- /dev/null +++ b/package/sane-backends/patches/patch-backend_rts88xx_lib_c @@ -0,0 +1,10 @@ +--- sane-backends-1.0.22.orig/backend/rts88xx_lib.c 2010-12-02 00:49:58.000000000 +0100 ++++ sane-backends-1.0.22/backend/rts88xx_lib.c 2014-03-18 08:42:41.000000000 +0100 +@@ -54,6 +54,7 @@ + + #include <stdio.h> + #include <sys/time.h> ++#include <sys/types.h> + + #include "../include/_stdint.h" + diff --git a/package/sane-backends/patches/patch-backend_xerox_mfp_c b/package/sane-backends/patches/patch-backend_xerox_mfp_c new file mode 100644 index 000000000..d58262197 --- /dev/null +++ b/package/sane-backends/patches/patch-backend_xerox_mfp_c @@ -0,0 +1,10 @@ +--- sane-backends-1.0.22.orig/backend/xerox_mfp.c 2010-12-02 00:49:58.000000000 +0100 ++++ sane-backends-1.0.22/backend/xerox_mfp.c 2014-03-18 08:44:56.000000000 +0100 +@@ -22,6 +22,7 @@ + #include <math.h> + #include <unistd.h> + #include <sys/time.h> ++#include <sys/types.h> + #include "../include/sane/sane.h" + #include "../include/sane/sanei.h" + #include "../include/sane/saneopts.h" diff --git a/package/sane-backends/patches/patch-include_sane_sanei_tcp_h b/package/sane-backends/patches/patch-include_sane_sanei_tcp_h new file mode 100644 index 000000000..4ba390003 --- /dev/null +++ b/package/sane-backends/patches/patch-include_sane_sanei_tcp_h @@ -0,0 +1,10 @@ +--- sane-backends-1.0.22.orig/include/sane/sanei_tcp.h 2010-12-02 00:49:58.000000000 +0100 ++++ sane-backends-1.0.22/include/sane/sanei_tcp.h 2014-03-18 08:31:07.000000000 +0100 +@@ -20,6 +20,7 @@ + + #include <sane/sane.h> + ++#include <sys/types.h> + #include <netinet/in.h> + #include <netdb.h> + diff --git a/package/sane-backends/patches/patch-include_sane_sanei_udp_h b/package/sane-backends/patches/patch-include_sane_sanei_udp_h new file mode 100644 index 000000000..3d70edada --- /dev/null +++ b/package/sane-backends/patches/patch-include_sane_sanei_udp_h @@ -0,0 +1,10 @@ +--- sane-backends-1.0.22.orig/include/sane/sanei_udp.h 2010-12-02 00:49:58.000000000 +0100 ++++ sane-backends-1.0.22/include/sane/sanei_udp.h 2014-03-18 08:31:40.000000000 +0100 +@@ -20,6 +20,7 @@ + + #include <sane/sane.h> + ++#include <sys/types.h> + #include <netinet/in.h> + #include <netdb.h> + diff --git a/package/scons/Makefile b/package/scons/Makefile index 9e92c9917..5f2e3b7c3 100644 --- a/package/scons/Makefile +++ b/package/scons/Makefile @@ -5,11 +5,11 @@ include $(TOPDIR)/rules.mk PKG_NAME:= scons PKG_VERSION:= 2.3.0 -PKG_RELEASE:= 1 +PKG_RELEASE:= 2 PKG_MD5SUM:= 083ce5624d6adcbdaf2526623f456ca9 PKG_DESCR:= a software construction tool PKG_SECTION:= lang -PKG_BUILDDEP:= bzip2-host python2-host +HOST_BUILDDEP:= python2-host PKG_URL:= http://www.scons.org PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=scons/} @@ -23,7 +23,8 @@ $(eval $(call HOST_template,SCONS,scons,$(PKG_VERSION)-${PKG_RELEASE})) HOST_STYLE:= manual scons-hostinstall: - (cd $(WRKBUILD); PATH='$(TARGET_PATH)' python setup.py install --prefix=$(STAGING_HOST_DIR)/) + (cd $(WRKBUILD); PATH='$(HOST_PATH)' python setup.py install \ + --prefix=$(STAGING_HOST_DIR)/usr) include ${TOPDIR}/mk/host-bottom.mk include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/shat/Makefile b/package/shat/Makefile index a28087c75..3bc6fc9ff 100644 --- a/package/shat/Makefile +++ b/package/shat/Makefile @@ -7,10 +7,12 @@ PKG_NAME:= shat PKG_VERSION:= 0.9.7 PKG_RELEASE:= 1 PKG_MD5SUM:= da06846f35838b14d1513523dad84d24 -PKG_DESCR:= Source Hardware Address Translation - a tool for nomadic routing +PKG_DESCR:= a tool for nomadic routing PKG_SECTION:= net/misc PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=shat/} +PKG_LIBC_DEPENDS:= uclibc glibc + include ${TOPDIR}/mk/package.mk $(eval $(call PKG_template,SHAT,shat,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) diff --git a/package/siproxd/Makefile b/package/siproxd/Makefile index 34c835f30..2ece50985 100644 --- a/package/siproxd/Makefile +++ b/package/siproxd/Makefile @@ -4,13 +4,13 @@ include ${TOPDIR}/rules.mk PKG_NAME:= siproxd -PKG_VERSION:= 0.7.1 +PKG_VERSION:= 0.8.1 PKG_RELEASE:= 1 -PKG_MD5SUM:= 45e5a44803181e2bf3361d562060c904 +PKG_MD5SUM:= 1a6f9d13aeb2d650375c9a346ac6cbaf PKG_DESCR:= a SIP (Session Initiation Protocol) proxy PKG_SECTION:= proxy PKG_DEPENDS:= libosip2 libpthread -PKG_BUILDDEP:= libosip2 +PKG_BUILDDEP:= autotool libosip2 PKG_URL:= http://siproxd.sourceforge.net PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=siproxd/} @@ -18,6 +18,8 @@ include ${TOPDIR}/mk/package.mk $(eval $(call PKG_template,SIPROXD,siproxd,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +AUTOTOOL_STYLE:= autoreconf + siproxd-install: ${INSTALL_DIR} ${IDIR_SIPROXD}/usr/sbin ${IDIR_SIPROXD}/etc ${INSTALL_DATA} ${WRKINST}/etc/siproxd.conf.example \ diff --git a/package/siproxd/patches/patch-libltdl_ltmain_sh b/package/siproxd/patches/patch-libltdl_ltmain_sh deleted file mode 100644 index 84bfc305b..000000000 --- a/package/siproxd/patches/patch-libltdl_ltmain_sh +++ /dev/null @@ -1,11 +0,0 @@ ---- siproxd-0.7.1.orig/libltdl/ltmain.sh 2008-02-02 18:16:31.000000000 +0100 -+++ siproxd-0.7.1/libltdl/ltmain.sh 2011-01-17 12:14:25.000000000 +0100 -@@ -1298,7 +1298,7 @@ EOF - # but this is not reliable with gcc because gcc may use -mfoo to - # select a different linker, different libraries, etc, while - # -Wl,-mfoo simply passes -mfoo to the linker. -- -m*) -+ -m*|-fstack-protector*|-flto) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` diff --git a/package/siproxd/patches/patch-scripts_ltmain_sh b/package/siproxd/patches/patch-scripts_ltmain_sh deleted file mode 100644 index 79b49713d..000000000 --- a/package/siproxd/patches/patch-scripts_ltmain_sh +++ /dev/null @@ -1,11 +0,0 @@ ---- siproxd-0.7.1.orig/scripts/ltmain.sh 2008-01-27 17:35:27.000000000 +0100 -+++ siproxd-0.7.1/scripts/ltmain.sh 2011-01-17 12:17:22.000000000 +0100 -@@ -1301,7 +1301,7 @@ EOF - # but this is not reliable with gcc because gcc may use -mfoo to - # select a different linker, different libraries, etc, while - # -Wl,-mfoo simply passes -mfoo to the linker. -- -m*) -+ -m*|-fstack-protector*|-flto) - # Unknown arguments in both finalize_command and compile_command need - # to be aesthetically quoted because they are evaled later. - arg=`$echo "X$arg" | $Xsed -e "$sed_quote_subst"` diff --git a/package/siproxd/patches/patch-src_resolve_c b/package/siproxd/patches/patch-src_resolve_c new file mode 100644 index 000000000..aaa381969 --- /dev/null +++ b/package/siproxd/patches/patch-src_resolve_c @@ -0,0 +1,10 @@ +--- siproxd-0.8.1.orig/src/resolve.c 2011-05-28 17:47:15.000000000 +0200 ++++ siproxd-0.8.1/src/resolve.c 2014-03-26 18:37:07.000000000 +0100 +@@ -20,6 +20,7 @@ + + #include "config.h" + ++#include <sys/types.h> + #include <arpa/inet.h> + #include <netinet/in.h> + diff --git a/package/socat/Makefile b/package/socat/Makefile index 4969a6d85..9311ddbcb 100644 --- a/package/socat/Makefile +++ b/package/socat/Makefile @@ -4,9 +4,9 @@ include ${TOPDIR}/rules.mk PKG_NAME:= socat -PKG_VERSION:= 1.7.2.3 +PKG_VERSION:= 1.7.2.4 PKG_RELEASE:= 1 -PKG_MD5SUM:= 6943f7a5e1ffd553ad2a900bbf05b83a +PKG_MD5SUM:= 2a15dc3362f49d543abdbacc267d0a41 PKG_DESCR:= A multipurpose relay (SOcket CAT) PKG_SECTION:= net/misc PKG_DEPENDS:= libpthread @@ -22,7 +22,7 @@ include ${TOPDIR}/mk/package.mk $(eval $(call PKG_template,SOCAT,socat,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) -CONFIGURE_ENV+= sc_cv_termios_ispeed="no" \ +CONFIGURE_ENV+= sc_cv_termios_ispeed=no \ sc_cv_sys_crdly_shift=9 \ sc_cv_sys_tabdly_shift=11 \ sc_cv_sys_csize_shift=4 diff --git a/package/socat/patches/501-honor_ldflags.patch b/package/socat/patches/patch-Makefile_in index 87c777067..e8e979607 100644 --- a/package/socat/patches/501-honor_ldflags.patch +++ b/package/socat/patches/patch-Makefile_in @@ -1,6 +1,5 @@ -diff -ruN socat-1.4-old/Makefile.in socat-1.4-new/Makefile.in ---- socat-1.7.2.2.orig/Makefile.in 2011-12-06 08:45:03.000000000 +0100 -+++ socat-1.7.2.2/Makefile.in 2013-12-24 16:37:21.000000000 +0100 +--- socat-1.7.2.4.orig/Makefile.in 2014-03-09 15:48:44.000000000 +0100 ++++ socat-1.7.2.4/Makefile.in 2014-03-22 12:13:46.000000000 +0100 @@ -38,7 +38,8 @@ INSTALL = @INSTALL@ #0 CFLAGS = @CFLAGS@ $(CCOPTS) $(DEFS) $(INCLS) diff --git a/package/socat/patches/patch-configure b/package/socat/patches/patch-configure new file mode 100644 index 000000000..75b014290 --- /dev/null +++ b/package/socat/patches/patch-configure @@ -0,0 +1,23 @@ +--- socat-1.7.2.4.orig/configure 2014-03-09 20:57:51.000000000 +0100 ++++ socat-1.7.2.4/configure 2014-03-22 12:20:13.000000000 +0100 +@@ -3347,18 +3347,8 @@ fi + # fail + + +- +-if test "$CC" = "gcc"; then +- CFLAGS="$CFLAGS -D_GNU_SOURCE -Wall -Wno-parentheses" +- ERRONWARN="-Werror -O0" +-elif test "$CC" = "clang"; then +- CFLAGS="$CFLAGS -D_GNU_SOURCE -Wall -Wno-parentheses" +- ERRONWARN="-Werror -O0" +-#elif Sun Studio +-# ERRONWARN="-errwarn" +-else +- ERRONWARN= +-fi ++CFLAGS="$CFLAGS -D_GNU_SOURCE -Wall -Wno-parentheses" ++ERRONWARN="-Werror -O0" + export CFLAGS + + diff --git a/package/sox/Makefile b/package/sox/Makefile index 2f5436146..af30a9199 100644 --- a/package/sox/Makefile +++ b/package/sox/Makefile @@ -4,10 +4,10 @@ include $(TOPDIR)/rules.mk PKG_NAME:= sox -PKG_VERSION:= 14.3.2 -PKG_RELEASE:= 1 -PKG_MD5SUM:= e9d35cf3b0f8878596e0b7c49f9e8302 -PKG_DESCR:= Swiss Army knife of sound processing programs +PKG_VERSION:= 14.4.1 +PKG_RELEASE:= 2 +PKG_MD5SUM:= 670307f40763490a2bc0d1f322071e7a +PKG_DESCR:= swiss army knife of sound processing programs PKG_SECTION:= multimedia PKG_BUILDDEP:= zlib libmad lame alsa-lib libid3tag PKG_DEPENDS:= zlib libmad liblame alsa-lib libid3tag diff --git a/package/sox/patches/patch-ltmain_sh b/package/sox/patches/patch-ltmain_sh deleted file mode 100644 index 722e3e762..000000000 --- a/package/sox/patches/patch-ltmain_sh +++ /dev/null @@ -1,11 +0,0 @@ ---- sox-14.3.2.orig/ltmain.sh 2011-01-04 06:04:29.000000000 +0100 -+++ sox-14.3.2/ltmain.sh 2011-03-06 00:04:37.000000000 +0100 -@@ -5091,7 +5091,7 @@ func_mode_link () - # @file GCC response files - # -tp=* Portland pgcc target processor selection - -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ -- -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*) -+ -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|-fstack-protector*|-flto*) - func_quote_for_eval "$arg" - arg="$func_quote_for_eval_result" - func_append compile_command " $arg" diff --git a/package/sox/patches/patch-src_formats_c b/package/sox/patches/patch-src_formats_c index fc298ba8e..8ad23c63b 100644 --- a/package/sox/patches/patch-src_formats_c +++ b/package/sox/patches/patch-src_formats_c @@ -1,20 +1,20 @@ ---- sox-14.3.1.orig/src/formats.c 2010-01-02 01:07:28.000000000 +0100 -+++ sox-14.3.1/src/formats.c 2011-03-01 22:15:05.000000000 +0100 -@@ -399,7 +399,7 @@ static void UNUSED rewind_pipe(FILE * fp +--- sox-14.4.1.orig/src/formats.c 2013-01-13 20:57:39.000000000 +0100 ++++ sox-14.4.1/src/formats.c 2014-03-29 15:00:39.000000000 +0100 +@@ -409,7 +409,7 @@ static void UNUSED rewind_pipe(FILE * fp #if defined _FSTDIO || defined _NEWLIB_VERSION || defined __APPLE__ - fp->_p -= AUTO_DETECT_SIZE; - fp->_r += AUTO_DETECT_SIZE; + fp->_p -= PIPE_AUTO_DETECT_SIZE; + fp->_r += PIPE_AUTO_DETECT_SIZE; -#elif defined __GLIBC__ +#elif defined __GLIBC__ && ! defined __UCLIBC__ fp->_IO_read_ptr = fp->_IO_read_base; - #elif defined _MSC_VER || defined __MINGW_H || defined _ISO_STDIO_ISO_H + #elif defined _MSC_VER || defined _WIN32 || defined _WIN64 || defined _ISO_STDIO_ISO_H fp->_ptr = fp->_base; -@@ -407,7 +407,7 @@ static void UNUSED rewind_pipe(FILE * fp +@@ -417,7 +417,7 @@ static void UNUSED rewind_pipe(FILE * fp /* To fix this #error, either simply remove the #error line and live without * file-type detection with pipes, or add support for your compiler in the - * lines above. Test with cat monkey.au | ./sox --info - */ + * lines above. Test with cat monkey.wav | ./sox --info - */ - #error FIX NEEDED HERE -+/* #error FIX NEEDED HERE */ ++ //#error FIX NEEDED HERE #define NO_REWIND_PIPE (void)fp; #endif diff --git a/package/squashfs/Makefile b/package/squashfs/Makefile new file mode 100644 index 000000000..575849acd --- /dev/null +++ b/package/squashfs/Makefile @@ -0,0 +1,37 @@ +# This file is part of the OpenADK project. OpenADK is copyrighted +# material, please see the LICENCE file in the top-level directory. + +include $(TOPDIR)/rules.mk + +PKG_NAME:= squashfs +PKG_VERSION:= 4.2 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 1b7a781fb4cf8938842279bd3e8ee852 +PKG_DESCR:= squashfs filesystem utilities +PKG_SECTION:= fs +PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=squashfs/} + +DISTFILES:= ${PKG_NAME}${PKG_VERSION}.tar.gz +WRKDIST= ${WRKDIR}/$(PKG_NAME)${PKG_VERSION} + +PKG_CFLINE_SQUASHFS:= depends on ADK_HOST_ONLY + +include $(TOPDIR)/mk/host.mk +include $(TOPDIR)/mk/package.mk + +$(eval $(call HOST_template,SQUASHFS,squashfs,$(PKG_VERSION)-${PKG_RELEASE})) + +HOST_STYLE:= manual +HOST_MAKE_FLAGS+= XATTR_SUPPORT=0 XZ_SUPPORT=1 EXTRA_LDFLAGS=$(LDFLAGS_FOR_BUILD) + +host-build: + (cd ${WRKBUILD}/squashfs-tools && env ${HOST_MAKE_ENV} ${MAKE} -f ${MAKE_FILE} \ + ${HOST_MAKE_FLAGS} ${HOST_ALL_TARGET}) + +squashfs-hostinstall: + ${INSTALL_DIR} ${STAGING_HOST_DIR}/usr/bin + ${INSTALL_BIN} ${WRKBUILD}/squashfs-tools/mksquashfs \ + ${STAGING_HOST_DIR}/usr/bin + +include ${TOPDIR}/mk/host-bottom.mk +include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/tools/squashfs/patches/cppflags.patch b/package/squashfs/patches/patch-squashfs-tools_Makefile index 1432ea3cf..cc764141f 100644 --- a/tools/squashfs/patches/cppflags.patch +++ b/package/squashfs/patches/patch-squashfs-tools_Makefile @@ -1,7 +1,6 @@ -diff -Nur squashfs4.2.orig/squashfs-tools/Makefile squashfs4.2/squashfs-tools/Makefile --- squashfs4.2.orig/squashfs-tools/Makefile 2011-02-28 21:04:15.000000000 +0100 -+++ squashfs4.2/squashfs-tools/Makefile 2013-12-27 13:49:22.000000000 +0100 -@@ -93,7 +93,7 @@ ++++ squashfs4.2/squashfs-tools/Makefile 2014-03-29 15:02:11.000000000 +0100 +@@ -93,7 +93,7 @@ XATTR_DEFAULT = 1 # End of BUILD options section # ############################################### diff --git a/package/squashfs/patches/patch-squashfs-tools_mksquashfs_c b/package/squashfs/patches/patch-squashfs-tools_mksquashfs_c new file mode 100644 index 000000000..877894c6c --- /dev/null +++ b/package/squashfs/patches/patch-squashfs-tools_mksquashfs_c @@ -0,0 +1,47 @@ +--- squashfs4.2.orig/squashfs-tools/mksquashfs.c 2011-02-28 23:24:09.000000000 +0100 ++++ squashfs4.2/squashfs-tools/mksquashfs.c 2014-03-29 15:02:16.000000000 +0100 +@@ -60,6 +60,10 @@ + #include <sys/sysinfo.h> + #endif + ++#ifndef FNM_EXTMATCH ++#define FNM_EXTMATCH 0 ++#endif ++ + #ifdef SQUASHFS_TRACE + #define TRACE(s, args...) \ + do { \ +@@ -721,13 +725,13 @@ void cache_block_put(struct file_buffer + + (((char *)A) - data_cache))) + + +-inline void inc_progress_bar() ++static inline void inc_progress_bar() + { + cur_uncompressed ++; + } + + +-inline void update_progress_bar() ++static inline void update_progress_bar() + { + pthread_mutex_lock(&progress_mutex); + pthread_cond_signal(&progress_wait); +@@ -735,7 +739,7 @@ inline void update_progress_bar() + } + + +-inline void waitforthread(int i) ++static inline void waitforthread(int i) + { + TRACE("Waiting for thread %d\n", i); + while(thread[i] != 0) +@@ -3340,7 +3344,7 @@ struct inode_info *lookup_inode(struct s + } + + +-inline void add_dir_entry(char *name, char *pathname, struct dir_info *sub_dir, ++static inline void add_dir_entry(char *name, char *pathname, struct dir_info *sub_dir, + struct inode_info *inode_info, struct dir_info *dir) + { + if((dir->count % DIR_ENTRIES) == 0) { diff --git a/package/squashfs/patches/patch-squashfs-tools_unsquashfs_c b/package/squashfs/patches/patch-squashfs-tools_unsquashfs_c new file mode 100644 index 000000000..d57b184de --- /dev/null +++ b/package/squashfs/patches/patch-squashfs-tools_unsquashfs_c @@ -0,0 +1,39 @@ +--- squashfs4.2.orig/squashfs-tools/unsquashfs.c 2011-02-28 23:27:06.000000000 +0100 ++++ squashfs4.2/squashfs-tools/unsquashfs.c 2014-03-29 15:02:16.000000000 +0100 +@@ -29,7 +29,13 @@ + #include "compressor.h" + #include "xattr.h" + ++#ifndef FNM_EXTMATCH ++#define FNM_EXTMATCH 0 ++#endif ++ ++#ifdef __linux__ + #include <sys/sysinfo.h> ++#endif + #include <sys/types.h> + + struct cache *fragment_cache, *data_cache; +@@ -1810,7 +1816,7 @@ void initialise_threads(int fragment_buf + "\n"); + + if(processors == -1) { +-#ifndef linux ++#if 0 + int mib[2]; + size_t len = sizeof(processors); + +@@ -1821,11 +1827,13 @@ void initialise_threads(int fragment_buf + mib[1] = HW_NCPU; + #endif + ++#ifdef __linux__ + if(sysctl(mib, 2, &processors, &len, NULL, 0) == -1) { + ERROR("Failed to get number of available processors. " + "Defaulting to 1\n"); + processors = 1; + } ++#endif + #else + processors = sysconf(_SC_NPROCESSORS_ONLN); + #endif diff --git a/package/squid/Makefile b/package/squid/Makefile index f8e6aaf72..d3471bdce 100644 --- a/package/squid/Makefile +++ b/package/squid/Makefile @@ -5,7 +5,7 @@ include ${TOPDIR}/rules.mk PKG_NAME:= squid PKG_VERSION:= 3.4.4 -PKG_RELEASE:= 2 +PKG_RELEASE:= 3 PKG_MD5SUM:= b36ab3696485a86b43d9194ac9b6b7fe PKG_DESCR:= squid web and cache proxy PKG_SECTION:= proxy diff --git a/package/squid/patches/patch-lib_rfcnb_rfcnb-io_c b/package/squid/patches/patch-lib_rfcnb_rfcnb-io_c new file mode 100644 index 000000000..32faad55f --- /dev/null +++ b/package/squid/patches/patch-lib_rfcnb_rfcnb-io_c @@ -0,0 +1,11 @@ +--- squid-3.4.4.orig/lib/rfcnb/rfcnb-io.c 2014-03-09 10:40:56.000000000 +0100 ++++ squid-3.4.4/lib/rfcnb/rfcnb-io.c 2014-03-27 09:28:30.000000000 +0100 +@@ -30,7 +30,7 @@ + #include "rfcnb/rfcnb-util.h" + #include "rfcnb/std-includes.h" + #include <sys/uio.h> +-#include <sys/signal.h> ++#include <signal.h> + + #if HAVE_STRING_H + #include <string.h> diff --git a/package/strace/patches/patch-desc_c b/package/strace/patches/patch-desc_c index 9cfb5f505..63a01023e 100644 --- a/package/strace/patches/patch-desc_c +++ b/package/strace/patches/patch-desc_c @@ -1,5 +1,5 @@ --- strace-4.8.orig/desc.c 2013-05-02 00:39:10.000000000 +0200 -+++ strace-4.8/desc.c 2014-02-25 15:16:36.000000000 +0100 ++++ strace-4.8/desc.c 2014-03-01 19:44:21.000000000 +0100 @@ -223,7 +223,7 @@ static const struct xlat perf_event_open { 0, NULL }, }; @@ -9,3 +9,15 @@ /* fcntl/lockf */ static void printflock64(struct tcb *tcp, long addr, int getlk) +@@ -255,7 +255,11 @@ printflock(struct tcb *tcp, long addr, i + #if SUPPORTED_PERSONALITIES > 1 + # ifdef X32 + if (current_personality == 0) { ++#if defined(__GLIBC__) + printflock64(tcp, addr, getlk); ++#else ++ printflock(tcp, addr, getlk); ++#endif + return; + } + # endif diff --git a/package/strongswan/Makefile b/package/strongswan/Makefile index b60c6e6d7..314e30635 100644 --- a/package/strongswan/Makefile +++ b/package/strongswan/Makefile @@ -20,7 +20,7 @@ PKG_SITES:= http://download.strongswan.org/ PKG_LIBC_DEPENDS:= uclibc glibc -PKG_CHOICES_STRONGSWAN:=WITH_GMP WITH_OPENSSL WITH_GNUTLS +PKG_CHOICES_STRONGSWAN:=WITH_GNUTLS WITH_OPENSSL WITH_GMP PKGCD_WITH_GMP:= use GMP for crypto PKGCS_WITH_GMP:= libgmp PKGCB_WITH_GMP:= gmp diff --git a/package/sudo/Makefile b/package/sudo/Makefile index bc1ba138d..0c3d9562f 100644 --- a/package/sudo/Makefile +++ b/package/sudo/Makefile @@ -4,9 +4,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:= sudo -PKG_VERSION:= 1.7.4p4 +PKG_VERSION:= 1.8.10 PKG_RELEASE:= 2 -PKG_MD5SUM:= 55d9906535d70a1de347cd3d3550ee87 +PKG_MD5SUM:= 954d64906c3f6e2436f33445a049c58b PKG_DESCR:= su do PKG_SECTION:= admin PKG_URL:= http://www.courtesan.com/sudo/ @@ -16,9 +16,16 @@ include $(TOPDIR)/mk/package.mk $(eval $(call PKG_template,SUDO,sudo,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +CPPFLAGS_FOR_BUILD+= -I../ -I../include CONFIGURE_ARGS+= --without-pam \ - --with-env-editor \ - --with-timedir=/var/run + --without-sendmail \ + --with-env-editor + +ifeq ($(ADK_TOOLCHAIN_GCC_USE_SSP),y) +CONFIGURE_ARGS+= --enable-hardening +else +CONFIGURE_ARGS+= --disable-hardening +endif sudo-install: $(INSTALL_DIR) $(IDIR_SUDO)/usr/bin diff --git a/package/sudo/patches/patch-compat_Makefile_in b/package/sudo/patches/patch-compat_Makefile_in new file mode 100644 index 000000000..e52c8a62c --- /dev/null +++ b/package/sudo/patches/patch-compat_Makefile_in @@ -0,0 +1,15 @@ +--- sudo-1.8.10.orig/compat/Makefile.in 2014-03-07 22:51:19.000000000 +0100 ++++ sudo-1.8.10/compat/Makefile.in 2014-03-24 15:58:28.000000000 +0100 +@@ -96,10 +96,10 @@ signame.c: mksigname + ./mksigname > $@ + + mksiglist: $(srcdir)/mksiglist.c $(srcdir)/mksiglist.h $(incdir)/missing.h $(top_builddir)/config.h +- $(CC) $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/mksiglist.c -o $@ ++ $(CC_FOR_BUILD) $(CPPFLAGS_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/mksiglist.c -o $@ + + mksigname: $(srcdir)/mksigname.c $(srcdir)/mksigname.h $(incdir)/missing.h $(top_builddir)/config.h +- $(CC) $(CPPFLAGS) $(CFLAGS) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/mksigname.c -o $@ ++ $(CC_FOR_BUILD) $(CPPFLAGS_FOR_BUILD) $(CFLAGS_FOR_BUILD) $(PIE_CFLAGS) $(SSP_CFLAGS) $(DEFS) $(srcdir)/mksigname.c -o $@ + + fnm_test: fnm_test.o libreplace.la + $(LIBTOOL) --mode=link $(CC) -o $@ fnm_test.o libreplace.la $(PIE_LDFLAGS) $(SSP_LDFLAGS) diff --git a/package/sudo/patches/patch-plugins_sudoers_match_c b/package/sudo/patches/patch-plugins_sudoers_match_c new file mode 100644 index 000000000..57c49e55b --- /dev/null +++ b/package/sudo/patches/patch-plugins_sudoers_match_c @@ -0,0 +1,54 @@ +--- sudo-1.8.10.orig/plugins/sudoers/match.c 2014-03-07 22:51:19.000000000 +0100 ++++ sudo-1.8.10/plugins/sudoers/match.c 2014-03-24 16:16:24.000000000 +0100 +@@ -122,10 +122,12 @@ userlist_matches(const struct passwd *pw + case ALL: + matched = !m->negated; + break; ++#if 0 + case NETGROUP: + if (netgr_matches(m->name, NULL, NULL, pw->pw_name)) + matched = !m->negated; + break; ++#endif + case USERGROUP: + if (usergr_matches(m->name, pw->pw_name, pw)) + matched = !m->negated; +@@ -178,10 +180,12 @@ runaslist_matches(const struct member_li + case ALL: + user_matched = !m->negated; + break; ++#if 0 + case NETGROUP: + if (netgr_matches(m->name, NULL, NULL, runas_pw->pw_name)) + user_matched = !m->negated; + break; ++#endif + case USERGROUP: + if (usergr_matches(m->name, runas_pw->pw_name, runas_pw)) + user_matched = !m->negated; +@@ -278,10 +282,12 @@ hostlist_matches(const struct member_lis + case ALL: + matched = !m->negated; + break; ++#if 0 + case NETGROUP: + if (netgr_matches(m->name, user_runhost, user_srunhost, NULL)) + matched = !m->negated; + break; ++#endif + case NTWKADDR: + if (addr_matches(m->name)) + matched = !m->negated; +@@ -930,6 +936,7 @@ sudo_getdomainname(void) + * else return false. Either of "lhost", "shost" or "user" may be NULL + * in which case that argument is not checked... + */ ++#if 0 + bool + netgr_matches(const char *netgr, const char *lhost, const char *shost, const char *user) + { +@@ -972,3 +979,4 @@ netgr_matches(const char *netgr, const c + + debug_return_bool(rc); + } ++#endif diff --git a/package/syslinux/Makefile b/package/syslinux/Makefile index b84c0b9ad..00168274b 100644 --- a/package/syslinux/Makefile +++ b/package/syslinux/Makefile @@ -4,29 +4,36 @@ include $(TOPDIR)/rules.mk PKG_NAME:= syslinux -PKG_VERSION:= 4.03 +PKG_VERSION:= 6.02 PKG_RELEASE:= 1 -PKG_MD5SUM:= 086ac1c569d226a5e2ae3d605de09a1d +PKG_MD5SUM:= 1df6ff6e4a82b9d7d71a9e7cb5851a5f PKG_DESCR:= lightweight bootloaders -PKG_SECTION:= misc -PKG_BUILDDEP:= nasm +PKG_SECTION:= boot +HOST_BUILDDEP:= nasm-host PKG_URL:= http://syslinux.zytor.com/wiki/index.php/The_Syslinux_Project PKG_SITES:= http://www.kernel.org/pub/linux/utils/boot/syslinux/ -PKG_ARCH_DEPENDS:= native -PKG_HOST_DEPENDS:= !darwin !netbsd !openbsd !cygwin !freebsd +PKG_CFLINE_SYSLINUX:= depends on ADK_HOST_ONLY +include $(TOPDIR)/mk/host.mk include $(TOPDIR)/mk/package.mk -$(eval $(call PKG_template,SYSLINUX,syslinux,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +$(eval $(call HOST_template,SYSLINUX,syslinux,$(PKG_VERSION)-${PKG_RELEASE})) -CONFIG_STYLE:= manual -FAKE_FLAGS+= INSTALLROOT=${WRKINST} -TARGET_CFLAGS+= -std=c99 +HOST_STYLE:= manual +HOST_ALL_TARGET:= bios installer -syslinux-install: - $(INSTALL_DIR) $(IDIR_SYSLINUX)/usr/bin - $(INSTALL_BIN) $(WRKINST)/usr/bin/syslinux \ - $(IDIR_SYSLINUX)/usr/bin +host-build: + (cd ${WRKBUILD} && env ${HOST_MAKE_ENV} ${MAKE} -f ${MAKE_FILE} \ + ${HOST_MAKE_FLAGS} ${HOST_ALL_TARGET}) +syslinux-hostinstall: + $(INSTALL_DIR) $(STAGING_HOST_DIR)/usr/bin + $(INSTALL_DIR) $(STAGING_HOST_DIR)/usr/share/syslinux + $(CP) $(WRKBUILD)/bios/core/isolinux.bin \ + $(STAGING_HOST_DIR)/usr/share/syslinux + $(CP) $(WRKBUILD)/bios/com32/elflink/ldlinux/ldlinux.c32 \ + $(STAGING_HOST_DIR)/usr/share/syslinux + +include ${TOPDIR}/mk/host-bottom.mk include ${TOPDIR}/mk/pkg-bottom.mk diff --git a/package/tntnet/Makefile b/package/tntnet/Makefile index 109f13963..e8e674fcc 100644 --- a/package/tntnet/Makefile +++ b/package/tntnet/Makefile @@ -17,7 +17,7 @@ PKG_NEED_CXX:= 1 PKG_ARCH_DEPENDS:= !arm !m68k -PKG_CHOICES_TNTNET:= WITHOUT_SSL WITH_OPENSSL WITH_GNUTLS +PKG_CHOICES_TNTNET:= WITH_GNUTLS WITH_OPENSSL WITHOUT_SSL PKGCD_WITHOUT_SSL:= use no SSL PKGCD_WITH_OPENSSL:= use OpenSSL for crypto PKGCS_WITH_OPENSSL:= libopenssl diff --git a/package/tzdata/Makefile b/package/tzdata/Makefile index dc038027f..8fd111b3d 100644 --- a/package/tzdata/Makefile +++ b/package/tzdata/Makefile @@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:= tzdata PKG_VERSION:= 2013d -PKG_RELEASE:= 2 +PKG_RELEASE:= 3 PKG_MD5SUM:= 65b6818162230fc02f86f293376c73df 4616a9560270f180eeb9a08540636890 PKG_DESCR:= Timezone data (/usr/share/zoneinfo) PKG_SECTION:= utils @@ -39,8 +39,12 @@ ALL_TARGET:= ALL INSTALL_TARGET:= INSTALL tzdata-install: - $(INSTALL_DIR) $(IDIR_TZDATA)/usr/share $(IDIR_TZDATA)/etc - $(CP) $(WRKINST)/usr/share/zoneinfo $(IDIR_TZDATA)/usr/share + $(INSTALL_DIR) $(IDIR_TZDATA)/usr/share/zoneinfo $(IDIR_TZDATA)/etc + cd ${WRKINST} && for f in UTC ${ADK_RUNTIME_TIMEZONE}; do \ + test -s usr/share/zoneinfo/"$$f" || continue; \ + echo usr/share/zoneinfo/"$$f" | \ + ${STAGING_HOST_DIR}/usr/bin/cpio -pdu ${IDIR_TZDATA}/; \ + done tz=; cd $(IDIR_TZDATA)/usr/share/zoneinfo || exit 1; \ for f in UTC ${ADK_RUNTIME_TIMEZONE}; do \ test -s "$$f" || continue; \ diff --git a/package/valgrind/Makefile b/package/valgrind/Makefile index 025db9dac..9c78dc20c 100644 --- a/package/valgrind/Makefile +++ b/package/valgrind/Makefile @@ -5,7 +5,7 @@ include $(TOPDIR)/rules.mk PKG_NAME:= valgrind PKG_VERSION:= 3.9.0 -PKG_RELEASE:= 1 +PKG_RELEASE:= 2 PKG_MD5SUM:= 0947de8112f946b9ce64764af7be6df2 PKG_DESCR:= memory management debugging PKG_SECTION:= debug diff --git a/package/valgrind/patches/patch-configure_ac b/package/valgrind/patches/patch-configure_ac index 844275cca..cc7286c90 100644 --- a/package/valgrind/patches/patch-configure_ac +++ b/package/valgrind/patches/patch-configure_ac @@ -1,5 +1,5 @@ --- valgrind-3.9.0.orig/configure.ac 2013-11-01 00:28:16.000000000 +0100 -+++ valgrind-3.9.0/configure.ac 2013-11-07 17:26:16.000000000 +0100 ++++ valgrind-3.9.0/configure.ac 2014-03-17 14:18:45.000000000 +0100 @@ -155,6 +155,7 @@ esac # configure-time, and distinguishes them from the VGA_*/VGO_*/VGP_* # variables used when compiling C files. @@ -36,6 +36,15 @@ #---------------------------------------------------------------------------- # Sometimes it's convenient to subvert the bi-arch build system and +@@ -273,7 +286,7 @@ case "${host_os}" in + # Ok, this is linux. Check the kernel version + AC_MSG_CHECKING([for the kernel version]) + +- kernel=`uname -r` ++ kernel=3.13 + + case "${kernel}" in + 2.6.*|3.*) @@ -792,6 +805,15 @@ AC_EGREP_CPP([BIONIC_LIBC], [ ], GLIBC_VERSION="bionic") diff --git a/package/vlc/Makefile b/package/vlc/Makefile index 67f0ec763..74ab64ef7 100644 --- a/package/vlc/Makefile +++ b/package/vlc/Makefile @@ -4,10 +4,10 @@ include $(TOPDIR)/rules.mk PKG_NAME:= vlc -PKG_VERSION:= 2.1.1 +PKG_VERSION:= 2.1.4 PKG_RELEASE:= 1 -PKG_MD5SUM:= 1331cd853d56762c96afcb92dd498348 -PKG_DESCR:= Media Player +PKG_MD5SUM:= 7ed67d22f7425011078772bfc62ac222 +PKG_DESCR:= popular media player PKG_SECTION:= multimedia PKG_BUILDDEP:= ffmpeg xcb-util libtheora libgcrypt libmad PKG_DEPENDS:= libffmpeg xcb-util libtheora libgcrypt @@ -23,6 +23,7 @@ include $(TOPDIR)/mk/package.mk $(eval $(call PKG_template,VLC,vlc,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +TARGET_CPPFLAGS+= -D_GNU_SOURCE -D_POSIX_SOURCE TARGET_CFLAGS+= -fPIC CONFIGURE_ENV+= ac_cv_func_sched_getaffinity=no CONFIGURE_ARGS+= --disable-lua \ diff --git a/package/vlc/patches/patch-modules_text_renderer_freetype_c b/package/vlc/patches/patch-modules_text_renderer_freetype_c deleted file mode 100644 index 0c25fcfdf..000000000 --- a/package/vlc/patches/patch-modules_text_renderer_freetype_c +++ /dev/null @@ -1,11 +0,0 @@ ---- vlc-2.1.1.orig/modules/text_renderer/freetype.c 2013-09-12 17:18:34.000000000 +0200 -+++ vlc-2.1.1/modules/text_renderer/freetype.c 2013-12-10 10:13:38.000000000 +0100 -@@ -90,7 +90,7 @@ - #endif - - /* Freetype */ --#include <freetype/ftsynth.h> -+#include <ftsynth.h> - #include FT_FREETYPE_H - #include FT_GLYPH_H - #include FT_STROKER_H diff --git a/package/watchdog/Makefile b/package/watchdog/Makefile index a4c6d44a5..a8486dd6a 100644 --- a/package/watchdog/Makefile +++ b/package/watchdog/Makefile @@ -4,9 +4,9 @@ include ${TOPDIR}/rules.mk PKG_NAME:= watchdog -PKG_VERSION:= 5.7 -PKG_RELEASE:= 3 -PKG_MD5SUM:= 31766450ecfc9aff70fe966c0b9df06d +PKG_VERSION:= 5.13 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 153455f008f1cf8f65f6ad9586a21ff1 PKG_DESCR:= watchdog daemon PKG_SECTION:= utils PKG_DEPENDS:= libtirpc @@ -17,6 +17,7 @@ include ${TOPDIR}/mk/package.mk $(eval $(call PKG_template,WATCHDOG,watchdog,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +TARGET_CPPFLAGS+= -D_GNU_SOURCE TARGET_CFLAGS+= -I$(STAGING_TARGET_DIR)/usr/include/tirpc TARGET_LDFLAGS+= -ltirpc diff --git a/package/watchdog/patches/patch-include_extern_h b/package/watchdog/patches/patch-include_extern_h new file mode 100644 index 000000000..aea373525 --- /dev/null +++ b/package/watchdog/patches/patch-include_extern_h @@ -0,0 +1,9 @@ +--- watchdog-5.13.orig/include/extern.h 2013-02-01 12:15:44.000000000 +0100 ++++ watchdog-5.13/include/extern.h 2014-03-22 15:41:57.000000000 +0100 +@@ -1,5 +1,6 @@ + #include <netinet/in.h> + #include <stdio.h> ++#include <time.h> + + /* external variables */ + extern int softboot, watchdog, temp, maxtemp, tint, lastts, nrts; diff --git a/package/watchdog/patches/patch-src_memory_c b/package/watchdog/patches/patch-src_memory_c new file mode 100644 index 000000000..06540812e --- /dev/null +++ b/package/watchdog/patches/patch-src_memory_c @@ -0,0 +1,11 @@ +--- watchdog-5.13.orig/src/memory.c 2013-02-01 12:15:44.000000000 +0100 ++++ watchdog-5.13/src/memory.c 2014-03-22 16:07:15.000000000 +0100 +@@ -81,7 +81,7 @@ int check_memory(void) + syslog(LOG_INFO, "currently there are %d kB of free memory available", free); + #endif /* USE_SYSLOG */ + +- if (free < minpages * (EXEC_PAGESIZE / 1024)) { ++ if (free < minpages * (4096 / 1024)) { + #if USE_SYSLOG + syslog(LOG_ERR, "memory %d kB is less than %d pages", free, minpages); + #endif /* USE_SYSLOG */ diff --git a/package/watchdog/patches/patch-src_mntent_c b/package/watchdog/patches/patch-src_mntent_c deleted file mode 100644 index f2277bdbf..000000000 --- a/package/watchdog/patches/patch-src_mntent_c +++ /dev/null @@ -1,11 +0,0 @@ ---- watchdog-5.7.orig/src/mntent.c 2010-01-06 13:42:08.000000000 +0100 -+++ watchdog-5.7/src/mntent.c 2010-02-06 04:39:34.804334839 +0100 -@@ -157,7 +157,7 @@ my_getmntent (mntFILE *mfp) { - if (fgets (buf, sizeof(buf), mfp->mntent_fp) == NULL) - return NULL; - -- s = index (buf, '\n'); -+ s = strchr (buf, '\n'); - if (s == NULL) { - /* extremely long line - assume file was corrupted */ - mfp->mntent_errs = 1; diff --git a/package/watchdog/patches/patch-src_net_c b/package/watchdog/patches/patch-src_net_c new file mode 100644 index 000000000..da56cf791 --- /dev/null +++ b/package/watchdog/patches/patch-src_net_c @@ -0,0 +1,10 @@ +--- watchdog-5.13.orig/src/net.c 2013-02-01 12:15:44.000000000 +0100 ++++ watchdog-5.13/src/net.c 2014-03-22 16:18:27.000000000 +0100 +@@ -6,6 +6,7 @@ + + #include <errno.h> + #include <sys/time.h> ++#include <sys/types.h> + #include <netinet/ip.h> + #include <netinet/ip_icmp.h> + diff --git a/package/watchdog/patches/patch-src_shutdown_c b/package/watchdog/patches/patch-src_shutdown_c new file mode 100644 index 000000000..90ba0ee3c --- /dev/null +++ b/package/watchdog/patches/patch-src_shutdown_c @@ -0,0 +1,18 @@ +--- watchdog-5.13.orig/src/shutdown.c 2013-02-01 12:15:44.000000000 +0100 ++++ watchdog-5.13/src/shutdown.c 2014-03-22 16:29:44.000000000 +0100 +@@ -186,6 +186,7 @@ static void mnt_off() + FILE *fp; + struct mntent *mnt; + ++#if defined __GLIBC__ + fp = setmntent(MNTTAB, "r"); + /* in some rare cases fp might be NULL so be careful */ + while (fp != NULL && ((mnt = getmntent(fp)) != (struct mntent *) 0)) { +@@ -241,6 +242,7 @@ static void mnt_off() + #endif + } + endmntent(fp); ++#endif + } + + /* Parts of the following two functions are taken from Miquel van */ diff --git a/package/watchdog/patches/patch-src_umount_c b/package/watchdog/patches/patch-src_umount_c deleted file mode 100644 index 6b5a82c1f..000000000 --- a/package/watchdog/patches/patch-src_umount_c +++ /dev/null @@ -1,11 +0,0 @@ ---- watchdog-5.7.orig/src/umount.c 2010-01-06 13:42:08.000000000 +0100 -+++ watchdog-5.7/src/umount.c 2010-02-06 04:39:47.664334843 +0100 -@@ -212,7 +212,7 @@ umount_one (const char *spec, const char - if (res < 0) - umnt_err2 = errno; - /* Do not complain about remote NFS mount points */ -- if (errno == ENOENT && index(spec, ':')) -+ if (errno == ENOENT && strchr(spec, ':')) - umnt_err2 = 0; - } - } diff --git a/package/wget/Makefile b/package/wget/Makefile index 9c412c3ea..516576a86 100644 --- a/package/wget/Makefile +++ b/package/wget/Makefile @@ -13,7 +13,7 @@ PKG_BUILDDEP:= autotool PKG_URL:= http://www.gnu.org/software/wget/ PKG_SITES:= ${MASTER_SITE_GNU:=wget/} -PKG_CHOICES_WGET:= WITHOUT_SSL WITH_OPENSSL WITH_GNUTLS +PKG_CHOICES_WGET:= WITH_GNUTLS WITH_OPENSSL WITHOUT_SSL PKGCD_WITHOUT_SSL:= use no SSL PKGCD_WITH_OPENSSL:= use OpenSSL for crypto PKGCS_WITH_OPENSSL:= libopenssl ca-certificates libgmp diff --git a/package/wpa_supplicant/Makefile b/package/wpa_supplicant/Makefile index e1545e64c..38895bb24 100644 --- a/package/wpa_supplicant/Makefile +++ b/package/wpa_supplicant/Makefile @@ -18,7 +18,7 @@ PKG_DFLT_WPA_SUPPLICANT:= y if ADK_TARGET_SYSTEM_IBM_X40 WRKSRC= ${WRKDIST}/${PKG_NAME} -PKG_CHOICES_WPA_SUPPLICANT:= WITH_OPENSSL WITH_GNUTLS WITH_INTERNAL +PKG_CHOICES_WPA_SUPPLICANT:= WITH_GNUTLS WITH_OPENSSL WITH_INTERNAL PKGCD_WITH_OPENSSL:= use OpenSSL for crypto PKGCS_WITH_OPENSSL:= libopenssl PKGCB_WITH_OPENSSL:= openssl diff --git a/package/xbmc/Makefile b/package/xbmc/Makefile index fed181d92..e8fc5cc40 100644 --- a/package/xbmc/Makefile +++ b/package/xbmc/Makefile @@ -69,6 +69,7 @@ CONFIGURE_ARGS+= --disable-optical-drive \ --enable-libbluray \ --enable-external-libraries \ --enable-rtmp \ + --enable-libcec \ --disable-libusb \ --disable-libcap \ --disable-sdl \ diff --git a/package/xcb-proto/Makefile b/package/xcb-proto/Makefile index 9e5d2b3b1..e4d2bfe97 100644 --- a/package/xcb-proto/Makefile +++ b/package/xcb-proto/Makefile @@ -4,11 +4,11 @@ include $(TOPDIR)/rules.mk PKG_NAME:= xcb-proto -PKG_VERSION:= 1.8 +PKG_VERSION:= 1.10 PKG_RELEASE:= 1 PKG_DESCR:= XML-XCB protocol descriptions PKG_SECTION:= devel -PKG_MD5SUM:= 8d2cdb770129cef563088a90c5bec768 +PKG_MD5SUM:= 2b9dc6442156aba2bfb4133cb9d7cf46 PKG_BUILDDEP:= autotool bzip2-host python2-host xcb-proto-host PKG_SITES:= http://xcb.freedesktop.org/dist/ PKG_OPTS:= dev devonly diff --git a/package/xextproto/Makefile b/package/xextproto/Makefile index 1c70d3956..368e75037 100644 --- a/package/xextproto/Makefile +++ b/package/xextproto/Makefile @@ -4,12 +4,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:= xextproto -PKG_VERSION:= 7.2.1 +PKG_VERSION:= 7.3.0 PKG_RELEASE:= 1 PKG_DESCR:= X Protocol Extensions headers PKG_SECTION:= devel PKG_BUILDDEP:= xextproto-host -PKG_MD5SUM:= 9062d689f422fad1b8774c967d730f09 +PKG_MD5SUM:= 37b700baa8c8ea7964702d948dd13821 PKG_SITES:= ${MASTER_SITE_XORG} PKG_OPTS:= dev devonly diff --git a/package/xf86-input-keyboard/Makefile b/package/xf86-input-keyboard/Makefile index cca9b2194..9b46c8f2f 100644 --- a/package/xf86-input-keyboard/Makefile +++ b/package/xf86-input-keyboard/Makefile @@ -4,9 +4,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:= xf86-input-keyboard -PKG_VERSION:= 1.6.1 +PKG_VERSION:= 1.8.0 PKG_RELEASE:= 1 -PKG_MD5SUM:= c2188611990880f06f7d6c2a7672af1b +PKG_MD5SUM:= 4f3e135e04939916f37f91a111c6f70b PKG_DESCR:= X11 driver for keyboard PKG_SECTION:= x11/drivers PKG_DEPENDS:= xorg-server diff --git a/package/xf86-input-mouse/Makefile b/package/xf86-input-mouse/Makefile index f050696f6..0f1267fb4 100644 --- a/package/xf86-input-mouse/Makefile +++ b/package/xf86-input-mouse/Makefile @@ -4,9 +4,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:= xf86-input-mouse -PKG_VERSION:= 1.7.2 +PKG_VERSION:= 1.9.0 PKG_RELEASE:= 1 -PKG_MD5SUM:= 0f2f2dfb7b769544f04b3469803098a5 +PKG_MD5SUM:= 125402066940ef30737721243bb1b77e PKG_DESCR:= X11 driver for mouse PKG_SECTION:= x11/drivers PKG_DEPENDS:= xorg-server diff --git a/package/xf86-video-fbdev/Makefile b/package/xf86-video-fbdev/Makefile index cf24b3358..b14e8eaa8 100644 --- a/package/xf86-video-fbdev/Makefile +++ b/package/xf86-video-fbdev/Makefile @@ -4,9 +4,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:= xf86-video-fbdev -PKG_VERSION:= 0.4.2 +PKG_VERSION:= 0.4.4 PKG_RELEASE:= 1 -PKG_MD5SUM:= a94011aac77eb9cd6d46bf0af0dbc631 +PKG_MD5SUM:= 2b5e6dd218243cf96c1a4090596a6bba PKG_DESCR:= X11 driver for Linux Framebuffer devices PKG_SECTION:= x11/drivers PKG_DEPENDS:= xorg-server diff --git a/package/xf86-video-siliconmotion/Makefile b/package/xf86-video-siliconmotion/Makefile index 84c73e6bd..69540fc99 100644 --- a/package/xf86-video-siliconmotion/Makefile +++ b/package/xf86-video-siliconmotion/Makefile @@ -4,9 +4,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:= xf86-video-siliconmotion -PKG_VERSION:= 1.7.6 +PKG_VERSION:= 1.7.7 PKG_RELEASE:= 1 -PKG_MD5SUM:= b71859e15fc62563d346c7bccc0ef82e +PKG_MD5SUM:= 94c44123d8d0a46a7f6bace8508763d8 PKG_DESCR:= X11 driver for Silicon Motion VGA chips PKG_SECTION:= x11/drivers PKG_DEPENDS:= xorg-server @@ -21,6 +21,8 @@ include $(TOPDIR)/mk/package.mk $(eval $(call PKG_template,XF86_VIDEO_SILICONMOTION,xf86-video-siliconmotion,$(PKG_VERSION)-$(PKG_RELEASE),${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +CONFIGURE_ARGS+= --disable-xaa + xf86-video-siliconmotion-install: ${INSTALL_DIR} ${IDIR_XF86_VIDEO_SILICONMOTION}/usr/lib/xorg/modules/drivers ${CP} ${WRKINST}/usr/lib/xorg/modules/drivers/siliconmotion_*.so \ diff --git a/package/xf86-video-siliconmotion/patches/patch-src_Makefile_in b/package/xf86-video-siliconmotion/patches/patch-src_Makefile_in new file mode 100644 index 000000000..141955000 --- /dev/null +++ b/package/xf86-video-siliconmotion/patches/patch-src_Makefile_in @@ -0,0 +1,11 @@ +--- xf86-video-siliconmotion-1.7.7.orig/src/Makefile.in 2012-07-17 08:28:17.000000000 +0200 ++++ xf86-video-siliconmotion-1.7.7/src/Makefile.in 2014-03-14 18:09:06.901850694 +0100 +@@ -288,7 +288,7 @@ target_alias = @target_alias@ + top_build_prefix = @top_build_prefix@ + top_builddir = @top_builddir@ + top_srcdir = @top_srcdir@ +-AM_CFLAGS = $(XORG_CFLAGS) $(CWARNFLAGS) $(PCIACCESS_CFLAGS) ++AM_CFLAGS = $(XORG_CFLAGS) $(PCIACCESS_CFLAGS) + siliconmotion_drv_la_LTLIBRARIES = siliconmotion_drv.la + siliconmotion_drv_la_LDFLAGS = -module -avoid-version + siliconmotion_drv_ladir = @moduledir@/drivers diff --git a/package/xf86-video-siliconmotion/patches/patch-src_smi_driver_c b/package/xf86-video-siliconmotion/patches/patch-src_smi_driver_c new file mode 100644 index 000000000..eedd62fcc --- /dev/null +++ b/package/xf86-video-siliconmotion/patches/patch-src_smi_driver_c @@ -0,0 +1,11 @@ +--- xf86-video-siliconmotion-1.7.7.orig/src/smi_driver.c 2012-07-17 06:53:21.000000000 +0200 ++++ xf86-video-siliconmotion-1.7.7/src/smi_driver.c 2014-03-14 18:39:37.307139846 +0100 +@@ -1750,8 +1750,6 @@ SMI_ScreenInit(SCREEN_INIT_ARGS_DECL) + "Done writing mode. Register dump:\n"); + SMI_PrintRegs(pScrn); + +- miInitializeBackingStore(pScreen); +- + #ifdef HAVE_XMODES + xf86DiDGAInit(pScreen, (unsigned long)(pSmi->FBBase + pScrn->fbOffset)); + #endif diff --git a/package/xf86-video-siliconmotion/patches/loongson.patch b/package/xf86-video-siliconmotion/patches/patch-src_smi_video_c index 2b9041516..e12a74839 100644 --- a/package/xf86-video-siliconmotion/patches/loongson.patch +++ b/package/xf86-video-siliconmotion/patches/patch-src_smi_video_c @@ -1,7 +1,6 @@ -diff -Nur xf86-video-siliconmotion-1.7.4/src/smi_video.c xf86-video-siliconmotion-1.7.4-loongson/src/smi_video.c ---- xf86-video-siliconmotion-1.7.4/src/smi_video.c 2010-02-25 08:33:07.000000000 +0100 -+++ xf86-video-siliconmotion-1.7.4-loongson/src/smi_video.c 2012-03-13 04:18:18.634989344 +0100 -@@ -276,6 +276,7 @@ +--- xf86-video-siliconmotion-1.7.7.orig/src/smi_video.c 2012-07-17 06:53:21.000000000 +0200 ++++ xf86-video-siliconmotion-1.7.7/src/smi_video.c 2014-03-14 18:35:37.546382342 +0100 +@@ -275,6 +275,7 @@ static XF86ImageRec SMI_VideoImages[] = XVIMAGE_YUY2, XVIMAGE_YV12, XVIMAGE_I420, @@ -9,7 +8,7 @@ diff -Nur xf86-video-siliconmotion-1.7.4/src/smi_video.c xf86-video-siliconmotio { FOURCC_RV15, /* id */ XvRGB, /* type */ -@@ -1464,6 +1465,117 @@ +@@ -1461,6 +1462,117 @@ SMI_QueryBestSize( LEAVE(); } @@ -127,7 +126,7 @@ diff -Nur xf86-video-siliconmotion-1.7.4/src/smi_video.c xf86-video-siliconmotio static int SMI_PutImage( -@@ -1592,7 +1704,7 @@ +@@ -1592,7 +1704,7 @@ SMI_PutImage( offset3 = tmp; } nLines = ((((y2 + 0xffff) >> 16) + 1) & ~1) - top; diff --git a/package/xinetd/Makefile b/package/xinetd/Makefile index 42e3f7b83..deae22563 100644 --- a/package/xinetd/Makefile +++ b/package/xinetd/Makefile @@ -4,18 +4,19 @@ include $(TOPDIR)/rules.mk PKG_NAME:= xinetd -PKG_VERSION:= 2.3.14 +PKG_VERSION:= 2.3.15 PKG_RELEASE:= 1 -PKG_MD5SUM:= 567382d7972613090215c6c54f9b82d9 +PKG_MD5SUM:= 77358478fd58efa6366accae99b8b04c PKG_DESCR:= a powerful and secure superserver PKG_SECTION:= net/misc PKG_URL:= http://www.xinetd.org/ -PKG_SITES:= http://www.xinetd.org/ +PKG_SITES:= ftp://mirror.ovh.net/gentoo-distfiles/distfiles/ include $(TOPDIR)/mk/package.mk $(eval $(call PKG_template,XINETD,xinetd,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION})) +CONFIGURE_ENV+= xinetd_cv_type_rlim_t=yes CONFIGURE_ARGS+= --without-libwrap \ --with-loadavg ALL_TARGET:= build diff --git a/package/xinetd/patches/patch-Makefile_in b/package/xinetd/patches/patch-Makefile_in index a89962c2e..bfc02b9ab 100644 --- a/package/xinetd/patches/patch-Makefile_in +++ b/package/xinetd/patches/patch-Makefile_in @@ -1,14 +1,5 @@ ---- xinetd-2.3.14.orig/Makefile.in 2003-08-15 16:00:45.000000000 +0200 -+++ xinetd-2.3.14/Makefile.in 2011-01-22 20:53:07.924898364 +0100 -@@ -14,7 +14,7 @@ topdir = @top_srcdir@ - - LIBS = -lsio -lstr -lmisc -lxlog -lportable -lpset @LIBS@ - --CFLAGS += @CFLAGS@ -+CFLAGS = @CFLAGS@ - DCFLAGS = -Wall -Wredundant-decls -W -Wfloat-equal -Wundef -Wcast-qual -Wwrite-strings -Wconversion -Wmissing-noreturn -Wmissing-format-attribute -Wshadow -Wpointer-arith -g - - +--- xinetd-2.3.15.orig/Makefile.in 2007-09-20 19:01:52.000000000 +0200 ++++ xinetd-2.3.15/Makefile.in 2014-03-23 22:50:01.000000000 +0100 @@ -75,15 +75,15 @@ dlibxlog: dlibsio dlibstr install: build diff --git a/package/xinetd/patches/patch-xinetd_confparse_c b/package/xinetd/patches/patch-xinetd_confparse_c new file mode 100644 index 000000000..e6aa32e68 --- /dev/null +++ b/package/xinetd/patches/patch-xinetd_confparse_c @@ -0,0 +1,18 @@ +--- xinetd-2.3.15.orig/xinetd/confparse.c 2007-09-20 16:58:27.000000000 +0200 ++++ xinetd-2.3.15/xinetd/confparse.c 2014-03-23 22:39:37.000000000 +0100 +@@ -746,6 +746,7 @@ static status_e check_entry( struct serv + } + + /* #ifndef NO_RPC */ ++#if 0 + #if defined(HAVE_RPC_RPCENT_H) || defined(HAVE_NETDB_H) + if ( SC_IS_RPC( scp ) && !SC_IS_UNLISTED( scp ) ) + { +@@ -760,6 +761,7 @@ static status_e check_entry( struct serv + } + else + #endif /* ! NO_RPC */ ++#endif + { + if ( !SC_IS_UNLISTED( scp ) ) + { diff --git a/package/xorg-server/Makefile b/package/xorg-server/Makefile index fef274746..4e3a33c91 100644 --- a/package/xorg-server/Makefile +++ b/package/xorg-server/Makefile @@ -4,19 +4,21 @@ include $(TOPDIR)/rules.mk PKG_NAME:= xorg-server -PKG_VERSION:= 1.12.2 -PKG_RELEASE:= 3 -PKG_MD5SUM:= a95c896fbe8322c3c8d518a13eb74c7a +PKG_VERSION:= 1.15.0 +PKG_RELEASE:= 2 +PKG_MD5SUM:= faf04f1213f9a476997a774254b3abce PKG_DESCR:= Xorg server PKG_SECTION:= x11/server PKG_DEPENDS:= libopenssl libxfont pixman libpciaccess libxkbfile PKG_DEPENDS+= libfontenc xkeyboard-config xkbcomp libxau libxaw PKG_DEPENDS+= libxmu libxpm libxrender libxt libxxf86dga libxext PKG_DEPENDS+= libxdmcp libxv libsm libice libx11 libxcb libgcc librt +PKG_DEPENDS+= libxshmfence libfreetype libfontenc PKG_BUILDDEP:= libX11 randrproto renderproto fixesproto damageproto PKG_BUILDDEP+= scrnsaverproto resourceproto fontsproto videoproto PKG_BUILDDEP+= compositeproto evieext libxkbfile libXfont pixman PKG_BUILDDEP+= libpciaccess openssl xf86dgaproto recordproto +PKG_BUILDDEP+= xineramaproto PKG_URL:= http://www.x.org/ PKG_SITES:= ${MASTER_SITE_XORG} PKG_NEED_CXX:= 1 @@ -28,7 +30,7 @@ PKG_ARCH_DEPENDS:= !m68k PKG_FLAVOURS_XORG_SERVER:= WITH_DRI WITH_KDRIVE PKGFS_WITH_DRI:= mesalib PKGFD_WITH_DRI:= enable DRI/DRI2 support -PKGFB_WITH_DRI:= xf86driproto glproto dri2proto MesaLib +PKGFB_WITH_DRI:= xf86driproto glproto MesaLib PKGFD_WITH_KDRIVE:= Build Kdrive Xfbdev server PKG_CHOICES_XORG_SERVER:= WITH_GCRYPT WITH_CRYPTO @@ -43,7 +45,7 @@ include $(TOPDIR)/mk/package.mk $(eval $(call PKG_template,XORG_SERVER,xorg-server,$(PKG_VERSION)-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS})) -TARGET_CPPFLAGS+= -D_GNU_SOURCE +TARGET_CPPFLAGS+= -D_GNU_SOURCE -D__gid_t=gid_t -D__uid_t=uid_t ifeq (${ADK_PACKAGE_XORG_SERVER_WITH_GCRYPT},y) CONFIGURE_ARGS+= --with-sha1=libgcrypt @@ -57,9 +59,10 @@ CONFIGURE_ENV+= V=1 CONFIGURE_ARGS+= --enable-dga \ --enable-xorg \ --enable-xv \ - --enable-xaa \ --enable-vgahw \ --enable-dpms \ + --enable-xinerama \ + --disable-docs \ --disable-aiglx \ --disable-config-hal \ --disable-config-udev \ @@ -68,7 +71,6 @@ CONFIGURE_ARGS+= --enable-dga \ --disable-xf86bigfont \ --disable-xf86vidmode \ --disable-xfake \ - --disable-xinerama \ --disable-xnest \ --disable-xselinux \ --disable-xcsecurity \ @@ -85,9 +87,9 @@ CONFIGURE_ARGS+= --disable-kdrive --disable-xfbdev endif ifeq (${ADK_PACKAGE_XORG_SERVER_WITH_DRI},y) -CONFIGURE_ARGS+= --enable-dri --enable-dri2 --enable-glx +CONFIGURE_ARGS+= --enable-dri --enable-dri2 --enable-dri3 --enable-glx else -CONFIGURE_ARGS+= --disable-dri --disable-dri2 --disable-glx +CONFIGURE_ARGS+= --disable-dri --disable-dri2 --disable-dri3 --disable-glx endif ifeq (${ADK_TARGET_SYSTEM_LEMOTE_YEELONG},y) @@ -117,10 +119,6 @@ ifeq (${ADK_TARGET_SYSTEM_SHARP_ZAURUS},y) ${CP} ./files/xorg.conf.sharp-zaurus \ $(IDIR_XORG_SERVER)/etc/X11/xorg.conf endif -ifeq (${ADK_PACKAGE_XORG_SERVER_WITH_DRI},y) - ${CP} ${WRKINST}/usr/lib/xorg/modules/extensions/*dri*.so \ - $(IDIR_XORG_SERVER)/usr/lib/xorg/modules/extensions -endif # add m4 file to host directory $(INSTALL_DIR) $(STAGING_HOST_DIR)/usr/share/aclocal $(CP) ${WRKINST}/usr/share/aclocal/xorg-server.m4 \ diff --git a/package/xorg-server/files/xorg.conf.lemote-yeelong b/package/xorg-server/files/xorg.conf.lemote-yeelong index 042471020..c6204c590 100644 --- a/package/xorg-server/files/xorg.conf.lemote-yeelong +++ b/package/xorg-server/files/xorg.conf.lemote-yeelong @@ -12,13 +12,10 @@ Section "Module" Load "vgahw" Load "fb" Load "exa" - Load "xaa" Load "int10" Load "ddc" Load "i2c" Load "vbe" - Disable "glx" - Disable "dri" EndSection Section "Device" @@ -27,7 +24,7 @@ Section "Device" VendorName "Silicon Motion, Inc." BoardName "SM712 LynxEM+" BusID "PCI:0:8:0" - Option "AccelMethod" "XAA" + Option "AccelMethod" "EXA" Option "pci_burst" "true" Option "PanelSize" "1024x600" EndSection diff --git a/package/xorg-server/patches/patch-fb_fb_h b/package/xorg-server/patches/patch-fb_fb_h deleted file mode 100644 index 9118bec68..000000000 --- a/package/xorg-server/patches/patch-fb_fb_h +++ /dev/null @@ -1,13 +0,0 @@ - Fix for xf86-video-siliconmotion in 16bpp with XAA, see: - http://groups.google.com/group/loongson-dev/browse_thread/thread/570549e3d7894fef/5f04b3d9370adfd2 ---- xorg-server-1.12.2.orig/fb/fb.h 2012-05-29 22:04:19.000000000 +0200 -+++ xorg-server-1.12.2/fb/fb.h 2013-04-30 10:33:00.000000000 +0200 -@@ -70,7 +70,7 @@ - #define FBPREFIX(x) fb##x - #define WRITE(ptr, val) (*(ptr) = (val)) - #define READ(ptr) (*(ptr)) --#define MEMCPY_WRAPPED(dst, src, size) memcpy((dst), (src), (size)) -+#define MEMCPY_WRAPPED(dst, src, size) memmove((dst), (src), (size)) - #define MEMSET_WRAPPED(dst, val, size) memset((dst), (val), (size)) - - #endif diff --git a/package/xorg-server/patches/patch-hw_kdrive_linux_linux_c b/package/xorg-server/patches/patch-hw_kdrive_linux_linux_c deleted file mode 100644 index 2a8477cb8..000000000 --- a/package/xorg-server/patches/patch-hw_kdrive_linux_linux_c +++ /dev/null @@ -1,13 +0,0 @@ ---- xorg-server-1.12.2.orig/hw/kdrive/linux/linux.c 2012-05-17 19:09:03.000000000 +0200 -+++ xorg-server-1.12.2/hw/kdrive/linux/linux.c 2013-12-22 20:10:03.000000000 +0100 -@@ -66,8 +66,8 @@ static void - LinuxCheckChown(char *file) - { - struct stat st; -- __uid_t u; -- __gid_t g; -+ uid_t u; -+ gid_t g; - - if (stat(file, &st) < 0) - return; diff --git a/package/xorg-server/patches/patch-hw_xfree86_common_compiler_h b/package/xorg-server/patches/patch-hw_xfree86_common_compiler_h index 8a5f29ebd..3a0eb0dbb 100644 --- a/package/xorg-server/patches/patch-hw_xfree86_common_compiler_h +++ b/package/xorg-server/patches/patch-hw_xfree86_common_compiler_h @@ -1,58 +1,13 @@ ---- xorg-server-1.12.2.orig/hw/xfree86/common/compiler.h 2012-05-17 19:09:03.000000000 +0200 -+++ xorg-server-1.12.2/hw/xfree86/common/compiler.h 2013-04-30 10:52:21.000000000 +0200 -@@ -710,26 +710,26 @@ xf86WriteMmio32LeNB(__volatile__ void *b - #define PORT_SIZE short - #endif - --_X_EXPORT unsigned int IOPortBase; /* Memory mapped I/O port area */ -+_X_EXPORT volatile unsigned char *ioBase; /* Memory mapped I/O port area */ - - static __inline__ void - outb(unsigned PORT_SIZE port, unsigned char val) - { -- *(volatile unsigned char *) (((unsigned PORT_SIZE) (port)) + IOPortBase) = -+ *(volatile unsigned char *) (((unsigned PORT_SIZE) (port)) + ioBase) = - val; - } - - static __inline__ void - outw(unsigned PORT_SIZE port, unsigned short val) - { -- *(volatile unsigned short *) (((unsigned PORT_SIZE) (port)) + IOPortBase) = -+ *(volatile unsigned short *) (((unsigned PORT_SIZE) (port)) + ioBase) = - val; - } - - static __inline__ void - outl(unsigned PORT_SIZE port, unsigned int val) - { -- *(volatile unsigned int *) (((unsigned PORT_SIZE) (port)) + IOPortBase) = -+ *(volatile unsigned int *) (((unsigned PORT_SIZE) (port)) + ioBase) = - val; +from alpinelinux + +--- xorg-server-1.15.0.orig/hw/xfree86/common/compiler.h 2013-12-15 08:48:09.000000000 +0100 ++++ xorg-server-1.15.0/hw/xfree86/common/compiler.h 2014-03-14 23:25:52.000000000 +0100 +@@ -995,7 +995,7 @@ inl(unsigned short port) + return xf86ReadMmio32Le((void *) ioBase, port); } -@@ -737,21 +737,21 @@ static __inline__ unsigned int - inb(unsigned PORT_SIZE port) - { - return *(volatile unsigned char *) (((unsigned PORT_SIZE) (port)) + -- IOPortBase); -+ ioBase); - } - - static __inline__ unsigned int - inw(unsigned PORT_SIZE port) - { - return *(volatile unsigned short *) (((unsigned PORT_SIZE) (port)) + -- IOPortBase); -+ ioBase); - } - - static __inline__ unsigned int - inl(unsigned PORT_SIZE port) - { - return *(volatile unsigned int *) (((unsigned PORT_SIZE) (port)) + -- IOPortBase); -+ ioBase); - } +-#elif defined(__arm__) && defined(__linux__) ++#elif defined(__arm__) && defined(__GLIBC__) - #if defined(__mips__) + /* for Linux on ARM, we use the LIBC inx/outx routines */ + /* note that the appropriate setup via "ioperm" needs to be done */ diff --git a/package/xorg-server/patches/patch-hw_xfree86_dri_dri_h b/package/xorg-server/patches/patch-hw_xfree86_dri_dri_h deleted file mode 100644 index 0e3d1974a..000000000 --- a/package/xorg-server/patches/patch-hw_xfree86_dri_dri_h +++ /dev/null @@ -1,11 +0,0 @@ ---- xorg-server-1.7.5.orig/hw/xfree86/dri/dri.h 2009-08-11 06:00:23.000000000 +0200 -+++ xorg-server-1.7.5/hw/xfree86/dri/dri.h 2010-04-21 19:59:22.000000000 +0200 -@@ -38,7 +38,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN - #include <pciaccess.h> - - #include "scrnintstr.h" --#include "xf86dri.h" -+#include <X11/dri/xf86dri.h> - - typedef int DRISyncType; - diff --git a/package/xorg-server/patches/patch-hw_xfree86_dri_sarea_h b/package/xorg-server/patches/patch-hw_xfree86_dri_sarea_h deleted file mode 100644 index 6f45382eb..000000000 --- a/package/xorg-server/patches/patch-hw_xfree86_dri_sarea_h +++ /dev/null @@ -1,11 +0,0 @@ ---- xorg-server-1.12.2.orig/hw/xfree86/dri/sarea.h 2012-05-17 19:09:03.000000000 +0200 -+++ xorg-server-1.12.2/hw/xfree86/dri/sarea.h 2013-04-30 10:33:00.000000000 +0200 -@@ -41,6 +41,8 @@ - /* SAREA area needs to be at least a page */ - #if defined(__alpha__) - #define SAREA_MAX 0x2000 -+#elif defined(__mips__) -+#define SAREA_MAX 0x4000 - #elif defined(__ia64__) - #define SAREA_MAX 0x10000 /* 64kB */ - #else diff --git a/package/xorg-server/patches/patch-hw_xfree86_os-support_linux_lnx_init_c b/package/xorg-server/patches/patch-hw_xfree86_os-support_linux_lnx_init_c deleted file mode 100644 index fd8fcfced..000000000 --- a/package/xorg-server/patches/patch-hw_xfree86_os-support_linux_lnx_init_c +++ /dev/null @@ -1,13 +0,0 @@ ---- xorg-server-1.12.2.orig/hw/xfree86/os-support/linux/lnx_init.c 2012-05-17 19:09:03.000000000 +0200 -+++ xorg-server-1.12.2/hw/xfree86/os-support/linux/lnx_init.c 2013-04-30 10:33:00.000000000 +0200 -@@ -75,8 +75,8 @@ xf86OpenConsole(void) - struct vt_mode VT; - struct vt_stat vts; - MessageType from = X_PROBED; -- char *tty0[] = { "/dev/tty0", "/dev/vc/0", NULL }; -- char *vcs[] = { "/dev/vc/%d", "/dev/tty%d", NULL }; -+ char *tty0[] = { "/dev/tty0", NULL }; -+ char *vcs[] = { "/dev/tty%d", NULL }; - - if (serverGeneration == 1) { - diff --git a/package/xorg-server/patches/patch-hw_xfree86_os-support_linux_lnx_video_c b/package/xorg-server/patches/patch-hw_xfree86_os-support_linux_lnx_video_c deleted file mode 100644 index 4dbf01589..000000000 --- a/package/xorg-server/patches/patch-hw_xfree86_os-support_linux_lnx_video_c +++ /dev/null @@ -1,56 +0,0 @@ ---- xorg-server-1.12.2.orig/hw/xfree86/os-support/linux/lnx_video.c 2012-05-17 19:09:03.000000000 +0200 -+++ xorg-server-1.12.2/hw/xfree86/os-support/linux/lnx_video.c 2013-04-30 10:49:01.000000000 +0200 -@@ -472,7 +472,7 @@ unmapVidMem(int ScreenNum, pointer Base, - /* I/O Permissions section */ - /***************************************************************************/ - --#if defined(__powerpc__) -+#if defined(__powerpc__) || defined(__mips__) - volatile unsigned char *ioBase = NULL; - - #ifndef __NR_pciconfig_iobase -@@ -484,7 +484,7 @@ volatile unsigned char *ioBase = NULL; - Bool - xf86EnableIO(void) - { --#if defined(__powerpc__) -+#if defined(__powerpc__) || defined(__mips__) - int fd; - unsigned int ioBase_phys; - #endif -@@ -492,8 +492,12 @@ xf86EnableIO(void) - if (ExtendedEnabled) - return TRUE; - --#if defined(__powerpc__) -+#if defined(__powerpc__) || defined(__mips__) -+#ifdef __powerpc__ - ioBase_phys = syscall(__NR_pciconfig_iobase, 2, 0, 0); -+#else -+ ioBase_phys = 0x1fd00000; -+#endif - - fd = open("/dev/mem", O_RDWR); - if (ioBase == NULL) { -@@ -511,7 +515,7 @@ xf86EnableIO(void) - #endif - } - close(fd); --#elif !defined(__mc68000__) && !defined(__sparc__) && !defined(__mips__) && !defined(__sh__) && !defined(__hppa__) && !defined(__s390__) && !defined(__arm__) && !defined(__m32r__) && !defined(__nds32__) -+#elif !defined(__mc68000__) && !defined(__sparc__) && !defined(__sh__) && !defined(__hppa__) && !defined(__s390__) && !defined(__arm__) && !defined(__m32r__) && !defined(__nds32__) - if (ioperm(0, 1024, 1) || iopl(3)) { - if (errno == ENODEV) - ErrorF("xf86EnableIOPorts: no I/O ports found\n"); -@@ -537,10 +541,10 @@ xf86DisableIO(void) - { - if (!ExtendedEnabled) - return; --#if defined(__powerpc__) -+#if defined(__powerpc__) || defined(__mips__) - munmap(ioBase, 0x20000); - ioBase = NULL; --#elif !defined(__mc68000__) && !defined(__sparc__) && !defined(__mips__) && !defined(__sh__) && !defined(__hppa__) && !defined(__arm__) && !defined(__s390__) && !defined(__m32r__) && !defined(__nds32__) -+#elif !defined(__mc68000__) && !defined(__sparc__) && !defined(__sh__) && !defined(__hppa__) && !defined(__arm__) && !defined(__s390__) && !defined(__m32r__) && !defined(__nds32__) - iopl(0); - ioperm(0, 1024, 0); - #endif diff --git a/package/xorg-server/patches/patch-hw_xfree86_os-support_xf86_OSlib_h b/package/xorg-server/patches/patch-hw_xfree86_os-support_xf86_OSlib_h index cd1c5c15c..2fa3bed60 100644 --- a/package/xorg-server/patches/patch-hw_xfree86_os-support_xf86_OSlib_h +++ b/package/xorg-server/patches/patch-hw_xfree86_os-support_xf86_OSlib_h @@ -1,14 +1,16 @@ ---- xorg-server-1.12.2.orig/hw/xfree86/os-support/xf86_OSlib.h 2012-05-17 19:09:03.000000000 +0200 -+++ xorg-server-1.12.2/hw/xfree86/os-support/xf86_OSlib.h 2013-10-29 15:23:18.000000000 +0100 -@@ -178,11 +178,7 @@ +--- xorg-server-1.15.0.orig/hw/xfree86/os-support/xf86_OSlib.h 2013-12-15 08:48:09.000000000 +0100 ++++ xorg-server-1.15.0/hw/xfree86/os-support/xf86_OSlib.h 2014-03-14 22:59:25.000000000 +0100 +@@ -177,12 +177,8 @@ + #include <stdlib.h> #include <sys/types.h> #include <assert.h> - +- -#ifdef __linux__ -#include <termio.h> -#else /* __GLIBC__ */ #include <termios.h> -#endif ++ #ifdef __sparc__ #include <sys/param.h> #endif diff --git a/package/xorg-server/patches/patch-ltmain_sh b/package/xorg-server/patches/patch-ltmain_sh deleted file mode 100644 index eedadf67e..000000000 --- a/package/xorg-server/patches/patch-ltmain_sh +++ /dev/null @@ -1,11 +0,0 @@ ---- xorg-server-1.12.2.orig/ltmain.sh 2012-05-29 22:06:05.000000000 +0200 -+++ xorg-server-1.12.2/ltmain.sh 2013-04-30 10:33:00.000000000 +0200 -@@ -5853,7 +5853,7 @@ func_mode_link () - # -O*, -flto*, -fwhopr*, -fuse-linker-plugin GCC link-time optimization - -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \ - -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \ -- -O*|-flto*|-fwhopr*|-fuse-linker-plugin) -+ -O*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*) - func_quote_for_eval "$arg" - arg="$func_quote_for_eval_result" - func_append compile_command " $arg" diff --git a/package/xterm/Makefile b/package/xterm/Makefile index 10bfaf21a..6575fae60 100644 --- a/package/xterm/Makefile +++ b/package/xterm/Makefile @@ -4,9 +4,9 @@ include $(TOPDIR)/rules.mk PKG_NAME:= xterm -PKG_VERSION:= 297 -PKG_RELEASE:= 2 -PKG_MD5SUM:= 45610ae6fe90cf086fcd75b9cb97bbaf +PKG_VERSION:= 303 +PKG_RELEASE:= 1 +PKG_MD5SUM:= 48f6d49b2b6b6933d501d767cbed9254 PKG_DESCR:= Terminal Emulator for X Windows PKG_SECTION:= x11/apps PKG_DEPENDS:= libxaw libxt libncurses libxft fontconfig diff --git a/package/xtrans/Makefile b/package/xtrans/Makefile index fbbd16857..103ca9e7f 100644 --- a/package/xtrans/Makefile +++ b/package/xtrans/Makefile @@ -4,12 +4,12 @@ include $(TOPDIR)/rules.mk PKG_NAME:= xtrans -PKG_VERSION:= 1.2.6 +PKG_VERSION:= 1.3.3 PKG_RELEASE:= 1 PKG_DESCR:= X11 network protocol transport library PKG_SECTION:= devel PKG_BUILDDEP:= xtrans-host -PKG_MD5SUM:= b91dd22b77a350d129a81175cd8c58cc +PKG_MD5SUM:= c83d04cd878f1e51a44d132aa1d5b932 PKG_SITES:= ${MASTER_SITE_XORG} PKG_OPTS:= dev devonly diff --git a/package/xz/Makefile b/package/xz/Makefile index 1793f8eaf..ac68ff653 100644 --- a/package/xz/Makefile +++ b/package/xz/Makefile @@ -13,13 +13,18 @@ PKG_URL:= http://tukaani.org/xz/ PKG_SITES:= http://tukaani.org/xz/ PKG_OPTS:= dev +include ${TOPDIR}/mk/host.mk include ${TOPDIR}/mk/package.mk +$(eval $(call HOST_template,XZ,xz,${PKG_VERSION}-${PKG_RELEASE})) $(eval $(call PKG_template,XZ,xz,${PKG_VERSION}-${PKG_RELEASE},${PKG_DEPENDS},${PKG_DESCR},${PKG_SECTION},${PKG_OPTS})) +HOST_STYLE:= auto + xz-install: ${INSTALL_DIR} ${IDIR_XZ}/usr/bin ${IDIR_XZ}/usr/lib ${CP} ${WRKINST}/usr/bin/* ${IDIR_XZ}/usr/bin ${CP} ${WRKINST}/usr/lib/*.so* ${IDIR_XZ}/usr/lib +include ${TOPDIR}/mk/host-bottom.mk include ${TOPDIR}/mk/pkg-bottom.mk @@ -25,37 +25,37 @@ SET_DASHX:= : endif # Strip off the annoying quoting -ADK_TARGET_KERNEL:= $(strip $(subst ",, $(ADK_TARGET_KERNEL))) -ADK_TARGET_ARCH:= $(strip $(subst ",, $(ADK_TARGET_ARCH))) -ADK_TARGET_SYSTEM:= $(strip $(subst ",, $(ADK_TARGET_SYSTEM))) -ADK_TARGET_LIBC:= $(strip $(subst ",, $(ADK_TARGET_LIBC))) -ADK_TARGET_LIBC_PATH:= $(strip $(subst ",, $(ADK_TARGET_LIBC_PATH))) -ADK_TARGET_ENDIAN:= $(strip $(subst ",, $(ADK_TARGET_ENDIAN))) -ADK_TARGET_FLOAT:= $(strip $(subst ",, $(ADK_TARGET_FLOAT))) -ADK_TARGET_ARM_MODE:= $(strip $(subst ",, $(ADK_TARGET_ARM_MODE))) -ADK_TARGET_CPU_ARCH:= $(strip $(subst ",, $(ADK_TARGET_CPU_ARCH))) -ADK_TARGET_CFLAGS:= $(strip $(subst ",, $(ADK_TARGET_CFLAGS))) -ADK_TARGET_ABI_CFLAGS:= $(strip $(subst ",, $(ADK_TARGET_ABI_CFLAGS))) -ADK_TARGET_ABI_LDFLAGS:= $(strip $(subst ",, $(ADK_TARGET_ABI_LDFLAGS))) -ADK_TARGET_KERNEL_LDFLAGS:= $(strip $(subst ",, $(ADK_TARGET_KERNEL_LDFLAGS))) -ADK_TARGET_ABI:= $(strip $(subst ",, $(ADK_TARGET_ABI))) -ADK_TARGET_MIPS_ABI:= $(strip $(subst ",, $(ADK_TARGET_MIPS_ABI))) -ADK_TARGET_IP:= $(strip $(subst ",, $(ADK_TARGET_IP))) -ADK_TARGET_SUFFIX:= $(strip $(subst ",, $(ADK_TARGET_SUFFIX))) -ADK_TARGET_CMDLINE:= $(strip $(subst ",, $(ADK_TARGET_CMDLINE))) -ADK_QEMU_ARGS:= $(strip $(subst ",, $(ADK_QEMU_ARGS))) -ADK_RUNTIME_TMPFS_SIZE:= $(strip $(subst ",, $(ADK_RUNTIME_TMPFS_SIZE))) +ADK_TARGET_KERNEL:= $(strip $(subst ",, $(ADK_TARGET_KERNEL))) +ADK_TARGET_ARCH:= $(strip $(subst ",, $(ADK_TARGET_ARCH))) +ADK_TARGET_SYSTEM:= $(strip $(subst ",, $(ADK_TARGET_SYSTEM))) +ADK_TARGET_LIBC:= $(strip $(subst ",, $(ADK_TARGET_LIBC))) +ADK_TARGET_LIBC_PATH:= $(strip $(subst ",, $(ADK_TARGET_LIBC_PATH))) +ADK_TARGET_ENDIAN:= $(strip $(subst ",, $(ADK_TARGET_ENDIAN))) +ADK_TARGET_FLOAT:= $(strip $(subst ",, $(ADK_TARGET_FLOAT))) +ADK_TARGET_FPU:= $(strip $(subst ",, $(ADK_TARGET_FPU))) +ADK_TARGET_ARM_MODE:= $(strip $(subst ",, $(ADK_TARGET_ARM_MODE))) +ADK_TARGET_CPU_ARCH:= $(strip $(subst ",, $(ADK_TARGET_CPU_ARCH))) +ADK_TARGET_CFLAGS:= $(strip $(subst ",, $(ADK_TARGET_CFLAGS))) +ADK_TARGET_CFLAGS_OPT:= $(strip $(subst ",, $(ADK_TARGET_CFLAGS_OPT))) +ADK_TARGET_ABI_CFLAGS:= $(strip $(subst ",, $(ADK_TARGET_ABI_CFLAGS))) +ADK_TARGET_ABI:= $(strip $(subst ",, $(ADK_TARGET_ABI))) +ADK_TARGET_MIPS_ABI:= $(strip $(subst ",, $(ADK_TARGET_MIPS_ABI))) +ADK_TARGET_IP:= $(strip $(subst ",, $(ADK_TARGET_IP))) +ADK_TARGET_SUFFIX:= $(strip $(subst ",, $(ADK_TARGET_SUFFIX))) +ADK_TARGET_CMDLINE:= $(strip $(subst ",, $(ADK_TARGET_CMDLINE))) +ADK_QEMU_ARGS:= $(strip $(subst ",, $(ADK_QEMU_ARGS))) +ADK_RUNTIME_TMPFS_SIZE:= $(strip $(subst ",, $(ADK_RUNTIME_TMPFS_SIZE))) ADK_RUNTIME_CONSOLE_SERIAL_SPEED:= $(strip $(subst ",, $(ADK_RUNTIME_CONSOLE_SERIAL_SPEED))) -ADK_HOST:= $(strip $(subst ",, $(ADK_HOST))) -ADK_VENDOR:= $(strip $(subst ",, $(ADK_VENDOR))) -ADK_DL_DIR:= $(strip $(subst ",, $(ADK_DL_DIR))) -ADK_COMPRESSION_TOOL:= $(strip $(subst ",, $(ADK_COMPRESSION_TOOL))) -ADK_TOOLS_ADDPATTERN_ARGS:= $(strip $(subst ",, $(ADK_TOOLS_ADDPATTERN_ARGS))) -ADK_KERNEL_VERSION:= $(strip $(subst ",, $(ADK_KERNEL_VERSION))) +ADK_RUNTIME_CONSOLE_SERIAL_DEVICE:= $(strip $(subst ",, $(ADK_RUNTIME_CONSOLE_SERIAL_DEVICE))) +ADK_HOST:= $(strip $(subst ",, $(ADK_HOST))) +ADK_VENDOR:= $(strip $(subst ",, $(ADK_VENDOR))) +ADK_DL_DIR:= $(strip $(subst ",, $(ADK_DL_DIR))) +ADK_COMPRESSION_TOOL:= $(strip $(subst ",, $(ADK_COMPRESSION_TOOL))) +ADK_KERNEL_VERSION:= $(strip $(subst ",, $(ADK_KERNEL_VERSION))) ADK_PARAMETER_NETCONSOLE_SRC_IP:= $(strip $(subst ",, $(ADK_PARAMETER_NETCONSOLE_SRC_IP))) ADK_PARAMETER_NETCONSOLE_DST_IP:= $(strip $(subst ",, $(ADK_PARAMETER_NETCONSOLE_DST_IP))) -ADK_JFFS2_OPTS:= $(strip $(subst ",, $(ADK_JFFS2_OPTS))) -ADK_WGET_TIMEOUT:= $(strip $(subst ",, $(ADK_WGET_TIMEOUT))) +ADK_JFFS2_OPTS:= $(strip $(subst ",, $(ADK_JFFS2_OPTS))) +ADK_WGET_TIMEOUT:= $(strip $(subst ",, $(ADK_WGET_TIMEOUT))) ifeq ($(strip ${ADK_HAVE_DOT_CONFIG}),y) ifneq ($(strip $(wildcard $(TOPDIR)/target/$(ADK_TARGET_ARCH)/target.mk)),) diff --git a/scripts/adkprepare.sh b/scripts/adkprepare.sh index 08d1ee1a1..5b18d30e3 100755 --- a/scripts/adkprepare.sh +++ b/scripts/adkprepare.sh @@ -21,36 +21,28 @@ openbsd() { PKG_PATH="ftp://ftp.openbsd.org/pub/OpenBSD/${ver}/packages/${arch}/" export PKG_PATH pkg_add -v gmake - pkg_add -v git pkg_add -v bash pkg_add -v wget pkg_add -v gtar-- pkg_add -v gawk pkg_add -v gsed - pkg_add -v screen-- - pkg_add -v vim--no_x11 - pkg_add -v py-libxml } netbsd() { echo "Preparing NetBSD for OpenADK" PKG_PATH="ftp://ftp.netbsd.org/pub/pkgsrc/packages/NetBSD/${arch}/${ver}/All/" export PKG_PATH - pkg_add -vu scmgit pkg_add -vu gmake pkg_add -vu bash pkg_add -vu wget pkg_add -vu gtar pkg_add -vu gsed pkg_add -vu gawk - pkg_add -vu vim - pkg_add -vu screen - pkg_add -vu mksh } freebsd() { echo "Preparing FreeBSD for OpenADK" - pkg_add -r git gmake bash wget gtar gsed gawk screen mksh vim + pkg_add -r gmake bash wget gtar gsed gawk } case $os in diff --git a/scripts/find b/scripts/find deleted file mode 100755 index ea38d92fb..000000000 --- a/scripts/find +++ /dev/null @@ -1,9 +0,0 @@ -#!/usr/bin/env bash -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -if [ -z "$(which gfind 2>/dev/null)" ];then - /usr/bin/find "$@" -else - gfind "$@" -fi diff --git a/scripts/gcc-bisect.sh b/scripts/gcc-bisect.sh new file mode 100644 index 000000000..1da4dd5d6 --- /dev/null +++ b/scripts/gcc-bisect.sh @@ -0,0 +1,206 @@ +#!/bin/sh +rm -rf host_x86_64-linux-gnu target_sparc_glibc +rm -rf gcc-* +mkdir host_x86_64-linux-gnu +mkdir target_sparc_glibc + +tar xvf binutils-2.24.tar.bz2 +cd binutils-2.24 +./configure \ + --prefix=/home/wbx/smoke/host_x86_64-linux-gnu \ + --target=sparc-openadk-linux-gnu \ + --with-sysroot=/home/wbx/smoke/target_sparc_glibc \ + --disable-dependency-tracking \ + --disable-libtool-lock \ + --disable-nls \ + --disable-werror \ + --disable-plugins \ + --disable-libssp --disable-multilib +make -j4 all +make install +cd .. + +tar xvf gmp-5.1.3.tar.xz +cd gmp-5.1.3 +cp configfsf.guess config.guess +PATH="/home/wbx/smoke/host_x86_64-linux-gnu/usr/bin:$PATH" \ + ./configure \ + --prefix=/home/wbx/smoke/host_x86_64-linux-gnu \ + --with-pic \ + --disable-shared \ + --enable-static +make -j4 all +make install +cd .. + +tar xvf mpfr-3.1.2.tar.xz +cd mpfr-3.1.2 +./configure \ + --prefix=/home/wbx/smoke/host_x86_64-linux-gnu \ + --with-gmp-build=/home/wbx/smoke/gmp-5.1.3 \ + --disable-shared \ + --enable-static +make -j4 all +make install +cd .. + +tar xvf mpc-0.8.2.tar.gz +cd mpc-0.8.2 +./configure \ + --prefix=/home/wbx/smoke/host_x86_64-linux-gnu \ + --with-gmp=/home/wbx/smoke/host_x86_64-linux-gnu \ + --disable-shared \ + --enable-static +make -j4 all +make install +make install +cd .. + +tar xvf libelf-0.8.13.tar.gz +cd libelf-0.8.13 +./configure \ + --prefix=/home/wbx/smoke/host_x86_64-linux-gnu \ + --disable-nls \ + --disable-shared \ + --enable-static +make -j4 all +make install +cd .. + +rm -rf host_x86_64-linux-gnu/sparc-openadk-linux-gnu/{lib,sys-include} +cd host_x86_64-linux-gnu/sparc-openadk-linux-gnu/ +ln -sf ../../target_sparc_glibc/usr/include sys-include +ln -sf ../../target_sparc_glibc/lib lib +cd - + +mkdir gcc-minimal +cd gcc-minimal +CFLAGS="-O0 -g0" \ +CXXFLAGS="-O0 -g0" \ +PATH="/home/wbx/smoke/host_x86_64-linux-gnu/bin:$PATH" \ +../gcc/configure \ + --prefix=/home/wbx/smoke/host_x86_64-linux-gnu --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=sparc-openadk-linux-gnu --with-gmp=/home/wbx/smoke/host_x86_64-linux-gnu --with-mpfr=/home/wbx/smoke/host_x86_64-linux-gnu --with-libelf=/home/wbx/smoke/host_x86_64-linux-gnu --disable-__cxa_atexit --with-gnu-ld --with-gnu-as --enable-tls --disable-libsanitizer --disable-libitm --disable-libmudflap --disable-libgomp --disable-decimal-float --disable-libstdcxx-pch --disable-ppl-version-check --disable-cloog-version-check --without-system-zlib --without-ppl --without-cloog --without-isl --disable-nls --enable-target-optspace \ + --enable-languages=c \ + --disable-multilib \ + --disable-lto \ + --disable-libssp \ + --disable-shared \ + --without-headers +PATH="/home/wbx/smoke/host_x86_64-linux-gnu/bin:$PATH" make -j4 all-gcc +if [ $? -ne 0 ];then + echo failed + exit +fi +PATH="/home/wbx/smoke/host_x86_64-linux-gnu/bin:$PATH" make install-gcc +if [ $? -ne 0 ];then + echo failed + exit +fi +cd .. + +cd linux-3.13.6 +make V=1 ARCH=sparc CROSS_COMPILE="/home/wbx/smoke/host_x86_64-linux-gnu/bin/sparc-openadk-linux-gnu-" CC="/home/wbx/smoke/host_x86_64-linux-gnu/bin/sparc-openadk-linux-gnu-gcc" HOSTCC="cc" CONFIG_SHELL='/bin/bash' HOSTCFLAGS='-O2 -Wall' INSTALL_HDR_PATH=/home/wbx/smoke/target_sparc_glibc/usr headers_install +cd .. + +cd glibc-2.19-header +libc_cv_forced_unwind=yes \ +libc_cv_cc_with_libunwind=yes \ +libc_cv_c_cleanup=yes \ +libc_cv_gnu99_inline=yes \ +libc_cv_initfini_array=yes \ +PATH="/home/wbx/smoke/host_x86_64-linux-gnu/bin:$PATH" ../glibc-2.19/configure \ + --prefix=/home/wbx/smoke/target_sparc_glibc/usr \ + --with-sysroot=/home/wbx/smoke/target_sparc_glibc \ + --build=x86_64-linux-gnu --host=sparc-openadk-linux-gnu --with-headers=/home/wbx/smoke/target_sparc_glibc/usr/include --disable-sanity-checks --disable-nls --without-cvs --disable-profile --disable-debug --without-gd --disable-nscd --with-__thread --with-tls --enable-kernel="2.6.32" --enable-add-ons +PATH="/home/wbx/smoke/host_x86_64-linux-gnu/bin:$PATH" make cross-compiling=yes PARALLELMFLAGS="-j1" install-headers +if [ $? -ne 0 ];then + echo failed + exit +fi +cd .. +touch target_sparc_glibc/usr/include/gnu/stubs.h + +mkdir gcc-initial +cd gcc-initial +CFLAGS="-O0 -g0" \ +CXXFLAGS="-O0 -g0" \ +PATH="/home/wbx/smoke/host_x86_64-linux-gnu/bin:$PATH" ../gcc/configure \ + --prefix=/home/wbx/smoke/host_x86_64-linux-gnu --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=sparc-openadk-linux-gnu --with-gmp=/home/wbx/smoke/host_x86_64-linux-gnu --with-mpfr=/home/wbx/smoke/host_x86_64-linux-gnu --with-libelf=/home/wbx/smoke/host_x86_64-linux-gnu --disable-__cxa_atexit --with-gnu-ld --with-gnu-as --enable-tls --disable-libsanitizer --disable-libitm --disable-libmudflap --disable-libgomp --disable-decimal-float --disable-libstdcxx-pch --disable-ppl-version-check --disable-cloog-version-check --without-system-zlib --without-ppl --without-cloog --without-isl --disable-nls --enable-target-optspace \ + --disable-biarch --disable-multilib --enable-libssp --enable-lto \ + --enable-languages=c \ + --disable-shared \ + --disable-threads \ + --with-sysroot=/home/wbx/smoke/target_sparc_glibc +PATH="/home/wbx/smoke/host_x86_64-linux-gnu/bin:$PATH" make all-gcc +if [ $? -ne 0 ];then + echo failed + exit +fi +PATH="/home/wbx/smoke/host_x86_64-linux-gnu/bin:$PATH" make all-target-libgcc +if [ $? -ne 0 ];then + echo failed + exit +fi +PATH="/home/wbx/smoke/host_x86_64-linux-gnu/bin:$PATH" make install-gcc install-target-libgcc +if [ $? -ne 0 ];then + echo failed + exit +fi +cd .. + +cd glibc-2.19-final +PATH="/home/wbx/smoke/host_x86_64-linux-gnu/bin:$PATH" SHELL='/bin/bash' BUILD_CC=cc CFLAGS="-mcpu=v8 -fwrapv -fno-ident -fomit-frame-pointer -O2 -pipe -fno-unwind-tables -fno-asynchronous-unwind-tables -g3" CC="/home/wbx/smoke/host_x86_64-linux-gnu/bin/sparc-openadk-linux-gnu-gcc" CXX="/home/wbx/smoke/host_x86_64-linux-gnu/bin/sparc-openadk-linux-gnu-g++" AR="/home/wbx/smoke/host_x86_64-linux-gnu/bin/sparc-openadk-linux-gnu-ar" RANLIB="/home/wbx/smoke/host_x86_64-linux-gnu/bin/sparc-openadk-linux-gnu-ranlib" libc_cv_forced_unwind=yes libc_cv_cc_with_libunwind=yes libc_cv_c_cleanup=yes libc_cv_gnu99_inline=yes libc_cv_initfini_array=yes \ +../glibc-2.19/configure \ + --prefix=/usr \ + --enable-shared \ + --enable-stackguard-randomization \ + --build=x86_64-linux-gnu --host=sparc-openadk-linux-gnu --with-headers=/home/wbx/smoke/target_sparc_glibc/usr/include --disable-sanity-checks --disable-nls --without-cvs --disable-profile --disable-debug --without-gd --disable-nscd --with-__thread --with-tls --enable-kernel="2.6.32" --enable-add-ons +PATH="/home/wbx/smoke/host_x86_64-linux-gnu/bin:$PATH" make all +PATH="/home/wbx/smoke/host_x86_64-linux-gnu/bin:$PATH" make install_root=/home/wbx/smoke/target_sparc_glibc install +if [ $? -ne 0 ];then + echo failed + exit +fi +cd .. + +mkdir gcc-final +cd gcc-final +../gcc/configure \ + --prefix=/home/wbx/smoke/host_x86_64-linux-gnu --with-bugurl="http://www.openadk.org/" --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=sparc-openadk-linux-gnu --with-gmp=/home/wbx/smoke/host_x86_64-linux-gnu --with-mpfr=/home/wbx/smoke/host_x86_64-linux-gnu --with-libelf=/home/wbx/smoke/host_x86_64-linux-gnu --disable-__cxa_atexit --with-gnu-ld --with-gnu-as --enable-tls --disable-libsanitizer --disable-libitm --disable-libmudflap --disable-libgomp --disable-decimal-float --disable-libstdcxx-pch --disable-ppl-version-check --disable-cloog-version-check --without-system-zlib --without-ppl --without-cloog --without-isl --disable-nls --enable-target-optspace \ + --disable-biarch --disable-multilib --enable-libssp --enable-lto \ + --enable-languages=c,c++ \ + --with-build-sysroot='${prefix}/../target_sparc_glibc' \ + --with-sysroot='${prefix}/../target_sparc_glibc' \ + --enable-shared +make -j4 all +if [ $? -ne 0 ];then + echo failed + exit +fi +make install +if [ $? -ne 0 ];then + echo failed + exit +fi +cd .. + +cd linux-3.13.6/ +cat > mini.config <<EOF +CONFIG_SPARC=y +CONFIG_SPARC32=y +CONFIG_SBUS=y +CONFIG_SBUSCHAR=y +CONFIG_PCI=y +CONFIG_PCI_SYSCALL=y +CONFIG_PCIC_PCI=y +CONFIG_OF=y +CONFIG_NET_VENDOR_AMD=y +CONFIG_SUNLANCE=y +CONFIG_SERIAL_CONSOLE=y +CONFIG_SERIAL_SUNCORE=y +CONFIG_SERIAL_SUNZILOG=y +CONFIG_SERIAL_SUNZILOG_CONSOLE=y +EOF + +PATH="/home/wbx/smoke/host_x86_64-linux-gnu/bin:$PATH" make V=1 ARCH=sparc CROSS_COMPILE="/home/wbx/smoke/host_x86_64-linux-gnu/bin/sparc-openadk-linux-gnu-" CC="/home/wbx/smoke/host_x86_64-linux-gnu/bin/sparc-openadk-linux-gnu-gcc" HOSTCC="cc" CONFIG_SHELL='/bin/bash' HOSTCFLAGS='-O2 -Wall' KCONFIG_ALLCONFIG=mini.config allnoconfig +PATH="/home/wbx/smoke/host_x86_64-linux-gnu/bin:$PATH" make V=1 ARCH=sparc CROSS_COMPILE="/home/wbx/smoke/host_x86_64-linux-gnu/bin/sparc-openadk-linux-gnu-" CC="/home/wbx/smoke/host_x86_64-linux-gnu/bin/sparc-openadk-linux-gnu-gcc" HOSTCC="cc" CONFIG_SHELL='/bin/bash' HOSTCFLAGS='-O2 -Wall' -j4 zImage diff --git a/scripts/install.sh b/scripts/install.sh index ab4ac8635..7c93a12a3 100755 --- a/scripts/install.sh +++ b/scripts/install.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash #- -# Copyright © 2010, 2011 +# Copyright © 2010-2014 # Waldemar Brodkorb <wbx@openadk.org> # Thorsten Glaser <tg@mirbsd.org> # @@ -32,25 +32,14 @@ # • create a cfgfs partition TOPDIR=$(pwd) +HOST=$(gcc -dumpmachine) me=$0 case :$PATH: in -(*:$TOPDIR/bin/tools:*) ;; -(*) export PATH=$PATH:$TOPDIR/bin/tools ;; +(*:$TOPDIR/host_$HOST/usr/bin:*) ;; +(*) export PATH=$PATH:$TOPDIR/host_$HOST/usr/bin ;; esac -test -n "$KSH_VERSION" || if ! which mksh >/dev/null 2>&1; then - make package=mksh fetch || exit 1 - df=$(cd package/mksh; TOPDIR="$TOPDIR" gmake show=DISTFILES) - mkdir -p build_mksh - gzip -dc dl/"$df" | (cd build_mksh; cpio -mid) - cd build_mksh/mksh - bash Build.sh -r -c lto || exit 1 - cp mksh "$TOPDIR"/bin/tools/ - cd "$TOPDIR" - rm -rf build_mksh -fi - test -n "$KSH_VERSION" || exec mksh "$me" "$@" if test -z "$KSH_VERSION"; then echo >&2 Fatal error: could not run myself with mksh! diff --git a/scripts/rstrip.sh b/scripts/rstrip.sh index 46a4586da..66aba0e9b 100644 --- a/scripts/rstrip.sh +++ b/scripts/rstrip.sh @@ -54,6 +54,9 @@ find $TARGETS -type f -a -exec file {} \; | \ S='kernel module' ;; *ELF*shared\ object*,\ not\ stripped*) S='shared object' ;; + *current\ ar\ archive*) + S='static library' + T="$T -S" ;; *) continue ;; esac diff --git a/scripts/scan-tools.sh b/scripts/scan-tools.sh index c16aff609..16b13d4e3 100644 --- a/scripts/scan-tools.sh +++ b/scripts/scan-tools.sh @@ -196,18 +196,125 @@ if ! which perl >/dev/null 2>&1; then out=1 fi -if ! which xargs >/dev/null 2>&1; then - echo "You need xargs to continue." - echo - out=1 -fi - if ! which g++ >/dev/null 2>&1; then echo "You need g++ (GNU C++ compiler) to continue." echo out=1 fi +# always required, but can be provided by host +host_build_bc=0 +if ! which bc >/dev/null 2>&1; then + echo "No bc found, will build one." + host_build_bc=1 +fi + +host_build_bison=0 +if ! which bison >/dev/null 2>&1; then + echo "No bison found, will build one." + host_build_bison=1 +fi + +host_build_bzip2=0 +if ! which bzip2 >/dev/null 2>&1; then + echo "No bzip2 found, will build one." + host_build_bzip2=1 +fi + +host_build_file=0 +if ! which file >/dev/null 2>&1; then + echo "No file found, will build one." + host_build_file=1 +fi + +host_build_flex=0 +if ! which flex >/dev/null 2>&1; then + echo "No flex found, will build one." + host_build_m4=1 +fi + +host_build_m4=0 +if ! which m4 >/dev/null 2>&1; then + echo "No m4 found, will build one." + host_build_m4=1 +fi + +host_build_pkgconf=0 +if ! which pkgconf >/dev/null 2>&1; then + echo "No pkgconf found, will build one." + host_build_pkgconf=1 +fi + +host_build_findutils=0 +if ! which gxargs >/dev/null 2>&1; then + if which xargs >/dev/null 2>&1; then + if ! xargs --version 2>/dev/null|grep GNU >/dev/null;then + echo "No GNU xargs found, will build one." + host_build_findutils=1 + fi + fi +fi + +if ! which gfind >/dev/null 2>&1; then + if which find >/dev/null 2>&1; then + if ! find --version 2>/dev/null|grep GNU >/dev/null;then + echo "No GNU find found, will build one." + host_build_findutils=1 + fi + fi +fi + +host_build_xz=0 +if ! which xz >/dev/null 2>&1; then + echo "No xz found, will build one." + host_build_xz=1 +fi + +# optional +host_build_ccache=0 +if ! which ccache >/dev/null 2>&1; then + echo "No ccache found, will build one when required." + host_build_ccache=1 +fi + +host_build_genext2fs=0 +if ! which genext2fs >/dev/null 2>&1; then + echo "No genext2fs found, will build one when required." + host_build_genext2fs=1 +fi + +host_build_lzma=0 +if ! which lzma >/dev/null 2>&1; then + echo "No lzma found, will build one when required." + host_build_lzma=1 +fi + +host_build_lzop=0 +if ! which lzop >/dev/null 2>&1; then + echo "No lzop found, will build one when required." + host_build_lzop=1 +fi + + +echo "config ADK_HOST_BUILD_TOOLS" > $topdir/target/config/Config.in.prereq +printf "\t%s\n" "boolean" >> $topdir/target/config/Config.in.prereq +printf "\t%s\n" "default y" >> $topdir/target/config/Config.in.prereq +# always required +if [ $host_build_bc -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_BC" >> $topdir/target/config/Config.in.prereq ;fi +if [ $host_build_bison -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_BISON" >> $topdir/target/config/Config.in.prereq ;fi +if [ $host_build_bzip2 -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_BZIP2" >> $topdir/target/config/Config.in.prereq ;fi +if [ $host_build_file -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_FILE" >> $topdir/target/config/Config.in.prereq ;fi +if [ $host_build_flex -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_FLEX" >> $topdir/target/config/Config.in.prereq ;fi +if [ $host_build_m4 -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_M4" >> $topdir/target/config/Config.in.prereq ;fi +if [ $host_build_pkgconf -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_PKGCONF" >> $topdir/target/config/Config.in.prereq ;fi +if [ $host_build_findutils -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_FINDUTILS" >> $topdir/target/config/Config.in.prereq ;fi +if [ $host_build_xz -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_XZ" >> $topdir/target/config/Config.in.prereq ;fi +# optional +if [ $host_build_ccache -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_CCACHE if ADK_HOST_NEED_CCACHE" >> $topdir/target/config/Config.in.prereq ;fi +if [ $host_build_genext2fs -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_GENEXT2FS if ADK_HOST_NEED_GENEXT2FS" >> $topdir/target/config/Config.in.prereq ;fi +if [ $host_build_lzma -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_LZMA if ADK_HOST_NEED_LZMA" >> $topdir/target/config/Config.in.prereq ;fi +if [ $host_build_lzop -eq 1 ];then printf "\t%s\n" "select ADK_HOST_BUILD_LZOP if ADK_HOST_NEED_LZOP" >> $topdir/target/config/Config.in.prereq ;fi + cd $topdir rm -rf tmp diff --git a/scripts/tarpkg b/scripts/tarpkg index 37c0b2079..40342d401 100755 --- a/scripts/tarpkg +++ b/scripts/tarpkg @@ -16,14 +16,14 @@ if [ "$1" = "build" ];then chmod +x ${2}/usr/lib/pkg/${pkgname}.$file ) done rm -rf $2/CONTROL - (cd $2 && tar -czf $3/${pkgname}_${version}_${arch}.tar.gz .) + (cd $2 && tar -cJf $3/${pkgname}_${version}_${arch}.tar.xz .) elif [ "$1" = "install" ];then pkg=$(echo $(basename $2)|sed -e "s#_.*##") if [ -x ${PKG_INSTROOT}/usr/lib/pkg/${pkg}.preinst ]; then IPKG_INSTROOT="$PKG_INSTROOT" ${PKG_INSTROOT}/usr/lib/pkg/${pkg}.preinst rm ${PKG_INSTROOT}/usr/lib/pkg/${pkg}.preinst fi - tar -xzpf $2 -C ${PKG_INSTROOT} + tar -xJpf $2 -C ${PKG_INSTROOT} if [ -x ${PKG_INSTROOT}/usr/lib/pkg/${pkg}.postinst ]; then IPKG_INSTROOT="$PKG_INSTROOT" ${PKG_INSTROOT}/usr/lib/pkg/${pkg}.postinst rm ${PKG_INSTROOT}/usr/lib/pkg/${pkg}.postinst diff --git a/scripts/xargs b/scripts/xargs deleted file mode 100755 index cbe9bd015..000000000 --- a/scripts/xargs +++ /dev/null @@ -1,9 +0,0 @@ -#!/usr/bin/env bash -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -if [ -z "$(which gxargs 2>/dev/null)" ];then - /usr/bin/xargs "$@" -else - gxargs "$@" -fi diff --git a/target/Makefile b/target/Makefile index fc3fd77f6..313a616a1 100644 --- a/target/Makefile +++ b/target/Makefile @@ -6,12 +6,6 @@ include $(TOPDIR)/mk/rootfs.mk all: install -ifeq (${ADK_TARGET_KERNEL64},y) -KERNEL_CFG:=kernel64.config -else -KERNEL_CFG:=kernel.config -endif - ### Kernel .config Creation # The following target combines all kernel-related variables and # config files into a single one to be used as the final kernel @@ -22,21 +16,19 @@ endif # .kernelconfig.modules and set them to "m" # 2) fetch all enabled ADK_KERNEL_* vars into # .kernelconfig.kernel (no conversion, as they are booleans) -# 3) repeat 2) for the disabled ones and save them into -# .kernelconfig.nokernel (to overwrite defaults) -# 4) get the device-specific static kernel config and place it into +# 3) get the global and device-specific static kernel config and place it into # .kernelconfig.board -# 5) prepare for merging: +# 4) prepare for merging: # * if a variable is disabled in .kernelconfig.board and # enabled in either of .kernelconfig.{modules,kernel}, # remove it from .kernelconfig.board # * append ${FS_CMDLINE} to the kernel commandline inside # .kernelconfig.board -# 6) merge (cat) it all together into .kernelconfig.tmp -# 7) check if .kernelconfig.tmp differs from the current one +# 5) merge (cat) it all together into .kernelconfig.tmp +# 6) check if .kernelconfig.tmp differs from the current one # (.kernelconfig) at all, overwriting the current one # only if it does (so the timestamp stays intact) -# 8) remove the temporary .kernelconfig.tmp +# 7) remove the temporary .kernelconfig.tmp ### ADK_PACKAGE_CRYPTINIT_ROOT:=$(strip $(subst ",, $(ADK_PACKAGE_CRYPTINIT_ROOT))) ADK_PACKAGE_CRYPTINIT_SWAP:=$(strip $(subst ",, $(ADK_PACKAGE_CRYPTINIT_SWAP))) @@ -50,9 +42,6 @@ config-prepare: $(TOPDIR)/.config sed 's/=y/=m/' >>${BUILD_DIR}/.kernelconfig.modules @sed -n '/^ADK_KERNEL/s//CONFIG/p' ${TOPDIR}/.config \ >${BUILD_DIR}/.kernelconfig.kernel - @sed -n '/^# ADK_KERNEL/s//# CONFIG/p' ${TOPDIR}/.config \ - >${BUILD_DIR}/.kernelconfig.nokernel -ifeq ($(ADK_USE_KERNEL_MINICONFIG),y) @if [ -f ${ADK_TARGET_ARCH}/kernel/${ADK_TARGET_KERNEL_MINICONFIG} ];then \ cat ${TOPDIR}/target/linux/kernel.config \ ${ADK_TARGET_ARCH}/kernel/${ADK_TARGET_KERNEL_MINICONFIG} > ${BUILD_DIR}/.kernelconfig.board; \ @@ -60,23 +49,22 @@ ifeq ($(ADK_USE_KERNEL_MINICONFIG),y) echo "no miniconfig found for target system"; \ exit 1; \ fi -else - @if [ -f ${ADK_TARGET_ARCH}/${KERNEL_CFG}.$(ADK_TARGET_SYSTEM) ];then \ - cp ${ADK_TARGET_ARCH}/${KERNEL_CFG}.$(ADK_TARGET_SYSTEM) ${BUILD_DIR}/.kernelconfig.board; \ - else \ - cp ${ADK_TARGET_ARCH}/${KERNEL_CFG} ${BUILD_DIR}/.kernelconfig.board; \ - fi -endif @(cat ${BUILD_DIR}/.kernelconfig.{modules,kernel} | \ while IFS='=' read symbol value; do \ sed -i -e "/^# $$symbol/d" ${BUILD_DIR}/.kernelconfig.board; \ done;) + @sed -i -e 's#^\(CONFIG_.*CMDLINE="\)\(.*\)"#\1\2 ro"#' \ + ${BUILD_DIR}/.kernelconfig.board @sed -i -e 's#^\(CONFIG_.*CMDLINE="\)\(.*\)"#\1\2 ${FS_CMDLINE}"#' \ ${BUILD_DIR}/.kernelconfig.board ifneq ($(ADK_TARGET_CMDLINE),) @sed -i -e 's#^\(CONFIG_.*CMDLINE="\)\(.*\)"#\1\2 ${ADK_TARGET_CMDLINE}"#' \ ${BUILD_DIR}/.kernelconfig.board endif +ifeq ($(ADK_TARGET_QEMU_WITH_GRAPHIC),y) + @sed -i -e 's#^\(CONFIG_.*CMDLINE="\)\(.*\)"#\1\2 console=tty0"#' \ + ${BUILD_DIR}/.kernelconfig.board +endif ifneq ($(ADK_PACKAGE_CRYPTINIT_ROOT),) @sed -i -e 's#^\(CONFIG_.*CMDLINE="\)\(.*\)"#\1\2 ${ADK_PACKAGE_CMDLINE}"#' \ ${BUILD_DIR}/.kernelconfig.board @@ -93,7 +81,7 @@ ifeq ($(ADK_KERNEL_NETCONSOLE),y) @sed -i -e 's#^\(CONFIG_.*CMDLINE="\)\(.*\)"#\1\2 netconsole=@$(ADK_PARAMETER_NETCONSOLE_SRC_IP)/,@$(ADK_PARAMETER_NETCONSOLE_DST_IP)/"#' \ ${BUILD_DIR}/.kernelconfig.board endif - @cd ${BUILD_DIR} && cat .kernelconfig.board .kernelconfig.nokernel \ + @cd ${BUILD_DIR} && cat .kernelconfig.board \ .kernelconfig.kernel .kernelconfig.modules \ >.kernelconfig.tmp @cd ${BUILD_DIR} && cmp -s .kernelconfig.tmp .kernelconfig || \ @@ -101,10 +89,12 @@ endif @-rm -f ${BUILD_DIR}/.kernelconfig.tmp else config-prepare: $(TOPDIR)/.config - if [ -f ${ADK_TARGET_ARCH}/${KERNEL_CFG}.$(ADK_TARGET_SYSTEM) ];then \ - cp ${ADK_TARGET_ARCH}/${KERNEL_CFG}.$(ADK_TARGET_SYSTEM) ${BUILD_DIR}/.kernelconfig.board; \ + @if [ -f ${ADK_TARGET_ARCH}/kernel/${ADK_TARGET_KERNEL_MINICONFIG} ];then \ + cat ${TOPDIR}/target/linux/kernel.config \ + ${ADK_TARGET_ARCH}/kernel/${ADK_TARGET_KERNEL_MINICONFIG} > ${BUILD_DIR}/.kernelconfig.board; \ else \ - cp ${ADK_TARGET_ARCH}/${KERNEL_CFG} ${BUILD_DIR}/.kernelconfig.board; \ + echo "no miniconfig found for target system"; \ + exit 1; \ fi endif diff --git a/target/arm/Makefile b/target/arm/Makefile index e2194f1d3..a2bd23a8b 100644 --- a/target/arm/Makefile +++ b/target/arm/Makefile @@ -61,7 +61,7 @@ ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI),y) @echo "Use following command to install it on SD card:" @echo "sudo ./scripts/install-rpi.sh /dev/sdb $(FW_DIR)/$(ROOTFSTARBALL)" endif -ifeq ($(ADK_TARGET_SYSTEM_QEMU_ARM),y) +ifeq ($(ADK_TARGET_SYSTEM_QEMU_ARM)$(ADK_TARGET_SYSTEM_QEMU_ARMHF),y) @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' @echo "Use following command to create a QEMU Image:" @@ -70,12 +70,18 @@ ifeq ($(ADK_TARGET_SYSTEM_QEMU_ARM),y) @echo 'qemu-system-arm -M $(MACH) -nographic $(NET) -kernel $(FW_DIR)/$(TARGET_KERNEL) -hda qemu-${CPU_ARCH}.img' endif endif +ifeq ($(ADK_TARGET_FS),initramfsarchive) +imageinstall: $(FW_DIR)/$(ROOTFSUSERTARBALL) + @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)" +endif ifeq ($(ADK_TARGET_FS),initramfs) imageinstall: $(FW_DIR)/$(INITRAMFS) @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' @echo 'The initramfs image is: ${FW_DIR}/${INITRAMFS}' -ifeq ($(ADK_TARGET_SYSTEM_QEMU_ARM),y) +ifeq ($(ADK_TARGET_SYSTEM_QEMU_ARM)$(ADK_TARGET_SYSTEM_QEMU_ARMHF),y) ifeq ($(ADK_TARGET_QEMU_WITH_VIRTIO),y) @echo 'qemu-system-arm -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL) -drive file=qemu-${CPU_ARCH}.img,if=virtio,index=0 -net nic,model=virtio -net user' else @@ -88,7 +94,7 @@ ifeq ($(ADK_TARGET_FS),initramfs-piggyback) imageinstall: createinitramfs @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) @echo 'The kernel+initramfs file is: $(FW_DIR)/${TARGET_KERNEL}' -ifeq ($(ADK_TARGET_SYSTEM_QEMU_ARM),y) +ifeq ($(ADK_TARGET_SYSTEM_QEMU_ARM)$(ADK_TARGET_SYSTEM_QEMU_ARMHF),y) @echo "Start qemu with following command line:" @echo 'qemu-system-arm -M $(MACH) -nographic $(NET) -kernel $(FW_DIR)/$(TARGET_KERNEL)' endif diff --git a/target/arm/cubox-i/patches/3.10.33/solidrun-cubox-i.patch b/target/arm/cubox-i/patches/3.10.34/solidrun-cubox-i.patch index beaa71b4e..beaa71b4e 100644 --- a/target/arm/cubox-i/patches/3.10.33/solidrun-cubox-i.patch +++ b/target/arm/cubox-i/patches/3.10.34/solidrun-cubox-i.patch diff --git a/target/arm/kernel/cubox-i b/target/arm/kernel/cubox-i index 9843ee37e..10e5e1a73 100644 --- a/target/arm/kernel/cubox-i +++ b/target/arm/kernel/cubox-i @@ -26,11 +26,9 @@ CONFIG_MMC_SDHCI=y CONFIG_MMC_SDHCI_IO_ACCESSORS=y CONFIG_MMC_SDHCI_PLTFM=y CONFIG_MMC_SDHCI_ESDHC_IMX=y -CONFIG_NETDEVICES=y CONFIG_MII=y CONFIG_PHYLIB=y CONFIG_MICREL_PHY=y -CONFIG_NET_ETHERNET=y CONFIG_SMSC911X=y CONFIG_SERIAL_IMX=y CONFIG_SERIAL_IMX_CONSOLE=y diff --git a/target/arm/kernel/qemu-arm-versatilepb b/target/arm/kernel/qemu-arm-versatilepb index ead723621..ec76019d4 100644 --- a/target/arm/kernel/qemu-arm-versatilepb +++ b/target/arm/kernel/qemu-arm-versatilepb @@ -1,3 +1,4 @@ +CONFIG_ARM=y CONFIG_ARM_PATCH_PHYS_VIRT=y CONFIG_ARCH_VERSATILE=y CONFIG_ARCH_VERSATILE_PB=y @@ -6,6 +7,7 @@ CONFIG_PLAT_VERSATILE_CLCD=y CONFIG_PLAT_VERSATILE_SCHED_CLOCK=y CONFIG_PLAT_VERSATILE=y CONFIG_ARM_TIMER_SP804=y +CONFIG_KUSER_HELPERS=y CONFIG_CPU_ARM926T=y CONFIG_CPU_32v5=y CONFIG_ARM_AMBA=y @@ -16,21 +18,7 @@ CONFIG_USE_OF=y CONFIG_ATAGS=y CONFIG_DTC=y CONFIG_OF=y -CONFIG_SCSI=y -CONFIG_SCSI_DMA=y -CONFIG_SCSI_PROC_FS=y -CONFIG_BLK_DEV_SD=y -CONFIG_SCSI_SPI_ATTRS=y -CONFIG_SCSI_LOWLEVEL=y -CONFIG_SCSI_SYM53C8XX_2=y -CONFIG_SCSI_SYM53C8XX_DMA_ADDRESSING_MODE=1 -CONFIG_SCSI_SYM53C8XX_DEFAULT_TAGS=16 -CONFIG_SCSI_SYM53C8XX_MAX_TAGS=64 -CONFIG_SCSI_SYM53C8XX_MMIO=y -CONFIG_NETDEVICES=y CONFIG_MII=y -CONFIG_NET_CORE=y -CONFIG_ETHERNET=y CONFIG_NET_VENDOR_SMSC=y CONFIG_SMC91X=y CONFIG_SERIAL_AMBA_PL011=y diff --git a/target/arm/kernel/qemu-arm-vexpress-a9 b/target/arm/kernel/qemu-arm-vexpress-a9 index b6535116a..b89b87337 100644 --- a/target/arm/kernel/qemu-arm-vexpress-a9 +++ b/target/arm/kernel/qemu-arm-vexpress-a9 @@ -6,6 +6,7 @@ CONFIG_ARCH_VEXPRESS_CORTEX_A5_A9_ERRATA=y CONFIG_ARCH_VEXPRESS_CA9X4=y CONFIG_ARCH_VEXPRESS_DCSCB=y CONFIG_ARCH_VEXPRESS_TC2_PM=y +CONFIG_KUSER_HELPERS=y CONFIG_ARM_AMBA=y CONFIG_AEABI=y CONFIG_ATAGS=y @@ -14,9 +15,6 @@ CONFIG_VFPv3=y CONFIG_NEON=y CONFIG_OF=y CONFIG_DTC=y -CONFIG_NETDEVICES=y -CONFIG_NET_CORE=y -CONFIG_ETHERNET=y CONFIG_NET_VENDOR_SMSC=y CONFIG_SMSC911X=y CONFIG_SERIAL_AMBA_PL011=y diff --git a/target/arm/raspberry-pi/patches/3.10.33/raspberry-pi.patch b/target/arm/raspberry-pi/patches/3.10.34/raspberry-pi.patch index 2c313a843..2c313a843 100644 --- a/target/arm/raspberry-pi/patches/3.10.33/raspberry-pi.patch +++ b/target/arm/raspberry-pi/patches/3.10.34/raspberry-pi.patch diff --git a/target/arm/sys-available/acmesystems-foxg20 b/target/arm/sys-available/acmesystems-foxg20 index b907d39c8..ac2ec191c 100644 --- a/target/arm/sys-available/acmesystems-foxg20 +++ b/target/arm/sys-available/acmesystems-foxg20 @@ -5,13 +5,8 @@ config ADK_TARGET_SYSTEM_ACMESYSTEMS_FOXG20 select ADK_soft_float select ADK_eabi select ADK_acmesystems_foxg20 - select ADK_KERNEL_ARCH_AT91 - select ADK_KERNEL_ARCH_AT91SAM9260 - select ADK_KERNEL_ARCH_AT91SAM9G20 - select ADK_KERNEL_MACH_ACMENETUSFOXG20 select ADK_KERNEL_AEABI select ADK_TARGET_WITH_WATCHDOG - select ADK_TARGET_WITH_MMC select ADK_TARGET_WITH_RTC select ADK_TARGET_WITH_USB select ADK_TARGET_KERNEL_IMAGE diff --git a/target/arm/sys-available/cubox-i b/target/arm/sys-available/cubox-i index 3ee6bb8cd..3b96514c8 100644 --- a/target/arm/sys-available/cubox-i +++ b/target/arm/sys-available/cubox-i @@ -4,15 +4,15 @@ config ADK_TARGET_SYSTEM_CUBOX_I select ADK_little select ADK_hard_float select ADK_eabihf + select ADK_fpu_neon select ADK_cubox_i select ADK_CPU_CORTEX_A9 - select ADK_TARGET_WITH_MMC select ADK_TARGET_WITH_VGA select ADK_TARGET_WITH_USB select ADK_TARGET_WITH_INPUT select ADK_TARGET_KERNEL_ZIMAGE + select ADK_TARGET_WITH_ROOT_RW select ADK_PACKAGE_U_BOOT_CUBOX_I - select ADK_USE_KERNEL_MINICONFIG help Cubox-i diff --git a/target/arm/sys-available/qemu-arm b/target/arm/sys-available/qemu-arm index 4b99f7f0e..1fa057c4b 100644 --- a/target/arm/sys-available/qemu-arm +++ b/target/arm/sys-available/qemu-arm @@ -3,8 +3,9 @@ config ADK_TARGET_SYSTEM_QEMU_ARM select ADK_arm select ADK_qemu_arm select ADK_little + select ADK_soft_float + select ADK_eabi select ADK_HARDWARE_QEMU select ADK_TARGET_KERNEL_ZIMAGE - select ADK_USE_KERNEL_MINICONFIG help Support for Qemu Emulator (arm). diff --git a/target/arm/sys-available/qemu-armhf b/target/arm/sys-available/qemu-armhf new file mode 100644 index 000000000..dab039931 --- /dev/null +++ b/target/arm/sys-available/qemu-armhf @@ -0,0 +1,12 @@ +config ADK_TARGET_SYSTEM_QEMU_ARMHF + bool "Qemu Emulator (hard-float)" + select ADK_arm + select ADK_qemu_armhf + select ADK_little + select ADK_hard_float + select ADK_eabihf + select ADK_fpu_vfp + select ADK_HARDWARE_QEMU + select ADK_TARGET_KERNEL_ZIMAGE + help + Support for Qemu Emulator (armhf). diff --git a/target/arm/sys-available/raspberry-pi b/target/arm/sys-available/raspberry-pi index 3c0f2ad30..319df3523 100644 --- a/target/arm/sys-available/raspberry-pi +++ b/target/arm/sys-available/raspberry-pi @@ -4,15 +4,15 @@ config ADK_TARGET_SYSTEM_RASPBERRY_PI select ADK_little select ADK_hard_float select ADK_eabihf + select ADK_fpu_vfp select ADK_raspberry_pi select ADK_CPU_ARM1176JZF_S - select ADK_TARGET_WITH_MMC select ADK_TARGET_WITH_VGA select ADK_TARGET_WITH_USB select ADK_TARGET_WITH_INPUT select ADK_PACKAGE_BCM2835_BOOTLOADER + select ADK_TARGET_WITH_ROOT_RW select ADK_TARGET_KERNEL_ZIMAGE - select ADK_USE_KERNEL_MINICONFIG help Raspberry PI diff --git a/target/arm/sys-available/sharp-zaurus b/target/arm/sys-available/sharp-zaurus index a58401cf3..563866960 100644 --- a/target/arm/sys-available/sharp-zaurus +++ b/target/arm/sys-available/sharp-zaurus @@ -12,6 +12,5 @@ config ADK_TARGET_SYSTEM_SHARP_ZAURUS select ADK_TARGET_WITH_SOUND select ADK_TARGET_WITH_TOUCHSCREEN select ADK_TARGET_KERNEL_ZIMAGE - select ADK_USE_KERNEL_MINICONFIG help Support for Sharp Zaurus CL3200 (Terrier) diff --git a/target/arm/sys-available/toolchain-arm b/target/arm/sys-available/toolchain-arm index c6bb00b43..b9ba30aa5 100644 --- a/target/arm/sys-available/toolchain-arm +++ b/target/arm/sys-available/toolchain-arm @@ -4,8 +4,10 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_ARM select ADK_toolchain_arm select ADK_little select ADK_soft_float + select ADK_fpu_vfp select ADK_eabi select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ + select ADK_CPU_CORTEX_A9 help - ARM toolchain (soft float). + ARM toolchain (soft float) for Cortex A9. diff --git a/target/arm/sys-available/toolchain-armhf b/target/arm/sys-available/toolchain-armhf index 89383f44f..252a41aa2 100644 --- a/target/arm/sys-available/toolchain-armhf +++ b/target/arm/sys-available/toolchain-armhf @@ -4,9 +4,11 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_ARMHF select ADK_little select ADK_hard_float select ADK_eabihf + select ADK_fpu_vfp select ADK_toolchain_armhf select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ + select ADK_CPU_CORTEX_A9 help - ARM toolchain (hard float). + ARM toolchain (hard float) for Cortex A9. diff --git a/target/arm/target.mk b/target/arm/target.mk index 677e112f7..87db1e279 100644 --- a/target/arm/target.mk +++ b/target/arm/target.mk @@ -1,5 +1,4 @@ include $(TOPDIR)/mk/kernel-ver.mk ARCH:= arm CPU_ARCH:= $(ADK_TARGET_CPU_ARCH) -TARGET_OPTIMIZATION:= -Os -pipe TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS) diff --git a/target/config/Config.in b/target/config/Config.in index 3de5e3a23..4c3112275 100644 --- a/target/config/Config.in +++ b/target/config/Config.in @@ -37,6 +37,12 @@ config ADK_soft_float config ADK_hard_float boolean +config ADK_fpu_neon + boolean + +config ADK_fpu_vfp + boolean + config ADK_mode_arm boolean @@ -48,6 +54,11 @@ config ADK_TARGET_FLOAT default "hard" if ADK_hard_float default "soft" if ADK_soft_float +config ADK_TARGET_FPU + string + default "vfp" if ADK_fpu_vfp + default "neon" if ADK_fpu_neon + config ADK_TARGET_ARM_MODE depends on ADK_LINUX_ARM string @@ -73,7 +84,7 @@ source "target/config/Config.in.system" config ADK_LINUX_MIPS64 boolean - default y if ADK_LINUX_MIPS && ADK_TARGET_KERNEL64 + default y if ADK_LINUX_MIPS && ADK_LINUX_64 choice prompt "Toolchain options" @@ -86,21 +97,6 @@ config ADK_TOOLCHAIN_ARCHIVE endchoice -choice -prompt "Target Kernel" -depends on ADK_TARGET_SYSTEM_LEMOTE_YEELONG \ - || ADK_TARGET_SYSTEM_QEMU_MIPS64 \ - || ADK_TARGET_SYSTEM_QEMU_MIPS64EL \ - || ADK_LINUX_X86_64 - -config ADK_TARGET_KERNEL64 - boolean "64 Bit Kernel" - -config ADK_TARGET_KERNEL32 - boolean "32 Bit Kernel" - -endchoice - config ADK_32 boolean @@ -143,7 +139,7 @@ config ADK_TARGET_MIPS_ABI choice prompt "Target ABI" -depends on ADK_TARGET_KERNEL64 && ADK_LINUX_MIPS && !ADK_TOOLCHAIN +depends on ADK_LINUX_64 && ADK_LINUX_MIPS && !ADK_TOOLCHAIN && !ADK_HARDWARE_QEMU config ADK_TARGET_ABI_N32 boolean "N32 ABI (new)" @@ -161,7 +157,7 @@ endchoice choice prompt "Target ABI" -depends on ADK_TARGET_KERNEL64 && ADK_LINUX_X86_64 && !ADK_TOOLCHAIN +depends on ADK_LINUX_64 && ADK_LINUX_X86_64 && !ADK_TOOLCHAIN && !ADK_HARDWARE_QEMU config ADK_TARGET_ABI_64 boolean "64 Bit ABI" @@ -179,6 +175,7 @@ endchoice config ADK_TARGET_LIBC_PATH string + default "lib" if ADK_32 default "lib32" if ADK_n32 default "libx32" if ADK_x32 default "lib64" if ADK_n64 \ @@ -188,9 +185,6 @@ config ADK_TARGET_LIBC_PATH || ADK_LINUX_X86_64 default "lib" - -# submodel support - config ADK_TARGET_KERNEL_MINICONFIG string default "qemu-microblaze-s3adsp1800" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800 @@ -200,8 +194,8 @@ config ADK_TARGET_KERNEL_MINICONFIG default "qemu-arm-spitz" if ADK_TARGET_QEMU_ARM_MODEL_SPITZ default "qemu-mips" if ADK_TARGET_SYSTEM_QEMU_MIPS default "qemu-mipsel" if ADK_TARGET_SYSTEM_QEMU_MIPSEL - default "qemu-mips64" if ADK_TARGET_SYSTEM_QEMU_MIPS64 - default "qemu-mips64el" if ADK_TARGET_SYSTEM_QEMU_MIPS64EL + default "qemu-mips64" if ADK_TARGET_SYSTEM_QEMU_MIPS64 || ADK_TARGET_SYSTEM_QEMU_MIPS64N32 || ADK_TARGET_SYSTEM_QEMU_MIPS64N64 + default "qemu-mips64el" if ADK_TARGET_SYSTEM_QEMU_MIPS64EL || ADK_TARGET_SYSTEM_QEMU_MIPS64ELN32 || ADK_TARGET_SYSTEM_QEMU_MIPS64ELN64 default "qemu-ppc" if ADK_TARGET_SYSTEM_QEMU_PPC default "qemu-ppc64" if ADK_TARGET_SYSTEM_QEMU_PPC64 default "qemu-sh" if ADK_TARGET_SYSTEM_QEMU_SH4 @@ -209,7 +203,9 @@ config ADK_TARGET_KERNEL_MINICONFIG default "qemu-sparc" if ADK_TARGET_SYSTEM_QEMU_SPARC default "qemu-sparc64" if ADK_TARGET_SYSTEM_QEMU_SPARC64 default "qemu-i686" if ADK_TARGET_SYSTEM_QEMU_I686 - default "qemu-x86_64" if ADK_TARGET_SYSTEM_QEMU_X86_64 + default "qemu-x86_64" if ADK_TARGET_SYSTEM_QEMU_X86_64 || ADK_TARGET_SYSTEM_QEMU_X86_64_32 || ADK_TARGET_SYSTEM_QEMU_X86_64_X32 + default "aranym-m68k" if ADK_TARGET_SYSTEM_ARANYM_M68K + default "ibm-x40" if ADK_TARGET_SYSTEM_IBM_X40 default "cubox-i" if ADK_TARGET_SYSTEM_CUBOX_I default "raspberry-pi" if ADK_TARGET_SYSTEM_RASPBERRY_PI default "sharp-zaurus" if ADK_TARGET_SYSTEM_SHARP_ZAURUS @@ -220,6 +216,66 @@ config ADK_QEMU_ARGS default "-nographic" if ADK_TARGET_QEMU_WITHOUT_GRAPHIC choice +prompt "Qemu MICROBLAZE Emulation" +depends on ADK_TARGET_SYSTEM_QEMU_MICROBLAZE || ADK_TARGET_SYSTEM_QEMU_MICROBLAZEEL + +config ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800 + boolean "Xilinx Spartan S3ADSP1800" + +config ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605 + boolean "Xilinx ml605" + +endchoice + +choice +prompt "Qemu ARM Emulation" +depends on ADK_TARGET_SYSTEM_QEMU_ARM || ADK_TARGET_SYSTEM_QEMU_ARMHF + +config ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9 + boolean "ARM Ltd. Versatile Express for Cortex-A9" + select ADK_CPU_CORTEX_A9 + +config ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB + boolean "ARM Ltd. Versatile/PB" + select ADK_soft_float + select ADK_eabi + select ADK_CPU_ARM926EJ_S + depends on ADK_TARGET_SYSTEM_QEMU_ARM + +config ADK_TARGET_QEMU_ARM_MODEL_SPITZ + boolean "Xscale PXA270 Spitz PDA" + select ADK_soft_float + select ADK_eabi + select ADK_CPU_XSCALE + depends on ADK_TARGET_SYSTEM_QEMU_ARM + +endchoice + +choice +prompt "Qemu Emulation with permanent storage device (disk/flash)" +depends on ADK_HARDWARE_QEMU +default ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_ROOTFS_ARCHIVE +default ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_ROOTFS_SQUASHFS +default ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_ROOTFS_JFFS2 + +config ADK_TARGET_QEMU_WITHOUT_BLOCK + boolean "disabled" + +config ADK_TARGET_QEMU_WITH_BLOCK + boolean "enabled" + select ADK_KERNEL_SCSI_SYM53C8XX_2 if ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB + select ADK_KERNEL_MTD_M25P80 if ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605 || ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800 + select ADK_KERNEL_ATA_PIIX if ADK_LINUX_MIPS || ADK_TARGET_SYSTEM_QEMU_I686 || ADK_TARGET_SYSTEM_QEMU_X86_64 + select ADK_KERNEL_PATA_MACIO if ADK_TARGET_SYSTEM_QEMU_PPC + select ADK_KERNEL_SCSI_IBMVSCSI if ADK_TARGET_SYSTEM_QEMU_PPC64 + select ADK_KERNEL_SCSI_SUNESP if ADK_TARGET_SYSTEM_QEMU_SPARC + select ADK_KERNEL_PATA_PLATFORM if ADK_LINUX_SH + select ADK_HOST_NEED_JFFS2 if ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605 || ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800 + select ADK_HOST_NEED_SQUASHFS if ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605 || ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800 + +endchoice + +choice prompt "Qemu Emulation with graphical output" depends on ADK_HARDWARE_QEMU @@ -248,7 +304,13 @@ endchoice choice prompt "Qemu Emulation using VirtIO drivers" -depends on ADK_TARGET_SYSTEM_QEMU_SPARC64 +depends on ADK_TARGET_SYSTEM_QEMU_SPARC64 || \ + ADK_TARGET_SYSTEM_QEMU_I686 || \ + ADK_TARGET_SYSTEM_QEMU_X86_64 +default ADK_TARGET_QEMU_WITH_VIRTIO if ADK_TARGET_SYSTEM_QEMU_SPARC64 + +config ADK_TARGET_QEMU_WITHOUT_VIRTIO + boolean "disabled" config ADK_TARGET_QEMU_WITH_VIRTIO boolean "enabled" @@ -258,48 +320,8 @@ config ADK_TARGET_QEMU_WITH_VIRTIO select ADK_KERNEL_VIRTIO_NET select ADK_KERNEL_VIRTIO_BLK -config ADK_TARGET_QEMU_WITHOUT_VIRTIO - boolean "disabled" - endchoice -choice -prompt "Qemu MICROBLAZE Emulation" -depends on ADK_TARGET_SYSTEM_QEMU_MICROBLAZE || ADK_TARGET_SYSTEM_QEMU_MICROBLAZEEL - -config ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605 - boolean "Xilinx ml605" - select ADK_TARGET_WITH_MTD - -config ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800 - boolean "Xilinx Spartan S3ADSP1800" - -endchoice - -choice -prompt "Qemu ARM Emulation" -depends on ADK_TARGET_SYSTEM_QEMU_ARM - -config ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB - boolean "ARM Ltd. Versatile/PB" - select ADK_soft_float - select ADK_eabi - select ADK_CPU_ARM926EJ_S - -config ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9 - boolean "ARM Ltd. Versatile Express for Cortex-A9" - select ADK_hard_float - select ADK_eabihf - select ADK_CPU_CORTEX_A9 - -config ADK_TARGET_QEMU_ARM_MODEL_SPITZ - boolean "Xscale PXA270 Spitz PDA" - select ADK_soft_float - select ADK_eabi - select ADK_CPU_XSCALE - select ADK_TARGET_WITH_VGA - -endchoice choice prompt "Use ARM thumb mode" @@ -316,23 +338,7 @@ config ADK_LINUX_ARM_WITH_THUMB endchoice - -choice -prompt "Broadcom BCM47xx Model" -depends on ADK_TARGET_SYSTEM_BROADCOM_BCM47XX - -config ADK_TARGET_BROADCOM_MODEL_LINKSYS_WRT54G - boolean "Linksys WRT54g" - -config ADK_TARGET_BROADCOM_MODEL_LINKSYS_WRT54GS - boolean "Linksys WRT54gs" - -config ADK_TARGET_BROADCOM_MODEL_ASUS_WL500GP - boolean "Asus WL500gP" - -endchoice - -# hardware features +# hardware features, do not use for qemu config ADK_TARGET_WITH_USB boolean @@ -354,12 +360,6 @@ config ADK_TARGET_WITH_ACPI config ADK_TARGET_WITH_VGA boolean -config ADK_TARGET_WITH_CF - boolean - -config ADK_TARGET_WITH_MMC - boolean - config ADK_TARGET_WITH_NAND boolean @@ -559,7 +559,6 @@ config ADK_TARGET_CPU_ARCH default "mips" if ADK_LINUX_MIPS && ADK_big default "mipsel" if ADK_LINUX_MIPS && ADK_little default "arm" if ADK_LINUX_ARM && ADK_little - default "armeb" if ADK_LINUX_ARM && ADK_big default "sparc" if ADK_LINUX_SPARC default "sparc64" if ADK_LINUX_SPARC64 default "sh4" if ADK_LINUX_SH && ADK_little @@ -577,17 +576,6 @@ config ADK_TARGET_ABI_CFLAGS default "-mx32" if ADK_x32 default "-m64" if ADK_64 -config ADK_TARGET_ABI_LDFLAGS - string - default "-Wl,-m -Wl,elf_i386" if ADK_32 - -config ADK_TARGET_KERNEL_LDFLAGS - string - default "-mabi=64" if ADK_n32 && ADK_TARGET_KERNEL64 - default "-mabi=64" if ADK_o32 && ADK_TARGET_KERNEL64 - default "-mabi=64" if ADK_n64 && ADK_TARGET_KERNEL64 - default "" - config ADK_TARGET_CFLAGS string default "-march=geode" if ADK_CPU_GEODE @@ -613,28 +601,27 @@ config ADK_TARGET_CFLAGS config ADK_TARGET_CMDLINE string default "dwc_otg.fiq_split_enable=1" if ADK_TARGET_SYSTEM_RASPBERRY_PI - default "console=tty0" if ADK_TARGET_SYSTEM_LEMOTE_YEELONG default "console=ttymxc0,115200" if ADK_TARGET_SYSTEM_CUBOX_I + default "console=tty0" if ADK_TARGET_SYSTEM_LEMOTE_YEELONG + default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_IBM_X40 + default "console=ttyS0,115200 console=tty0 fbcon=rotate:1" if ADK_TARGET_SYSTEM_SHARP_ZAURUS default "console=ttyS0,9600" if ADK_TARGET_SYSTEM_FON_FON2100 default "console=ttyS0,38400" if ADK_TARGET_SYSTEM_PCENGINES_WRAP default "console=ttyS0,115200 console=tty0 geodewdt.nowayout=1" if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C - default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_IBM_X40 - default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_INTEL_ATOM - default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_QEMU_I686 - default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_QEMU_X86_64 - default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_QEMU_SPARC64 - default "console=ttyS0,9600 console=tty0" if ADK_TARGET_SYSTEM_QEMU_PPC - default "console=hvc0 console=tty0" if ADK_TARGET_SYSTEM_QEMU_PPC64 + default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_VBOX_I686 + default "console=tty0" if ADK_TARGET_SYSTEM_ARANYM_M68K + default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_QEMU_I686 + default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_QEMU_X86_64 + default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_QEMU_SPARC64 + default "console=ttyS0,9600" if ADK_TARGET_SYSTEM_QEMU_PPC + default "console=hvc0" if ADK_TARGET_SYSTEM_QEMU_PPC64 default "console=ttyUL0" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800 default "console=ttyS0,115200" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605 - default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_VBOX_I686 - default "console=ttyS0,115200 console=tty0" if ADK_TARGET_QEMU_ARM_MODEL_SPITZ - default "console=ttyAMA0 console=tty0" if ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB - default "console=ttyAMA0 console=tty0" if ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9 - default "console=ttyS0,115200 console=tty0 fbcon=rotate:1" if ADK_TARGET_SYSTEM_SHARP_ZAURUS - default "console=ttySC1 console=tty0" if ADK_TARGET_SYSTEM_QEMU_SH4 - default "console=ttySC1 console=tty0" if ADK_TARGET_SYSTEM_QEMU_SH4EB - default "console=ttyS0" if ADK_TARGET_SYSTEM_ARANYM_M68K + default "console=ttyS0,115200" if ADK_TARGET_QEMU_ARM_MODEL_SPITZ + default "console=ttyAMA0" if ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB + default "console=ttyAMA0" if ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9 + default "console=ttySC1" if ADK_TARGET_SYSTEM_QEMU_SH4 + default "console=ttySC1" if ADK_TARGET_SYSTEM_QEMU_SH4EB default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D13 default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D2 default "" @@ -649,15 +636,11 @@ config ADK_glibc config ADK_musl boolean -config ADK_libc - boolean - config ADK_TARGET_LIBC string default "uclibc" if ADK_uclibc default "glibc" if ADK_glibc default "musl" if ADK_musl - default "libc" if ADK_libc source "target/linux/config/Config.in.kernel" @@ -669,10 +652,12 @@ config ADK_TARGET_LIB_UCLIBC boolean select ADK_uclibc depends on \ + !ADK_LINUX_M68K && \ !ADK_LINUX_MICROBLAZE && \ !ADK_LINUX_SPARC64 && \ !ADK_LINUX_PPC64 && \ - !ADK_TARGET_ABI_X32 + !ADK_x32 && \ + !ADK_32 help http://uclibc.org @@ -712,12 +697,6 @@ config ADK_TARGET_LIB_MUSL help http://musl-libc.org -config ADK_TARGET_LIB_LIBC - prompt "Native C library" - boolean - select ADK_libc - depends on ADK_LINUX_NATIVE - endchoice config ADK_TARGET_SUFFIX @@ -727,24 +706,24 @@ config ADK_TARGET_SUFFIX default "gnuabi64" if ADK_TARGET_LIB_GLIBC && ADK_n64 default "gnuabin32" if ADK_TARGET_LIB_GLIBC && ADK_n32 default "gnuabi32" if ADK_TARGET_LIB_GLIBC && ADK_o32 - default "gnu32" if ADK_TARGET_LIB_GLIBC && ADK_32 && ADK_TARGET_KERNEL64 - default "gnux32" if ADK_TARGET_LIB_GLIBC && ADK_x32 && ADK_TARGET_KERNEL64 + default "gnu32" if ADK_TARGET_LIB_GLIBC && ADK_32 && ADK_LINUX_64 + default "gnux32" if ADK_TARGET_LIB_GLIBC && ADK_x32 && ADK_LINUX_64 default "gnu" if ADK_TARGET_LIB_GLIBC default "uclibcgnueabihf" if ADK_TARGET_LIB_UCLIBC && ADK_eabihf default "uclibcgnueabi" if ADK_TARGET_LIB_UCLIBC && ADK_eabi default "uclibcabi64" if ADK_TARGET_LIB_UCLIBC && ADK_n64 default "uclibcabin32" if ADK_TARGET_LIB_UCLIBC && ADK_n32 default "uclibcabi32" if ADK_TARGET_LIB_UCLIBC && ADK_o32 - default "uclibc32" if ADK_TARGET_LIB_UCLIBC && ADK_32 && ADK_TARGET_KERNEL64 - default "uclibcx32" if ADK_TARGET_LIB_UCLIBC && ADK_x32 && ADK_TARGET_KERNEL64 + default "uclibc32" if ADK_TARGET_LIB_UCLIBC && ADK_32 && ADK_LINUX_64 + default "uclibcx32" if ADK_TARGET_LIB_UCLIBC && ADK_x32 && ADK_LINUX_64 default "uclibc" if ADK_TARGET_LIB_UCLIBC default "muslgnueabihf" if ADK_TARGET_LIB_MUSL && ADK_eabihf default "muslgnueabi" if ADK_TARGET_LIB_MUSL && ADK_eabi default "muslabi64" if ADK_TARGET_LIB_MUSL && ADK_n64 default "muslabin32" if ADK_TARGET_LIB_MUSL && ADK_n32 default "muslabi32" if ADK_TARGET_LIB_MUSL && ADK_o32 - default "musl32" if ADK_TARGET_LIB_MUSL && ADK_32 && ADK_TARGET_KERNEL64 - default "muslx32" if ADK_TARGET_LIB_MUSL && ADK_x32 && ADK_TARGET_KERNEL64 + default "musl32" if ADK_TARGET_LIB_MUSL && ADK_32 && ADK_LINUX_64 + default "muslx32" if ADK_TARGET_LIB_MUSL && ADK_x32 && ADK_LINUX_64 default "musl" if ADK_TARGET_LIB_MUSL choice @@ -768,7 +747,6 @@ config ADK_TARGET_ROOTFS_INITRAMFS depends on !ADK_HARDWARE_VBOX depends on !ADK_TARGET_SYSTEM_RASPBERRY_PI select ADK_KERNEL_BLK_DEV_INITRD - select ADK_KERNEL_RD_XZ help create an read-only initramfs system. @@ -778,6 +756,7 @@ config ADK_TARGET_ROOTFS_INITRAMFS_PIGGYBACK depends on \ ADK_HARDWARE_QEMU || \ ADK_LINUX_ARM || \ + ADK_LINUX_M68K || \ ADK_LINUX_MICROBLAZE || \ ADK_LINUX_MIPS || \ ADK_LINUX_PPC || \ @@ -794,15 +773,16 @@ config ADK_TARGET_ROOTFS_SQUASHFS bool "Compressed read-only root filesystem (squashfs)" select ADK_KERNEL_SQUASHFS select ADK_HOST_NEED_SQUASHFS + select ADK_TARGET_QEMU_WITH_BLOCK if ADK_HARDWARE_QEMU depends on ADK_TARGET_WITH_MTD help highly compressed read-only filesystem for MTD flash systems. config ADK_TARGET_ROOTFS_JFFS2 bool "Compressed read-write root filesystem (jffs2)" - select ADK_KERNEL_MISC_FILESYSTEMS - select ADK_KERNEL_JFFS2 - select ADK_HOST_NEED_JFFS2 + select ADK_KERNEL_JFFS2_FS + select ADK_HOST_NEED_MTD_UTILS + select ADK_TARGET_QEMU_WITH_BLOCK if ADK_HARDWARE_QEMU depends on ADK_TARGET_WITH_MTD help compressed read-write filesystem for MTD flash systems. @@ -847,52 +827,31 @@ config ADK_TARGET_ROOTFS_USB help Boot system from USB stick. -config ADK_TARGET_ROOTFS_CF - bool "read-write filesystem for compact flash" - depends on ADK_TARGET_WITH_CF - select ADK_KERNEL_EXT2_FS - select ADK_KERNEL_SCSI - help - Use this option if you have a compact flash based system. - (ext2 filesystem is used.) - -config ADK_TARGET_ROOTFS_GENEXT2FS - bool "read-write filesystem for compact flash (genext2fs version)" - depends on ADK_TARGET_WITH_CF - select ADK_KERNEL_EXT2_FS - select ADK_KERNEL_SCSI - select ADK_HOST_NEED_GENEXT2FS - help - Use this option if you have a compact flash based system. - (ext2 filesystem is used.) - -config ADK_TARGET_ROOTFS_MMC - bool "read-write filesystem for mmc/sdcard" - depends on ADK_TARGET_WITH_MMC - select ADK_KERNEL_EXT2_FS - select ADK_KERNEL_SCSI - depends on !ADK_TARGET_SYSTEM_RASPBERRY_PI - help - Use this option if you have a MMC/SDCARD based system. - (ext2 filesystem is used.) - config ADK_TARGET_ROOTFS_ISO bool "ISO image" select ADK_KERNEL_ISO9660_FS select ADK_KERNEL_JOLIET select ADK_KERNEL_SCSI select ADK_KERNEL_BLK_DEV_SR - select ADK_HOST_NEED_MKISOFS + select ADK_HOST_NEED_CDRTOOLS select ADK_HOST_NEED_SYSLINUX + select ADK_TARGET_QEMU_WITH_BLOCK if ADK_HARDWARE_QEMU depends on ADK_HOST_LINUX depends on ADK_LINUX_X86 help Use this option to create a bootable ISO image. +config ADK_TARGET_ROOTFS_INITRAMFSARCHIVE + bool "Archive usable for initramfs creation" + help + Use this option if your planning to create a initramfs, + useful for adk-test-framework. + config ADK_TARGET_ROOTFS_ARCHIVE bool "Archive usable for different filesystems" select ADK_HOST_NEED_GENEXT2FS if ADK_HARDWARE_QEMU select ADK_KERNEL_EXT2_FS if ADK_HARDWARE_QEMU + select ADK_TARGET_QEMU_WITH_BLOCK if ADK_HARDWARE_QEMU help Use this option if your root filesystem is ext2/ext3/ext4/xfs. @@ -952,11 +911,12 @@ config ADK_TARGET_ROOTFS config ADK_PACKAGE_SUFFIX string default "ipk" if ADK_TARGET_PACKAGE_IPKG - default "tar.gz" if ADK_TARGET_PACKAGE_TGZ + default "tar.xz" if ADK_TARGET_PACKAGE_TXZ help choice prompt "Target package format" +default ADK_TARGET_PACKAGE_TXZ if ADK_PKG_TEST default ADK_TARGET_PACKAGE_IPKG depends on !ADK_CHOOSE_TARGET_SYSTEM && !ADK_CHOOSE_TARGET_ARCH @@ -967,9 +927,9 @@ config ADK_TARGET_PACKAGE_IPKG help Create ipkg packages and use ipkg package management on the target. -config ADK_TARGET_PACKAGE_TGZ +config ADK_TARGET_PACKAGE_TXZ boolean - prompt "tar archive" + prompt "xz compressed tar archive" help Create compressed tar archives of packages. Pre- and post install scripts will be executed in the target diff --git a/target/config/Config.in.adk b/target/config/Config.in.adk index 7544723bf..0c598e50c 100644 --- a/target/config/Config.in.adk +++ b/target/config/Config.in.adk @@ -19,6 +19,13 @@ config ADK_DL_DIR Configure the download directory for all source packages. Use an absolute path. +config ADK_TARGET_CFLAGS_OPT + string "optimization flags for compiler" + default "-Os -pipe" + help + Compilation is only verfied with optimization for code size (Os). + Other stuff (O2) might break. Will not be used when ADK_DEBUG is on. + config ADK_DEBUG bool "Compile applications with debug support by default" default n @@ -36,6 +43,7 @@ config ADK_DEBUG_STRIP config ADK_STATIC bool "Link applications statically by default" default n + select BUSYBOX_STATIC help Useful for toolchain only target devices. diff --git a/target/config/Config.in.arch.default b/target/config/Config.in.arch.default index 43d1e5399..90401de3d 100644 --- a/target/config/Config.in.arch.default +++ b/target/config/Config.in.arch.default @@ -1,7 +1,4 @@ # target architectures -config ADK_native - bool - config ADK_arm bool @@ -48,5 +45,4 @@ config ADK_TARGET_ARCH default "sh" if ADK_sh default "x86" if ADK_x86 default "x86_64" if ADK_x86_64 - default "native" if ADK_native diff --git a/target/config/Config.in.runtime b/target/config/Config.in.runtime index 7848a25ce..776a1a6f9 100644 --- a/target/config/Config.in.runtime +++ b/target/config/Config.in.runtime @@ -37,30 +37,57 @@ config ADK_RUNTIME_TIMEZONE Predefine the timezone for the embedded system. choice -prompt "Console output on embedded system" -default ADK_RUNTIME_CONSOLE_BOTH if ADK_TARGET_WITH_VGA || ADK_TARGET_QEMU_WITH_GRAPHIC && !ADK_TARGET_SYSTEM_RASPBERRY_PI && !ADK_TARGET_SYSTEM_LEMOTE_YEELONG -default ADK_RUNTIME_CONSOLE_VGA if ADK_TARGET_SYSTEM_RASPBERRY_PI || ADK_TARGET_SYSTEM_LEMOTE_YEELONG -default ADK_RUNTIME_CONSOLE_SERIAL +prompt "Start getty or shell after bootup" +default ADK_RUNTIME_SHELL if ADK_PKG_TEST +default ADK_RUNTIME_GETTY -config ADK_RUNTIME_CONSOLE_VGA - bool "console output on VGA" +config ADK_RUNTIME_GETTY + boolean "start a getty after bootup" help - Start getty on VGA console. (tty1-tty6) + Start a getty after bootup. -config ADK_RUNTIME_CONSOLE_SERIAL - bool "console output on serial" +config ADK_RUNTIME_SHELL + boolean "start a shell after bootup" help - Start getty on serial console. + Start a shell after bootup + +endchoice + +config ADK_RUNTIME_GETTY_VGA + boolean "start getty on VGA console (tty1-tty6)" + depends on ADK_RUNTIME_GETTY + default y if ADK_TARGET_QEMU_WITH_GRAPHIC + default y if ADK_TARGET_SYSTEM_RASPBERRY_PI + default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG + default y if ADK_TARGET_SYSTEM_IBM_X40 + default y if ADK_TARGET_SYSTEM_ARANYM_M68K + default n + help + Start getty on VGA console. (tty1-tty6) -config ADK_RUNTIME_CONSOLE_BOTH - bool "console output on VGA and serial" +config ADK_RUNTIME_GETTY_SERIAL + boolean "start getty on serial console" + depends on ADK_RUNTIME_GETTY + default n if ADK_TARGET_SYSTEM_RASPBERRY_PI + default n if ADK_TARGET_SYSTEM_LEMOTE_YEELONG + default n if ADK_TARGET_SYSTEM_IBM_X40 + default n if ADK_TARGET_SYSTEM_ARANYM_M68K + default y help - Start getty on VGA console and serial device. + Start getty on serial console. -endchoice +config ADK_RUNTIME_CONSOLE_SERIAL_DEVICE + string + default "hvc0" if ADK_TARGET_SYSTEM_QEMU_PPC64 + default "ttyUL0" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800 + default "ttyAMA0" if ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB || ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9 + default "ttySC1" if ADK_TARGET_SYSTEM_QEMU_SH4 || ADK_TARGET_SYSTEM_QEMU_SH4EB + default "ttymxc0" if ADK_TARGET_SYSTEM_CUBOX_I + default "ttyS0" config ADK_RUNTIME_CONSOLE_SERIAL_SPEED string + default "9600" if ADK_TARGET_SYSTEM_QEMU_PPC default "9600" if ADK_TARGET_SYSTEM_FON_FON2100 default "38400" if ADK_TARGET_SYSTEM_PCENGINES_WRAP default "115200" @@ -159,14 +186,14 @@ depends on ADK_SIMPLE_NETWORK_CONFIG choice prompt "Type" - default SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC - -config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC - bool "NIC / DHCP" + default SIMPLE_NETWORK_CONFIG_ETH0_TYPE_MANUAL config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL bool "NIC / manual IP" +config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC + bool "NIC / DHCP" + config SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP bool "Bridge with IP" @@ -180,7 +207,7 @@ endchoice config SIMPLE_NETWORK_CONFIG_ETH0_IP depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL || SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP string "eth0 IP Address" - default "192.168.1.2" + default "10.0.2.15" config SIMPLE_NETWORK_CONFIG_ETH0_NM depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL || SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP @@ -190,7 +217,7 @@ config SIMPLE_NETWORK_CONFIG_ETH0_NM config SIMPLE_NETWORK_CONFIG_ETH0_GW depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_NIC_MANUAL string "eth0 Gateway" - default "192.168.1.1" + default "10.0.2.2" config SIMPLE_NETWORK_CONFIG_ETH0_BRIDGE depends on SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE || SIMPLE_NETWORK_CONFIG_ETH0_TYPE_BRIDGE_IP @@ -282,7 +309,7 @@ depends on ADK_SIMPLE_NETWORK_CONFIG config SIMPLE_NETWORK_CONFIG_RESOLV string "Nameserver" - default "192.168.1.1" + default "10.0.2.3" endmenu diff --git a/target/config/Config.in.tools b/target/config/Config.in.tools index c4dcdace4..2159b4db7 100644 --- a/target/config/Config.in.tools +++ b/target/config/Config.in.tools @@ -1,16 +1,67 @@ -config ADK_HOST_NEED_MKISOFS +# always required from OpenADK +config ADK_HOST_BUILD_HEIRLOOM_CPIO + boolean + default y + +config ADK_HOST_BUILD_ADK_HELPER + boolean + default y + +# always required, but can be provided by host +config ADK_HOST_BUILD_BASH boolean default n -config ADK_HOST_NEED_SYSLINUX +config ADK_HOST_BUILD_BC + boolean + default n + +config ADK_HOST_BUILD_BISON + boolean + default n + +config ADK_HOST_BUILD_BZIP2 + boolean + default n + +config ADK_HOST_BUILD_FILE + boolean + default n + +config ADK_HOST_BUILD_FINDUTILS + boolean + default n + +config ADK_HOST_BUILD_FLEX + boolean + default n + +config ADK_HOST_BUILD_M4 + boolean + default n + +config ADK_HOST_BUILD_PKGCONF + boolean + default n + +config ADK_HOST_BUILD_XZ + boolean + default n + +# optional, but can be provided by host +config ADK_HOST_NEED_CCACHE + boolean + default n + +config ADK_HOST_BUILD_CCACHE boolean default n -config ADK_HOST_NEED_SQUASHFS +config ADK_HOST_NEED_CDRTOOLS boolean default n -config ADK_HOST_NEED_JFFS2 +config ADK_HOST_BUILD_CDRTOOLS boolean default n @@ -18,7 +69,7 @@ config ADK_HOST_NEED_GENEXT2FS boolean default n -config ADK_HOST_NEED_LZOP +config ADK_HOST_BUILD_GENEXT2FS boolean default n @@ -26,20 +77,50 @@ config ADK_HOST_NEED_LZMA boolean default n -config ADK_HOST_NEED_BZIP2 +config ADK_HOST_BUILD_LZMA boolean default n -config ADK_HOST_NEED_XZ +config ADK_HOST_NEED_LZOP boolean default n -config ADK_HOST_NEED_CCACHE +config ADK_HOST_BUILD_LZOP + boolean + default n + +config ADK_HOST_NEED_MKSH + boolean + default n + +config ADK_HOST_BUILD_MKSH + boolean + default n + +config ADK_HOST_NEED_SYSLINUX + boolean + default n + +config ADK_HOST_BUILD_SYSLINUX + boolean + default n + +# optional, must be used from OpenADK +config ADK_HOST_BUILD_MTD_UTILS + boolean + default n + +config ADK_HOST_BUILD_SQUASHFS + boolean + default n + +config ADK_HOST_BUILD_MKIMAGE + boolean + default n + +config ADK_HOST_BUILD_PCRE boolean + default y if ADK_HOST_DARWIN default n -config ADK_TOOLS_ADDPATTERN_ARGS - string - default "-p W54G -v v4.20.6" if ADK_TARGET_BROADCOM_MODEL_LINKSYS_WRT54G - default "-p W54S -v v4.70.6" if ADK_TARGET_BROADCOM_MODEL_LINKSYS_WRT54GS - default "" +source "target/config/Config.in.prereq" diff --git a/target/linux/config/Config.in.audio b/target/linux/config/Config.in.audio index e924902e3..a1a5077e6 100644 --- a/target/linux/config/Config.in.audio +++ b/target/linux/config/Config.in.audio @@ -13,23 +13,14 @@ config ADK_KERNEL_SND_USB config ADK_KERNEL_SND_PXA2XX_AC97 boolean -config ADK_KERNEL_SND_TIMER +config ADK_KPACKAGE_KMOD_SND_TIMER boolean -config ADK_KERNEL_SND_PCM +config ADK_KPACKAGE_KMOD_SND_PCM boolean -config ADK_KERNEL_SND_HWDEP - boolean - -config ADK_KERNEL_SND_OSSEMUL - boolean - -config ADK_KERNEL_SND_MIXER_OSS - boolean - -config ADK_KERNEL_SND_PCM_OSS - boolean +config ADK_KPACKAGE_KMOD_SND_HWDEP + tristate config ADK_KPACKAGE_KMOD_SOUND tristate @@ -40,32 +31,24 @@ config ADK_KPACKAGE_KMOD_SND_RAWMIDI config ADK_KPACKAGE_KMOD_SND_AC97_CODEC tristate -config ADK_KPACKAGE_KMOD_SND - prompt "kmod-snd...................... ALSA sound support" +config ADK_KPACKAGE_KMOD_SND_PCM_DMAENGINE tristate - select ADK_KPACKAGE_KMOD_SOUND - select ADK_KERNEL_SND_OSSEMUL - select ADK_KERNEL_SND_TIMER - select ADK_KERNEL_SND_PCM - select ADK_KERNEL_SND_HWDEP - default n - help - Basic ALSA sound support. -config ADK_KPACKAGE_KMOD_SND_OSSEMUL - prompt "kmod-snd-ossemul.............. ALSA OSS Emulation" +config ADK_KPACKAGE_KMOD_SND_COMPRESS tristate - select ADK_KERNEL_SND_MIXER_OSS - select ADK_KERNEL_SND_PCM_OSS - select ADK_KPACKAGE_KMOD_SND - default y if ADK_TARGET_SYSTEM_IBM_X40 + +config ADK_KPACKAGE_KMOD_SND + tristate + select ADK_KPACKAGE_KMOD_SOUND + select ADK_KPACKAGE_KMOD_SND_PCM + select ADK_KPACKAGE_KMOD_SND_TIMER + select ADK_KPACKAGE_KMOD_SND_HWDEP default n - help - ALSA OSS Emulation config ADK_KPACKAGE_KMOD_SND_INTEL8X0 prompt "kmod-snd-intel8x0............. Intel AC97 driver" tristate + select ADK_KERNEL_SND_PCI select ADK_KPACKAGE_KMOD_SND_AC97_CODEC select ADK_KPACKAGE_KMOD_SND default y if ADK_TARGET_SYSTEM_IBM_X40 @@ -136,11 +119,14 @@ config ADK_KPACKAGE_KMOD_SND_BCM2835 default n config ADK_KPACKAGE_KMOD_SND_BCM2708_SOC_I2S - prompt "kmod-snd-bcm2708-soc-i2s........ ALSA SOC I2S Raspberry PI" + prompt "kmod-snd-bcm2708-soc-i2s...... ALSA SOC I2S Raspberry PI" + tristate select ADK_KPACKAGE_KMOD_SND select ADK_KERNEL_SND_ARM select ADK_KPACKAGE_KMOD_SND_SOC - boolean + select ADK_KPACKAGE_KMOD_SND_PCM_DMAENGINE + select ADK_KPACKAGE_KMOD_SND_COMPRESS + depends on ADK_TARGET_SYSTEM_RASPBERRY_PI default n config ADK_KPACKAGE_KMOD_SND_BCM2708_SOC_HIFIBERRY_DAC diff --git a/target/linux/config/Config.in.block b/target/linux/config/Config.in.block index 9297031c2..dd7c96dc5 100644 --- a/target/linux/config/Config.in.block +++ b/target/linux/config/Config.in.block @@ -1,6 +1,3 @@ -config ADK_KERNEL_BLOCK - boolean - config ADK_KERNEL_MD boolean @@ -24,6 +21,10 @@ config ADK_KERNEL_IOSCHED_CFQ config ADK_KERNEL_SCSI boolean + default y if ADK_TARGET_SYSTEM_IBM_X40 + +config ADK_KERNEL_SCSI_DMA + boolean config ADK_KERNEL_BLK_DEV_SD boolean @@ -74,7 +75,48 @@ config ADK_KERNEL_MMC_SDHCI_PLTFM config ADK_KERNEL_MMC_SDHCI_BCM2708_DMA boolean +config ADK_KERNEL_ATA_PIIX + select ADK_KERNEL_SCSI + select ADK_KERNEL_SCSI_DMA + select ADK_KERNEL_ATA + select ADK_KERNEL_ATA_SFF + select ADK_KERNEL_ATA_BMDMA + select ADK_KERNEL_BLK_DEV + select ADK_KERNEL_BLK_DEV_SD + boolean + config ADK_KERNEL_SCSI_SYM53C8XX_2 + select ADK_KERNEL_SCSI + select ADK_KERNEL_BLK_DEV + select ADK_KERNEL_BLK_DEV_SD + boolean + +config ADK_KERNEL_SCSI_IBMVSCSI + select ADK_KERNEL_SCSI + select ADK_KERNEL_BLK_DEV + select ADK_KERNEL_BLK_DEV_SD + boolean + +config ADK_KERNEL_SCSI_SUNESP + select ADK_KERNEL_SCSI + select ADK_KERNEL_BLK_DEV + select ADK_KERNEL_BLK_DEV_SD + boolean + +config ADK_KERNEL_PATA_MACIO + select ADK_KERNEL_SCSI + select ADK_KERNEL_ATA + select ADK_KERNEL_ATA_BMDMA + select ADK_KERNEL_BLK_DEV + select ADK_KERNEL_BLK_DEV_SD + boolean + +config ADK_KERNEL_PATA_PLATFORM + select ADK_KERNEL_SCSI + select ADK_KERNEL_ATA + select ADK_KERNEL_ATA_BMDMA + select ADK_KERNEL_BLK_DEV + select ADK_KERNEL_BLK_DEV_SD boolean config ADK_KERNEL_PATA_PCMCIA @@ -82,7 +124,6 @@ config ADK_KERNEL_PATA_PCMCIA config ADK_KERNEL_PATA_PXA boolean - select ADK_KERNEL_BLOCK select ADK_KERNEL_SCSI select ADK_KERNEL_ATA select ADK_KERNEL_ATA_SFF @@ -95,7 +136,6 @@ config ADK_KERNEL_PATA_PXA config ADK_KERNEL_MMC_AT91 boolean - select ADK_KERNEL_BLOCK select ADK_KERNEL_SCSI select ADK_KERNEL_MMC select ADK_KERNEL_MMC_BLOCK @@ -106,7 +146,6 @@ config ADK_KERNEL_MMC_AT91 config ADK_KERNEL_MMC_SDHCI_BCM2708 boolean - select ADK_KERNEL_BLOCK select ADK_KERNEL_SCSI select ADK_KERNEL_MMC select ADK_KERNEL_MMC_BLOCK @@ -121,7 +160,6 @@ config ADK_KERNEL_MMC_SDHCI_BCM2708 config ADK_KERNEL_PATA_RB532 boolean - select ADK_KERNEL_BLOCK select ADK_KERNEL_SCSI select ADK_KERNEL_ATA select ADK_KERNEL_ATA_SFF @@ -133,7 +171,6 @@ config ADK_KERNEL_PATA_RB532 config ADK_KERNEL_PATA_AMD boolean - select ADK_KERNEL_BLOCK select ADK_KERNEL_SCSI select ADK_KERNEL_ATA select ADK_KERNEL_ATA_SFF @@ -148,7 +185,6 @@ config ADK_KERNEL_PATA_AMD config ADK_KERNEL_PATA_SC1200 boolean - select ADK_KERNEL_BLOCK select ADK_KERNEL_SCSI select ADK_KERNEL_ATA select ADK_KERNEL_ATA_SFF @@ -160,7 +196,6 @@ config ADK_KERNEL_PATA_SC1200 config ADK_KERNEL_PATA_JMICRON boolean - select ADK_KERNEL_BLOCK select ADK_KERNEL_SCSI select ADK_KERNEL_ATA select ADK_KERNEL_ATA_SFF @@ -171,7 +206,6 @@ config ADK_KERNEL_PATA_JMICRON config ADK_KERNEL_SATA_AHCI tristate - select ADK_KERNEL_BLOCK select ADK_KERNEL_SCSI select ADK_KERNEL_ATA select ADK_KERNEL_BLK_DEV @@ -185,7 +219,6 @@ menu "Block devices support" config ADK_KPACKAGE_KMOD_SATA_AHCI prompt "kmod-sata-ahci.................... AHCI SATA driver" tristate - select ADK_KERNEL_BLOCK select ADK_KERNEL_ATA select ADK_KERNEL_BLK_DEV_SD depends on !ADK_KERNEL_SATA_AHCI @@ -197,7 +230,6 @@ config ADK_KPACKAGE_KMOD_SATA_AHCI config ADK_KPACKAGE_KMOD_BLK_DEV_LOOP prompt "kmod-blk-dev-loop................. Loop mount support" tristate - select ADK_KERNEL_BLOCK select ADK_KERNEL_BLK_DEV default n help @@ -265,7 +297,6 @@ config ADK_KPACKAGE_KMOD_SCSI select ADK_KERNEL_LSF select ADK_KERNEL_IOSCHED_AS depends on !ADK_KERNEL_SCSI - depends on !ADK_KERNEL_SATA_AHCI tristate help If you want to use a SCSI hard disk, SCSI tape drive, SCSI CD-ROM or @@ -281,7 +312,7 @@ config ADK_KPACKAGE_KMOD_SCSI config ADK_KPACKAGE_KMOD_BLK_DEV_SD prompt "kmod-scsi-disk.................... SCSI disk support" - select ADK_KPACKAGE_KMOD_SCSI + select ADK_KPACKAGE_KMOD_SCSI if !ADK_KERNEL_SCSI depends on !ADK_KERNEL_BLK_DEV_SD tristate help diff --git a/target/linux/config/Config.in.cpu b/target/linux/config/Config.in.cpu index a8dfd5188..1d36c0b36 100644 --- a/target/linux/config/Config.in.cpu +++ b/target/linux/config/Config.in.cpu @@ -1,12 +1,3 @@ -config ADK_KERNEL_MATOM - boolean - -config ADK_KERNEL_MPENTIUMM - boolean - -config ADK_KERNEL_MGEODE_LX - boolean - config ADK_KERNEL_MTRR boolean default y if ADK_TARGET_CPU_WITH_MTRR diff --git a/target/linux/config/Config.in.debug b/target/linux/config/Config.in.debug index 80387c627..a1c7ae6c9 100644 --- a/target/linux/config/Config.in.debug +++ b/target/linux/config/Config.in.debug @@ -30,7 +30,7 @@ config ADK_KERNEL_EARLY_PRINTK default n config ADK_KERNEL_PRINTK - prompt "Enable printk to save space and quieten bootup" + prompt "printk support (disable to save space and quieten bootup)" boolean select ADK_KERNEL_EARLY_PRINTK default y @@ -39,7 +39,7 @@ config ADK_KERNEL_PRINTK Disable printk to save space and quieten bootup. config ADK_KERNEL_PRINTK_TIME - prompt "Enable timing information for printk" + prompt "timing information for printk" boolean depends on ADK_KERNEL_PRINTK default n diff --git a/target/linux/config/Config.in.flash b/target/linux/config/Config.in.flash index 773c518e8..dda8ad4c9 100644 --- a/target/linux/config/Config.in.flash +++ b/target/linux/config/Config.in.flash @@ -87,8 +87,21 @@ config ADK_KERNEL_MTD_OF_PARTS default n config ADK_KERNEL_MTD_M25P80 + select ADK_KERNEL_BLOCK + select ADK_KERNEL_MTD + select ADK_KERNEL_MTD_PARTITIONS + select ADK_KERNEL_MTD_CHAR + select ADK_KERNEL_MTD_BLKDEVS + select ADK_KERNEL_MTD_BLOCK + select ADK_KERNEL_MTD_ROOTFS_ROOT_DEV + select ADK_KERNEL_MTD_CFI + select ADK_KERNEL_MTD_GEN_PROBE + select ADK_KERNEL_MTD_PHYSMAP + select ADK_KERNEL_MTD_PHYSMAP_OF + select ADK_KERNEL_MTD_OF_PARTS + select ADK_KERNEL_SPI + select ADK_KERNEL_SPI_MASTER boolean - default y if ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605 default n config ADK_KERNEL_MTD_AR2315 @@ -129,13 +142,11 @@ config ADK_TARGET_MTD select ADK_KERNEL_MTD_CFI select ADK_KERNEL_MTD_GEN_PROBE select ADK_KERNEL_MTD_PHYSMAP - select ADK_KERNEL_MTD_PHYSMAP_OF if ADK_LINUX_MICROBLAZE - select ADK_KERNEL_MTD_OF_PARTS if ADK_LINUX_MICROBLAZE default y if ADK_TARGET_WITH_MTD default n config ADK_TARGET_MTD_SIZE int - default "33554432" if ADK_TARGET_SYSTEM_QEMU_MICROBLAZE - default "33554432" if ADK_TARGET_SYSTEM_QEMU_MICROBLAZEEL + default "16777216" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800 + default "33554432" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605 default "0" diff --git a/target/linux/config/Config.in.fs b/target/linux/config/Config.in.fs index 85065c093..5ebf38794 100644 --- a/target/linux/config/Config.in.fs +++ b/target/linux/config/Config.in.fs @@ -11,9 +11,6 @@ config ADK_KERNEL_EXPORTFS boolean default y -config ADK_KERNEL_JFFS2_FS - boolean - config ADK_KERNEL_YAFFS_FS tristate @@ -51,6 +48,21 @@ config ADK_KERNEL_SQUASHFS_XZ boolean default n +config ADK_KERNEL_JFFS2_COMPRESSION_OPTIONS + boolean + default n + +config ADK_KERNEL_JFFS2_ZLIB + boolean + default n + +config ADK_KERNEL_JFFS2_FS + prompt "jffs2............................. JFFS2 filesystem" + select ADK_KERNEL_MISC_FILESYSTEMS + select ADK_KERNEL_JFFS2_COMPRESSION_OPTIONS + select ADK_KERNEL_JFFS2_ZLIB + boolean + config ADK_KERNEL_SQUASHFS prompt "squashfs.......................... SquashFS filesystem" boolean @@ -60,8 +72,7 @@ config ADK_KERNEL_SQUASHFS config ADK_KERNEL_EXT2_FS boolean - default y if ADK_TARGET_WITH_CF - default y if ADK_TARGET_WITH_MMC && !ADK_TARGET_SYSTEM_RASPBERRY_PI + default y if ADK_TARGET_SYSTEM_LEMOTE_YEELONG default n config ADK_KPACKAGE_KMOD_EXT2_FS @@ -183,7 +194,7 @@ config ADK_KPACKAGE_KMOD_VFAT_FS select ADK_KPACKAGE_KMOD_NLS_CODEPAGE_850 select ADK_KPACKAGE_KMOD_NLS_ISO8859_1 select ADK_KERNEL_BLOCK - default y if ADK_TARGET_WITH_MMC + default y if ADK_TARGET_SYSTEM_RASPBERRY_PI default n help This option provides support for normal Windows file systems with @@ -222,7 +233,7 @@ config ADK_KPACKAGE_KMOD_XFS_FS with the IRIX version of XFS. config ADK_KPACKAGE_KMOD_FUSE_FS - prompt "kmod-fs-fuse...................... Filesystem in Userspace support" + prompt "kmod-fuse-fs...................... Filesystem in Userspace support" tristate default n help diff --git a/target/linux/config/Config.in.graphics b/target/linux/config/Config.in.graphics index dc748e6c0..3a8e18b25 100644 --- a/target/linux/config/Config.in.graphics +++ b/target/linux/config/Config.in.graphics @@ -13,7 +13,6 @@ config ADK_KERNEL_VT_CONSOLE config ADK_KERNEL_VGA_CONSOLE boolean default y if ADK_HARDWARE_VBOX - default y if ADK_TARGET_SYSTEM_ARANYM_M68K default n config ADK_KERNEL_FONTS @@ -27,11 +26,19 @@ config ADK_KERNEL_FB boolean config ADK_KERNEL_FRAMEBUFFER_CONSOLE + default y if ADK_TARGET_SYSTEM_ARANYM_M68K + default n boolean config ADK_KERNEL_MFD_SM501 boolean +config ADK_KERNEL_FB_ATARI + boolean + select ADK_KERNEL_FB + default y if ADK_TARGET_SYSTEM_ARANYM_M68K + default n + config ADK_KERNEL_FB_CIRRUS boolean @@ -61,7 +68,7 @@ config ADK_KERNEL_LOGO boolean menu "Graphic devices support" -depends on ADK_TARGET_WITH_VGA +depends on ADK_TARGET_WITH_VGA || ADK_HARDWARE_QEMU config ADK_KERNEL_LOGO_LINUX_CLUT224 prompt "Enable Linux penguin boot logo" @@ -69,6 +76,12 @@ config ADK_KERNEL_LOGO_LINUX_CLUT224 select ADK_KERNEL_LOGO default n +config ADK_KERNEL_FB_CON_DECOR + prompt "Enable fullscreen boot logo" + boolean + select ADK_PACKAGE_FBSPLASH + default n + config ADK_KERNEL_FB_VESA prompt "................................ Framebuffer support for VirtualBox Emulator (VESA)" boolean diff --git a/target/linux/config/Config.in.kernel b/target/linux/config/Config.in.kernel index d928cea09..ead74cc7e 100644 --- a/target/linux/config/Config.in.kernel +++ b/target/linux/config/Config.in.kernel @@ -7,6 +7,9 @@ config ADK_KERNEL_EXPERIMENTAL config ADK_KERNEL_BLK_DEV_INITRD boolean +config ADK_KERNEL_BLK_DEV_RAM + boolean + config ADK_KERNEL_INITRAMFS_COMPRESSION_NONE boolean @@ -95,7 +98,7 @@ config ADK_KERNEL_PCI config ADK_KERNEL_64BIT boolean - default y if ADK_TARGET_KERNEL64 + default y if ADK_LINUX_64 config ADK_KERNEL_CPU_MIPS64 boolean @@ -103,6 +106,9 @@ config ADK_KERNEL_CPU_MIPS64 config ADK_KERNEL_CPU_MIPS64_R1 boolean +config ADK_KERNEL_CPU_MIPS64_R2 + boolean + config ADK_KERNEL_PREEMPT boolean @@ -122,7 +128,9 @@ config ADK_KERNEL_AEABI # endianess config ADK_KERNEL_CPU_BIG_ENDIAN + default y if ADK_big boolean config ADK_KERNEL_CPU_LITTLE_ENDIAN + default y if ADK_little boolean diff --git a/target/linux/config/Config.in.netdevice b/target/linux/config/Config.in.netdevice index 7aabc0b7e..62479c2cb 100644 --- a/target/linux/config/Config.in.netdevice +++ b/target/linux/config/Config.in.netdevice @@ -7,6 +7,18 @@ config ADK_KERNEL_NETDEVICES config ADK_KERNEL_NET_ETHERNET boolean +config ADK_KERNEL_NET_VENDOR_NATSEMI + boolean + +config ADK_KERNEL_NET_VENDOR_8390 + boolean + +config ADK_KERNEL_NET_VENDOR_REALTEK + boolean + +config ADK_KERNEL_NET_VENDOR_MARVELL + boolean + config ADK_KERNEL_PHYLIB boolean @@ -151,6 +163,8 @@ config ADK_KPACKAGE_KMOD_NE2K_PCI select ADK_KERNEL_NETDEVICES select ADK_KERNEL_NET_ETHERNET select ADK_KERNEL_NET_PCI + select ADK_KERNEL_NET_VENDOR_NATSEMI + select ADK_KERNEL_NET_VENDOR_8390 select ADK_KERNEL_MII default n help @@ -173,6 +187,7 @@ config ADK_KPACKAGE_KMOD_8139CP select ADK_KERNEL_NETDEVICES select ADK_KERNEL_NET_ETHERNET select ADK_KERNEL_NET_PCI + select ADK_KERNEL_NET_VENDOR_REALTEK select ADK_KERNEL_MII default n help @@ -220,6 +235,7 @@ config ADK_KPACKAGE_KMOD_SKY2 select ADK_KERNEL_NETDEVICES select ADK_KERNEL_NET_ETHERNET select ADK_KERNEL_NETDEV_1000 + select ADK_KERNEL_NET_VENDOR_MARVELL depends on !ADK_KERNEL_SKY2 default n help diff --git a/target/linux/config/Config.in.netfilter.ip4 b/target/linux/config/Config.in.netfilter.ip4 index b43a566b9..d3f988845 100644 --- a/target/linux/config/Config.in.netfilter.ip4 +++ b/target/linux/config/Config.in.netfilter.ip4 @@ -36,16 +36,16 @@ config ADK_KPACKAGE_KMOD_IP_NF_FILTER config ADK_KPACKAGE_KMOD_FULL_NAT tristate "Meta package for Full NAT" - select ADK_KPACKAGE_KMOD_NF_NAT if ADK_KERNEL_VERSION_3_4_82 - select ADK_KPACKAGE_KMOD_NF_NAT_IPV4 if ADK_KERNEL_VERSION_3_10_30 + select ADK_KPACKAGE_KMOD_NF_NAT if ADK_KERNEL_VERSION_3_4_84 + select ADK_KPACKAGE_KMOD_NF_NAT_IPV4 if ADK_KERNEL_VERSION_3_10_34 select ADK_KPACKAGE_KMOD_NF_NAT_IPV4 if ADK_KERNEL_VERSION_3_11_10 - select ADK_KPACKAGE_KMOD_NF_NAT_IPV4 if ADK_KERNEL_VERSION_3_12_13 - select ADK_KPACKAGE_KMOD_NF_NAT_IPV4 if ADK_KERNEL_VERSION_3_13_6 + select ADK_KPACKAGE_KMOD_NF_NAT_IPV4 if ADK_KERNEL_VERSION_3_12_14 + select ADK_KPACKAGE_KMOD_NF_NAT_IPV4 if ADK_KERNEL_VERSION_3_13_7 config ADK_KPACKAGE_KMOD_NF_NAT tristate 'Full NAT' depends on ADK_KPACKAGE_KMOD_IP_NF_IPTABLES - depends on ADK_KERNEL_VERSION_3_4_82 + depends on ADK_KERNEL_VERSION_3_4_84 help The Full NAT option allows masquerading, port forwarding and other forms of full Network Address Port Translation. It is controlled by @@ -54,10 +54,10 @@ config ADK_KPACKAGE_KMOD_NF_NAT config ADK_KPACKAGE_KMOD_NF_NAT_IPV4 tristate 'Full NAT' depends on ADK_KPACKAGE_KMOD_IP_NF_IPTABLES - depends on ADK_KERNEL_VERSION_3_10_30 \ + depends on ADK_KERNEL_VERSION_3_10_34 \ || ADK_KERNEL_VERSION_3_11_10 \ - || ADK_KERNEL_VERSION_3_12_13 \ - || ADK_KERNEL_VERSION_3_13_6 + || ADK_KERNEL_VERSION_3_12_14 \ + || ADK_KERNEL_VERSION_3_13_7 help The Full NAT option allows masquerading, port forwarding and other forms of full Network Address Port Translation. It is controlled by diff --git a/target/linux/config/Config.in.network b/target/linux/config/Config.in.network index 00d05dcd4..71a510d69 100644 --- a/target/linux/config/Config.in.network +++ b/target/linux/config/Config.in.network @@ -1,13 +1,5 @@ menu "Network support" -config ADK_KERNEL_INET - boolean - default y - -config ADK_KERNEL_NET_CORE - boolean - default y - config ADK_KERNEL_IP_FIB_HASH boolean default y diff --git a/target/linux/config/Config.in.nls b/target/linux/config/Config.in.nls index 587d5a37b..61dd32752 100644 --- a/target/linux/config/Config.in.nls +++ b/target/linux/config/Config.in.nls @@ -1,12 +1,8 @@ menu "Native Language support" -config ADK_KERNEL_NLS - boolean - default y - config ADK_KERNEL_NLS_DEFAULT string - default "iso8859-1" + default "utf-8" config ADK_KPACKAGE_KMOD_NLS_CODEPAGE_437 prompt "kmod-nls-codepage-437........... Codepage 437 (United States, Canada)" @@ -325,7 +321,7 @@ config ADK_KPACKAGE_KMOD_NLS_ASCII config ADK_KPACKAGE_KMOD_NLS_ISO8859_1 prompt "kmod-nls-iso8859-1.............. NLS ISO 8859-1 (Latin-1; Western European Languages)" tristate - default n + default y help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs @@ -499,7 +495,7 @@ config ADK_KPACKAGE_KMOD_NLS_KOI8_U config ADK_KPACKAGE_KMOD_NLS_UTF8 prompt "kmod-nls-utf8................... NLS UTF8" tristate - default n + default y help If you want to display filenames with native language characters from the Microsoft FAT file system family or from JOLIET CD-ROMs diff --git a/target/linux/config/Config.in.spi b/target/linux/config/Config.in.spi index 73db5e86d..c130523ef 100644 --- a/target/linux/config/Config.in.spi +++ b/target/linux/config/Config.in.spi @@ -1,6 +1,12 @@ config ADK_KERNEL_SPI boolean +config ADK_KERNEL_SPI_MASTER + boolean + +config ADK_KERNEL_SPI_XILINX + boolean + config ADK_KERNEL_SPI_AR71XX select ADK_KERNEL_SPI boolean diff --git a/target/linux/config/Config.in.systems b/target/linux/config/Config.in.systems deleted file mode 100644 index 61284f0fb..000000000 --- a/target/linux/config/Config.in.systems +++ /dev/null @@ -1,17 +0,0 @@ -# page size -config ADK_KERNEL_PAGE_SIZE_4KB - boolean - -config ADK_KERNEL_PAGE_SIZE_16KB - boolean - -# ABI -config ADK_KERNEL_AEABI - boolean - -# endianess -config ADK_KERNEL_CPU_BIG_ENDIAN - boolean - -config ADK_KERNEL_CPU_LITTLE_ENDIAN - boolean diff --git a/target/linux/config/Config.in.usb b/target/linux/config/Config.in.usb index 2d50e24b2..ac85f977e 100644 --- a/target/linux/config/Config.in.usb +++ b/target/linux/config/Config.in.usb @@ -7,20 +7,14 @@ config ADK_KERNEL_USB_SUPPORT config ADK_KERNEL_USB boolean select ADK_KERNEL_USB_SUPPORT - default y if ADK_TARGET_SYSTEM_QEMU_SH4 - default y if ADK_TARGET_SYSTEM_QEMU_SH4EB default n config ADK_KERNEL_USB_OHCI_HCD boolean - default y if ADK_TARGET_SYSTEM_QEMU_SH4 - default y if ADK_TARGET_SYSTEM_QEMU_SH4EB default n config ADK_KERNEL_USB_OHCI_HCD_PLATFORM boolean - default y if ADK_TARGET_SYSTEM_QEMU_SH4 - default y if ADK_TARGET_SYSTEM_QEMU_SH4EB default n config ADK_KERNEL_USB_LIBUSUAL diff --git a/target/linux/kernel.config b/target/linux/kernel.config index d69b28908..9c6c96c01 100644 --- a/target/linux/kernel.config +++ b/target/linux/kernel.config @@ -12,14 +12,17 @@ CONFIG_PACKET=y CONFIG_UNIX=y CONFIG_XFRM=y CONFIG_INET=y +CONFIG_NETDEVICES=y +CONFIG_NET_CORE=y +CONFIG_ETHERNET=y CONFIG_PROC_FS=y CONFIG_PROC_SYSCTL=y CONFIG_BLOCK=y +CONFIG_BLK_DEV=y CONFIG_FILE_LOCKING=y CONFIG_SYSFS=y CONFIG_TMPFS=y CONFIG_NLS=y -CONFIG_NLS_DEFAULT="iso8859-1" CONFIG_EMBEDDED=y CONFIG_MODULES=y CONFIG_BINFMT_ELF=y diff --git a/target/linux/patches/3.10.33/startup.patch b/target/linux/patches/3.10.33/startup.patch deleted file mode 100644 index 4dccae8c1..000000000 --- a/target/linux/patches/3.10.33/startup.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nur linux-3.7.3.orig/init/main.c linux-3.7.3/init/main.c ---- linux-3.7.3.orig/init/main.c 2013-01-17 17:47:40.000000000 +0100 -+++ linux-3.7.3/init/main.c 2013-01-19 15:08:13.000000000 +0100 -@@ -879,6 +880,8 @@ - if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) - printk(KERN_WARNING "Warning: unable to open an initial console.\n"); - -+ printk(KERN_WARNING "Starting Linux (built with OpenADK).\n"); -+ - (void) sys_dup(0); - (void) sys_dup(0); - /* diff --git a/target/linux/patches/3.10.33/bsd-compatibility.patch b/target/linux/patches/3.10.34/bsd-compatibility.patch index b954b658f..b954b658f 100644 --- a/target/linux/patches/3.10.33/bsd-compatibility.patch +++ b/target/linux/patches/3.10.34/bsd-compatibility.patch diff --git a/target/linux/patches/3.10.34/startup.patch b/target/linux/patches/3.10.34/startup.patch new file mode 100644 index 000000000..3ebc5db1e --- /dev/null +++ b/target/linux/patches/3.10.34/startup.patch @@ -0,0 +1,34 @@ +diff -Nur linux-3.10.33.orig/init/initramfs.c linux-3.10.33/init/initramfs.c +--- linux-3.10.33.orig/init/initramfs.c 2014-03-07 06:58:45.000000000 +0100 ++++ linux-3.10.33/init/initramfs.c 2014-03-15 18:32:07.240436750 +0100 +@@ -622,6 +622,9 @@ + */ + load_default_modules(); + } ++#ifdef CONFIG_DEVTMPFS_MOUNT ++ devtmpfs_mount("dev"); ++#endif + return 0; + } + rootfs_initcall(populate_rootfs); +diff -Nur linux-3.10.33.orig/init/main.c linux-3.10.33/init/main.c +--- linux-3.10.33.orig/init/main.c 2014-03-07 06:58:45.000000000 +0100 ++++ linux-3.10.33/init/main.c 2014-03-15 18:32:07.240436750 +0100 +@@ -885,6 +885,8 @@ + if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) + pr_err("Warning: unable to open an initial console.\n"); + ++ printk(KERN_WARNING "Starting Linux (built with OpenADK).\n"); ++ + (void) sys_dup(0); + (void) sys_dup(0); + /* +@@ -893,7 +895,7 @@ + */ + + if (!ramdisk_execute_command) +- ramdisk_execute_command = "/init"; ++ ramdisk_execute_command = "/sbin/init"; + + if (sys_access((const char __user *) ramdisk_execute_command, 0) != 0) { + ramdisk_execute_command = NULL; diff --git a/target/linux/patches/3.11.10/startup.patch b/target/linux/patches/3.11.10/startup.patch index 4dccae8c1..e7285873d 100644 --- a/target/linux/patches/3.11.10/startup.patch +++ b/target/linux/patches/3.11.10/startup.patch @@ -1,12 +1,34 @@ -diff -Nur linux-3.7.3.orig/init/main.c linux-3.7.3/init/main.c ---- linux-3.7.3.orig/init/main.c 2013-01-17 17:47:40.000000000 +0100 -+++ linux-3.7.3/init/main.c 2013-01-19 15:08:13.000000000 +0100 -@@ -879,6 +880,8 @@ +diff -Nur linux-3.11.10.orig/init/initramfs.c linux-3.11.10/init/initramfs.c +--- linux-3.11.10.orig/init/initramfs.c 2013-11-29 19:42:37.000000000 +0100 ++++ linux-3.11.10/init/initramfs.c 2014-03-15 18:42:01.586249887 +0100 +@@ -622,6 +622,9 @@ + */ + load_default_modules(); + } ++#ifdef CONFIG_DEVTMPFS_MOUNT ++ devtmpfs_mount("dev"); ++#endif + return 0; + } + rootfs_initcall(populate_rootfs); +diff -Nur linux-3.11.10.orig/init/main.c linux-3.11.10/init/main.c +--- linux-3.11.10.orig/init/main.c 2013-11-29 19:42:37.000000000 +0100 ++++ linux-3.11.10/init/main.c 2014-03-15 18:42:01.590249897 +0100 +@@ -886,6 +886,8 @@ if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) - printk(KERN_WARNING "Warning: unable to open an initial console.\n"); + pr_err("Warning: unable to open an initial console.\n"); + printk(KERN_WARNING "Starting Linux (built with OpenADK).\n"); + (void) sys_dup(0); (void) sys_dup(0); /* +@@ -894,7 +896,7 @@ + */ + + if (!ramdisk_execute_command) +- ramdisk_execute_command = "/init"; ++ ramdisk_execute_command = "/sbin/init"; + + if (sys_access((const char __user *) ramdisk_execute_command, 0) != 0) { + ramdisk_execute_command = NULL; diff --git a/target/linux/patches/3.12.13/startup.patch b/target/linux/patches/3.12.13/startup.patch deleted file mode 100644 index 4dccae8c1..000000000 --- a/target/linux/patches/3.12.13/startup.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nur linux-3.7.3.orig/init/main.c linux-3.7.3/init/main.c ---- linux-3.7.3.orig/init/main.c 2013-01-17 17:47:40.000000000 +0100 -+++ linux-3.7.3/init/main.c 2013-01-19 15:08:13.000000000 +0100 -@@ -879,6 +880,8 @@ - if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) - printk(KERN_WARNING "Warning: unable to open an initial console.\n"); - -+ printk(KERN_WARNING "Starting Linux (built with OpenADK).\n"); -+ - (void) sys_dup(0); - (void) sys_dup(0); - /* diff --git a/target/linux/patches/3.12.13/bsd-compatibility.patch b/target/linux/patches/3.12.14/bsd-compatibility.patch index b954b658f..b954b658f 100644 --- a/target/linux/patches/3.12.13/bsd-compatibility.patch +++ b/target/linux/patches/3.12.14/bsd-compatibility.patch diff --git a/target/linux/patches/3.12.13/defaults.patch b/target/linux/patches/3.12.14/defaults.patch index 6cdca084e..6cdca084e 100644 --- a/target/linux/patches/3.12.13/defaults.patch +++ b/target/linux/patches/3.12.14/defaults.patch diff --git a/target/linux/patches/3.12.13/disable-netfilter.patch b/target/linux/patches/3.12.14/disable-netfilter.patch index 7b1ca013a..7b1ca013a 100644 --- a/target/linux/patches/3.12.13/disable-netfilter.patch +++ b/target/linux/patches/3.12.14/disable-netfilter.patch diff --git a/target/linux/patches/3.12.13/export-symbol-for-exmap.patch b/target/linux/patches/3.12.14/export-symbol-for-exmap.patch index 4f0fc8449..4f0fc8449 100644 --- a/target/linux/patches/3.12.13/export-symbol-for-exmap.patch +++ b/target/linux/patches/3.12.14/export-symbol-for-exmap.patch diff --git a/target/linux/patches/3.12.13/gemalto.patch b/target/linux/patches/3.12.14/gemalto.patch index 65f7af1d7..65f7af1d7 100644 --- a/target/linux/patches/3.12.13/gemalto.patch +++ b/target/linux/patches/3.12.14/gemalto.patch diff --git a/target/linux/patches/3.12.13/lemote-rfkill.patch b/target/linux/patches/3.12.14/lemote-rfkill.patch index a61488434..a61488434 100644 --- a/target/linux/patches/3.12.13/lemote-rfkill.patch +++ b/target/linux/patches/3.12.14/lemote-rfkill.patch diff --git a/target/linux/patches/3.12.13/microblaze-ethernet.patch b/target/linux/patches/3.12.14/microblaze-ethernet.patch index 742ab477e..742ab477e 100644 --- a/target/linux/patches/3.12.13/microblaze-ethernet.patch +++ b/target/linux/patches/3.12.14/microblaze-ethernet.patch diff --git a/target/linux/patches/3.12.13/microblaze-setup.patch b/target/linux/patches/3.12.14/microblaze-setup.patch index 43815f274..43815f274 100644 --- a/target/linux/patches/3.12.13/microblaze-setup.patch +++ b/target/linux/patches/3.12.14/microblaze-setup.patch diff --git a/target/linux/patches/3.12.13/mips-lzo-fix.patch b/target/linux/patches/3.12.14/mips-lzo-fix.patch index 0740bdc6a..0740bdc6a 100644 --- a/target/linux/patches/3.12.13/mips-lzo-fix.patch +++ b/target/linux/patches/3.12.14/mips-lzo-fix.patch diff --git a/target/linux/patches/3.12.13/mtd-rootfs.patch b/target/linux/patches/3.12.14/mtd-rootfs.patch index 775d5fc80..775d5fc80 100644 --- a/target/linux/patches/3.12.13/mtd-rootfs.patch +++ b/target/linux/patches/3.12.14/mtd-rootfs.patch diff --git a/target/linux/patches/3.12.13/non-static.patch b/target/linux/patches/3.12.14/non-static.patch index a967703d0..a967703d0 100644 --- a/target/linux/patches/3.12.13/non-static.patch +++ b/target/linux/patches/3.12.14/non-static.patch diff --git a/target/linux/patches/3.12.13/ppc64-missing-zlib.patch b/target/linux/patches/3.12.14/ppc64-missing-zlib.patch index c6e0616be..c6e0616be 100644 --- a/target/linux/patches/3.12.13/ppc64-missing-zlib.patch +++ b/target/linux/patches/3.12.14/ppc64-missing-zlib.patch diff --git a/target/linux/patches/3.12.13/raspberry.patch b/target/linux/patches/3.12.14/raspberry.patch index c306f4faf..c306f4faf 100644 --- a/target/linux/patches/3.12.13/raspberry.patch +++ b/target/linux/patches/3.12.14/raspberry.patch diff --git a/target/linux/patches/3.12.14/startup.patch b/target/linux/patches/3.12.14/startup.patch new file mode 100644 index 000000000..4cd477da1 --- /dev/null +++ b/target/linux/patches/3.12.14/startup.patch @@ -0,0 +1,34 @@ +diff -Nur linux-3.12.13.orig/init/initramfs.c linux-3.12.13/init/initramfs.c +--- linux-3.12.13.orig/init/initramfs.c 2014-02-22 22:32:50.000000000 +0100 ++++ linux-3.12.13/init/initramfs.c 2014-03-15 18:09:39.040618589 +0100 +@@ -622,6 +622,9 @@ + */ + load_default_modules(); + } ++#ifdef CONFIG_DEVTMPFS_MOUNT ++ devtmpfs_mount("dev"); ++#endif + return 0; + } + rootfs_initcall(populate_rootfs); +diff -Nur linux-3.12.13.orig/init/main.c linux-3.12.13/init/main.c +--- linux-3.12.13.orig/init/main.c 2014-02-22 22:32:50.000000000 +0100 ++++ linux-3.12.13/init/main.c 2014-03-15 18:09:39.044618600 +0100 +@@ -888,6 +888,8 @@ + if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) + pr_err("Warning: unable to open an initial console.\n"); + ++ printk(KERN_WARNING "Starting Linux (built with OpenADK).\n"); ++ + (void) sys_dup(0); + (void) sys_dup(0); + /* +@@ -896,7 +898,7 @@ + */ + + if (!ramdisk_execute_command) +- ramdisk_execute_command = "/init"; ++ ramdisk_execute_command = "/sbin/init"; + + if (sys_access((const char __user *) ramdisk_execute_command, 0) != 0) { + ramdisk_execute_command = NULL; diff --git a/target/linux/patches/3.12.13/usb-defaults-off.patch b/target/linux/patches/3.12.14/usb-defaults-off.patch index 54dff2bd4..54dff2bd4 100644 --- a/target/linux/patches/3.12.13/usb-defaults-off.patch +++ b/target/linux/patches/3.12.14/usb-defaults-off.patch diff --git a/target/linux/patches/3.12.13/uuid.patch b/target/linux/patches/3.12.14/uuid.patch index ca23accdf..ca23accdf 100644 --- a/target/linux/patches/3.12.13/uuid.patch +++ b/target/linux/patches/3.12.14/uuid.patch diff --git a/target/linux/patches/3.12.13/vga-cons-default-off.patch b/target/linux/patches/3.12.14/vga-cons-default-off.patch index 08a57f783..08a57f783 100644 --- a/target/linux/patches/3.12.13/vga-cons-default-off.patch +++ b/target/linux/patches/3.12.14/vga-cons-default-off.patch diff --git a/target/linux/patches/3.12.13/wlan-cf.patch b/target/linux/patches/3.12.14/wlan-cf.patch index fc20759e2..fc20759e2 100644 --- a/target/linux/patches/3.12.13/wlan-cf.patch +++ b/target/linux/patches/3.12.14/wlan-cf.patch diff --git a/target/linux/patches/3.12.13/xargs.patch b/target/linux/patches/3.12.14/xargs.patch index 2c7b3df59..2c7b3df59 100644 --- a/target/linux/patches/3.12.13/xargs.patch +++ b/target/linux/patches/3.12.14/xargs.patch diff --git a/target/linux/patches/3.12.13/zlib-inflate.patch b/target/linux/patches/3.12.14/zlib-inflate.patch index 58e1f6d21..58e1f6d21 100644 --- a/target/linux/patches/3.12.13/zlib-inflate.patch +++ b/target/linux/patches/3.12.14/zlib-inflate.patch diff --git a/target/linux/patches/3.13.6/startup.patch b/target/linux/patches/3.13.6/startup.patch deleted file mode 100644 index be4ea469d..000000000 --- a/target/linux/patches/3.13.6/startup.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nur linux-3.13.3.orig/init/main.c linux-3.13.3/init/main.c ---- linux-3.13.3.orig/init/main.c 2014-02-13 23:00:14.000000000 +0100 -+++ linux-3.13.3/init/main.c 2014-02-17 11:35:14.000000000 +0100 -@@ -916,6 +917,8 @@ - if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) - pr_err("Warning: unable to open an initial console.\n"); - -+ printk(KERN_WARNING "Starting Linux (built with OpenADK).\n"); -+ - (void) sys_dup(0); - (void) sys_dup(0); - /* diff --git a/target/linux/patches/3.13.6/bsd-compatibility.patch b/target/linux/patches/3.13.7/bsd-compatibility.patch index b954b658f..b954b658f 100644 --- a/target/linux/patches/3.13.6/bsd-compatibility.patch +++ b/target/linux/patches/3.13.7/bsd-compatibility.patch diff --git a/target/linux/patches/3.13.6/defaults.patch b/target/linux/patches/3.13.7/defaults.patch index 6cdca084e..6cdca084e 100644 --- a/target/linux/patches/3.13.6/defaults.patch +++ b/target/linux/patches/3.13.7/defaults.patch diff --git a/target/linux/patches/3.13.6/disable-netfilter.patch b/target/linux/patches/3.13.7/disable-netfilter.patch index 7b1ca013a..7b1ca013a 100644 --- a/target/linux/patches/3.13.6/disable-netfilter.patch +++ b/target/linux/patches/3.13.7/disable-netfilter.patch diff --git a/target/linux/patches/3.13.6/export-symbol-for-exmap.patch b/target/linux/patches/3.13.7/export-symbol-for-exmap.patch index 4f0fc8449..4f0fc8449 100644 --- a/target/linux/patches/3.13.6/export-symbol-for-exmap.patch +++ b/target/linux/patches/3.13.7/export-symbol-for-exmap.patch diff --git a/target/linux/patches/3.13.7/fblogo.patch b/target/linux/patches/3.13.7/fblogo.patch new file mode 100644 index 000000000..cbbb4216f --- /dev/null +++ b/target/linux/patches/3.13.7/fblogo.patch @@ -0,0 +1,2097 @@ +diff -Nur linux-3.13.7.orig/Documentation/fb/00-INDEX linux-3.13.7/Documentation/fb/00-INDEX +--- linux-3.13.7.orig/Documentation/fb/00-INDEX 2014-03-24 05:45:42.000000000 +0100 ++++ linux-3.13.7/Documentation/fb/00-INDEX 2014-03-29 16:03:17.000000000 +0100 +@@ -21,6 +21,8 @@ + - info on the driver for EP93xx LCD controller. + fbcon.txt + - intro to and usage guide for the framebuffer console (fbcon). ++fbcondecor.txt ++ - info on the Framebuffer Console Decoration + framebuffer.txt + - introduction to frame buffer devices. + gxfb.txt +diff -Nur linux-3.13.7.orig/Documentation/fb/fbcondecor.txt linux-3.13.7/Documentation/fb/fbcondecor.txt +--- linux-3.13.7.orig/Documentation/fb/fbcondecor.txt 1970-01-01 01:00:00.000000000 +0100 ++++ linux-3.13.7/Documentation/fb/fbcondecor.txt 2014-03-29 16:03:17.000000000 +0100 +@@ -0,0 +1,207 @@ ++What is it? ++----------- ++ ++The framebuffer decorations are a kernel feature which allows displaying a ++background picture on selected consoles. ++ ++What do I need to get it to work? ++--------------------------------- ++ ++To get fbcondecor up-and-running you will have to: ++ 1) get a copy of splashutils [1] or a similar program ++ 2) get some fbcondecor themes ++ 3) build the kernel helper program ++ 4) build your kernel with the FB_CON_DECOR option enabled. ++ ++To get fbcondecor operational right after fbcon initialization is finished, you ++will have to include a theme and the kernel helper into your initramfs image. ++Please refer to splashutils documentation for instructions on how to do that. ++ ++[1] The splashutils package can be downloaded from: ++ http://github.com/alanhaggai/fbsplash ++ ++The userspace helper ++-------------------- ++ ++The userspace fbcondecor helper (by default: /sbin/fbcondecor_helper) is called by the ++kernel whenever an important event occurs and the kernel needs some kind of ++job to be carried out. Important events include console switches and video ++mode switches (the kernel requests background images and configuration ++parameters for the current console). The fbcondecor helper must be accessible at ++all times. If it's not, fbcondecor will be switched off automatically. ++ ++It's possible to set path to the fbcondecor helper by writing it to ++/proc/sys/kernel/fbcondecor. ++ ++***************************************************************************** ++ ++The information below is mostly technical stuff. There's probably no need to ++read it unless you plan to develop a userspace helper. ++ ++The fbcondecor protocol ++----------------------- ++ ++The fbcondecor protocol defines a communication interface between the kernel and ++the userspace fbcondecor helper. ++ ++The kernel side is responsible for: ++ ++ * rendering console text, using an image as a background (instead of a ++ standard solid color fbcon uses), ++ * accepting commands from the user via ioctls on the fbcondecor device, ++ * calling the userspace helper to set things up as soon as the fb subsystem ++ is initialized. ++ ++The userspace helper is responsible for everything else, including parsing ++configuration files, decompressing the image files whenever the kernel needs ++it, and communicating with the kernel if necessary. ++ ++The fbcondecor protocol specifies how communication is done in both ways: ++kernel->userspace and userspace->helper. ++ ++Kernel -> Userspace ++------------------- ++ ++The kernel communicates with the userspace helper by calling it and specifying ++the task to be done in a series of arguments. ++ ++The arguments follow the pattern: ++<fbcondecor protocol version> <command> <parameters> ++ ++All commands defined in fbcondecor protocol v2 have the following parameters: ++ virtual console ++ framebuffer number ++ theme ++ ++Fbcondecor protocol v1 specified an additional 'fbcondecor mode' after the ++framebuffer number. Fbcondecor protocol v1 is deprecated and should not be used. ++ ++Fbcondecor protocol v2 specifies the following commands: ++ ++getpic ++------ ++ The kernel issues this command to request image data. It's up to the ++ userspace helper to find a background image appropriate for the specified ++ theme and the current resolution. The userspace helper should respond by ++ issuing the FBIOCONDECOR_SETPIC ioctl. ++ ++init ++---- ++ The kernel issues this command after the fbcondecor device is created and ++ the fbcondecor interface is initialized. Upon receiving 'init', the userspace ++ helper should parse the kernel command line (/proc/cmdline) or otherwise ++ decide whether fbcondecor is to be activated. ++ ++ To activate fbcondecor on the first console the helper should issue the ++ FBIOCONDECOR_SETCFG, FBIOCONDECOR_SETPIC and FBIOCONDECOR_SETSTATE commands, ++ in the above-mentioned order. ++ ++ When the userspace helper is called in an early phase of the boot process ++ (right after the initialization of fbcon), no filesystems will be mounted. ++ The helper program should mount sysfs and then create the appropriate ++ framebuffer, fbcondecor and tty0 devices (if they don't already exist) to get ++ current display settings and to be able to communicate with the kernel side. ++ It should probably also mount the procfs to be able to parse the kernel ++ command line parameters. ++ ++ Note that the console sem is not held when the kernel calls fbcondecor_helper ++ with the 'init' command. The fbcondecor helper should perform all ioctls with ++ origin set to FBCON_DECOR_IO_ORIG_USER. ++ ++modechange ++---------- ++ The kernel issues this command on a mode change. The helper's response should ++ be similar to the response to the 'init' command. Note that this time the ++ console sem is held and all ioctls must be performed with origin set to ++ FBCON_DECOR_IO_ORIG_KERNEL. ++ ++ ++Userspace -> Kernel ++------------------- ++ ++Userspace programs can communicate with fbcondecor via ioctls on the ++fbcondecor device. These ioctls are to be used by both the userspace helper ++(called only by the kernel) and userspace configuration tools (run by the users). ++ ++The fbcondecor helper should set the origin field to FBCON_DECOR_IO_ORIG_KERNEL ++when doing the appropriate ioctls. All userspace configuration tools should ++use FBCON_DECOR_IO_ORIG_USER. Failure to set the appropriate value in the origin ++field when performing ioctls from the kernel helper will most likely result ++in a console deadlock. ++ ++FBCON_DECOR_IO_ORIG_KERNEL instructs fbcondecor not to try to acquire the console ++semaphore. Not surprisingly, FBCON_DECOR_IO_ORIG_USER instructs it to acquire ++the console sem. ++ ++The framebuffer console decoration provides the following ioctls (all defined in ++linux/fb.h): ++ ++FBIOCONDECOR_SETPIC ++description: loads a background picture for a virtual console ++argument: struct fbcon_decor_iowrapper*; data: struct fb_image* ++notes: ++If called for consoles other than the current foreground one, the picture data ++will be ignored. ++ ++If the current virtual console is running in a 8-bpp mode, the cmap substruct ++of fb_image has to be filled appropriately: start should be set to 16 (first ++16 colors are reserved for fbcon), len to a value <= 240 and red, green and ++blue should point to valid cmap data. The transp field is ingored. The fields ++dx, dy, bg_color, fg_color in fb_image are ignored as well. ++ ++FBIOCONDECOR_SETCFG ++description: sets the fbcondecor config for a virtual console ++argument: struct fbcon_decor_iowrapper*; data: struct vc_decor* ++notes: The structure has to be filled with valid data. ++ ++FBIOCONDECOR_GETCFG ++description: gets the fbcondecor config for a virtual console ++argument: struct fbcon_decor_iowrapper*; data: struct vc_decor* ++ ++FBIOCONDECOR_SETSTATE ++description: sets the fbcondecor state for a virtual console ++argument: struct fbcon_decor_iowrapper*; data: unsigned int* ++ values: 0 = disabled, 1 = enabled. ++ ++FBIOCONDECOR_GETSTATE ++description: gets the fbcondecor state for a virtual console ++argument: struct fbcon_decor_iowrapper*; data: unsigned int* ++ values: as in FBIOCONDECOR_SETSTATE ++ ++Info on used structures: ++ ++Definition of struct vc_decor can be found in linux/console_decor.h. It's ++heavily commented. Note that the 'theme' field should point to a string ++no longer than FBCON_DECOR_THEME_LEN. When FBIOCONDECOR_GETCFG call is ++performed, the theme field should point to a char buffer of length ++FBCON_DECOR_THEME_LEN. ++ ++Definition of struct fbcon_decor_iowrapper can be found in linux/fb.h. ++The fields in this struct have the following meaning: ++ ++vc: ++Virtual console number. ++ ++origin: ++Specifies if the ioctl is performed as a response to a kernel request. The ++fbcondecor helper should set this field to FBCON_DECOR_IO_ORIG_KERNEL, userspace ++programs should set it to FBCON_DECOR_IO_ORIG_USER. This field is necessary to ++avoid console semaphore deadlocks. ++ ++data: ++Pointer to a data structure appropriate for the performed ioctl. Type of ++the data struct is specified in the ioctls description. ++ ++***************************************************************************** ++ ++Credit ++------ ++ ++Original 'bootsplash' project & implementation by: ++ Volker Poplawski <volker@poplawski.de>, Stefan Reinauer <stepan@suse.de>, ++ Steffen Winterfeldt <snwint@suse.de>, Michael Schroeder <mls@suse.de>, ++ Ken Wimer <wimer@suse.de>. ++ ++Fbcondecor, fbcondecor protocol design, current implementation & docs by: ++ Michal Januszewski <michalj+fbcondecor@gmail.com> ++ +diff -Nur linux-3.13.7.orig/drivers/Makefile linux-3.13.7/drivers/Makefile +--- linux-3.13.7.orig/drivers/Makefile 2014-03-24 05:45:42.000000000 +0100 ++++ linux-3.13.7/drivers/Makefile 2014-03-29 16:03:17.000000000 +0100 +@@ -17,6 +17,10 @@ + obj-$(CONFIG_PCI) += pci/ + obj-$(CONFIG_PARISC) += parisc/ + obj-$(CONFIG_RAPIDIO) += rapidio/ ++# tty/ comes before char/ so that the VT console is the boot-time ++# default. ++obj-y += tty/ ++obj-y += char/ + obj-y += video/ + obj-y += idle/ + +@@ -42,11 +46,6 @@ + # reset controllers early, since gpu drivers might rely on them to initialize + obj-$(CONFIG_RESET_CONTROLLER) += reset/ + +-# tty/ comes before char/ so that the VT console is the boot-time +-# default. +-obj-y += tty/ +-obj-y += char/ +- + # gpu/ comes after char for AGP vs DRM startup + obj-y += gpu/ + +diff -Nur linux-3.13.7.orig/drivers/video/Kconfig linux-3.13.7/drivers/video/Kconfig +--- linux-3.13.7.orig/drivers/video/Kconfig 2014-03-24 05:45:42.000000000 +0100 ++++ linux-3.13.7/drivers/video/Kconfig 2014-03-29 16:03:17.000000000 +0100 +@@ -1231,7 +1231,6 @@ + select FB_CFB_FILLRECT + select FB_CFB_COPYAREA + select FB_CFB_IMAGEBLIT +- select FB_TILEBLITTING + select FB_MACMODES if PPC_PMAC + ---help--- + Say Y here if you have a Matrox Millennium, Matrox Millennium II, +diff -Nur linux-3.13.7.orig/drivers/video/console/Kconfig linux-3.13.7/drivers/video/console/Kconfig +--- linux-3.13.7.orig/drivers/video/console/Kconfig 2014-03-24 05:45:42.000000000 +0100 ++++ linux-3.13.7/drivers/video/console/Kconfig 2014-03-29 16:03:17.000000000 +0100 +@@ -125,6 +125,19 @@ + such that other users of the framebuffer will remain normally + oriented. + ++config FB_CON_DECOR ++ bool "Support for the Framebuffer Console Decorations" ++ depends on FRAMEBUFFER_CONSOLE=y && !FB_TILEBLITTING ++ default n ++ ---help--- ++ This option enables support for framebuffer console decorations which ++ makes it possible to display images in the background of the system ++ consoles. Note that userspace utilities are necessary in order to take ++ advantage of these features. Refer to Documentation/fb/fbcondecor.txt ++ for more information. ++ ++ If unsure, say N. ++ + config STI_CONSOLE + bool "STI text console" + depends on PARISC +diff -Nur linux-3.13.7.orig/drivers/video/console/Makefile linux-3.13.7/drivers/video/console/Makefile +--- linux-3.13.7.orig/drivers/video/console/Makefile 2014-03-24 05:45:42.000000000 +0100 ++++ linux-3.13.7/drivers/video/console/Makefile 2014-03-29 16:03:17.000000000 +0100 +@@ -16,4 +16,5 @@ + fbcon_ccw.o + endif + ++obj-$(CONFIG_FB_CON_DECOR) += fbcondecor.o cfbcondecor.o + obj-$(CONFIG_FB_STI) += sticore.o +diff -Nur linux-3.13.7.orig/drivers/video/console/bitblit.c linux-3.13.7/drivers/video/console/bitblit.c +--- linux-3.13.7.orig/drivers/video/console/bitblit.c 2014-03-24 05:45:42.000000000 +0100 ++++ linux-3.13.7/drivers/video/console/bitblit.c 2014-03-29 16:03:17.000000000 +0100 +@@ -18,6 +18,7 @@ + #include <linux/console.h> + #include <asm/types.h> + #include "fbcon.h" ++#include "fbcondecor.h" + + /* + * Accelerated handlers. +@@ -55,6 +56,13 @@ + area.height = height * vc->vc_font.height; + area.width = width * vc->vc_font.width; + ++ if (fbcon_decor_active(info, vc)) { ++ area.sx += vc->vc_decor.tx; ++ area.sy += vc->vc_decor.ty; ++ area.dx += vc->vc_decor.tx; ++ area.dy += vc->vc_decor.ty; ++ } ++ + info->fbops->fb_copyarea(info, &area); + } + +@@ -380,11 +388,15 @@ + cursor.image.depth = 1; + cursor.rop = ROP_XOR; + +- if (info->fbops->fb_cursor) +- err = info->fbops->fb_cursor(info, &cursor); ++ if (fbcon_decor_active(info, vc)) { ++ fbcon_decor_cursor(info, &cursor); ++ } else { ++ if (info->fbops->fb_cursor) ++ err = info->fbops->fb_cursor(info, &cursor); + +- if (err) +- soft_cursor(info, &cursor); ++ if (err) ++ soft_cursor(info, &cursor); ++ } + + ops->cursor_reset = 0; + } +diff -Nur linux-3.13.7.orig/drivers/video/console/cfbcondecor.c linux-3.13.7/drivers/video/console/cfbcondecor.c +--- linux-3.13.7.orig/drivers/video/console/cfbcondecor.c 1970-01-01 01:00:00.000000000 +0100 ++++ linux-3.13.7/drivers/video/console/cfbcondecor.c 2014-03-29 16:03:17.000000000 +0100 +@@ -0,0 +1,471 @@ ++/* ++ * linux/drivers/video/cfbcon_decor.c -- Framebuffer decor render functions ++ * ++ * Copyright (C) 2004 Michal Januszewski <michalj+fbcondecor@gmail.com> ++ * ++ * Code based upon "Bootdecor" (C) 2001-2003 ++ * Volker Poplawski <volker@poplawski.de>, ++ * Stefan Reinauer <stepan@suse.de>, ++ * Steffen Winterfeldt <snwint@suse.de>, ++ * Michael Schroeder <mls@suse.de>, ++ * Ken Wimer <wimer@suse.de>. ++ * ++ * This file is subject to the terms and conditions of the GNU General Public ++ * License. See the file COPYING in the main directory of this archive for ++ * more details. ++ */ ++#include <linux/module.h> ++#include <linux/types.h> ++#include <linux/fb.h> ++#include <linux/selection.h> ++#include <linux/slab.h> ++#include <linux/vt_kern.h> ++#include <asm/irq.h> ++ ++#include "fbcon.h" ++#include "fbcondecor.h" ++ ++#define parse_pixel(shift,bpp,type) \ ++ do { \ ++ if (d & (0x80 >> (shift))) \ ++ dd2[(shift)] = fgx; \ ++ else \ ++ dd2[(shift)] = transparent ? *(type *)decor_src : bgx; \ ++ decor_src += (bpp); \ ++ } while (0) \ ++ ++extern int get_color(struct vc_data *vc, struct fb_info *info, ++ u16 c, int is_fg); ++ ++void fbcon_decor_fix_pseudo_pal(struct fb_info *info, struct vc_data *vc) ++{ ++ int i, j, k; ++ int minlen = min(min(info->var.red.length, info->var.green.length), ++ info->var.blue.length); ++ u32 col; ++ ++ for (j = i = 0; i < 16; i++) { ++ k = color_table[i]; ++ ++ col = ((vc->vc_palette[j++] >> (8-minlen)) ++ << info->var.red.offset); ++ col |= ((vc->vc_palette[j++] >> (8-minlen)) ++ << info->var.green.offset); ++ col |= ((vc->vc_palette[j++] >> (8-minlen)) ++ << info->var.blue.offset); ++ ((u32 *)info->pseudo_palette)[k] = col; ++ } ++} ++ ++void fbcon_decor_renderc(struct fb_info *info, int ypos, int xpos, int height, ++ int width, u8* src, u32 fgx, u32 bgx, u8 transparent) ++{ ++ unsigned int x, y; ++ u32 dd; ++ int bytespp = ((info->var.bits_per_pixel + 7) >> 3); ++ unsigned int d = ypos * info->fix.line_length + xpos * bytespp; ++ unsigned int ds = (ypos * info->var.xres + xpos) * bytespp; ++ u16 dd2[4]; ++ ++ u8* decor_src = (u8 *)(info->bgdecor.data + ds); ++ u8* dst = (u8 *)(info->screen_base + d); ++ ++ if ((ypos + height) > info->var.yres || (xpos + width) > info->var.xres) ++ return; ++ ++ for (y = 0; y < height; y++) { ++ switch (info->var.bits_per_pixel) { ++ ++ case 32: ++ for (x = 0; x < width; x++) { ++ ++ if ((x & 7) == 0) ++ d = *src++; ++ if (d & 0x80) ++ dd = fgx; ++ else ++ dd = transparent ? ++ *(u32 *)decor_src : bgx; ++ ++ d <<= 1; ++ decor_src += 4; ++ fb_writel(dd, dst); ++ dst += 4; ++ } ++ break; ++ case 24: ++ for (x = 0; x < width; x++) { ++ ++ if ((x & 7) == 0) ++ d = *src++; ++ if (d & 0x80) ++ dd = fgx; ++ else ++ dd = transparent ? ++ (*(u32 *)decor_src & 0xffffff) : bgx; ++ ++ d <<= 1; ++ decor_src += 3; ++#ifdef __LITTLE_ENDIAN ++ fb_writew(dd & 0xffff, dst); ++ dst += 2; ++ fb_writeb((dd >> 16), dst); ++#else ++ fb_writew(dd >> 8, dst); ++ dst += 2; ++ fb_writeb(dd & 0xff, dst); ++#endif ++ dst++; ++ } ++ break; ++ case 16: ++ for (x = 0; x < width; x += 2) { ++ if ((x & 7) == 0) ++ d = *src++; ++ ++ parse_pixel(0, 2, u16); ++ parse_pixel(1, 2, u16); ++#ifdef __LITTLE_ENDIAN ++ dd = dd2[0] | (dd2[1] << 16); ++#else ++ dd = dd2[1] | (dd2[0] << 16); ++#endif ++ d <<= 2; ++ fb_writel(dd, dst); ++ dst += 4; ++ } ++ break; ++ ++ case 8: ++ for (x = 0; x < width; x += 4) { ++ if ((x & 7) == 0) ++ d = *src++; ++ ++ parse_pixel(0, 1, u8); ++ parse_pixel(1, 1, u8); ++ parse_pixel(2, 1, u8); ++ parse_pixel(3, 1, u8); ++ ++#ifdef __LITTLE_ENDIAN ++ dd = dd2[0] | (dd2[1] << 8) | (dd2[2] << 16) | (dd2[3] << 24); ++#else ++ dd = dd2[3] | (dd2[2] << 8) | (dd2[1] << 16) | (dd2[0] << 24); ++#endif ++ d <<= 4; ++ fb_writel(dd, dst); ++ dst += 4; ++ } ++ } ++ ++ dst += info->fix.line_length - width * bytespp; ++ decor_src += (info->var.xres - width) * bytespp; ++ } ++} ++ ++#define cc2cx(a) \ ++ ((info->fix.visual == FB_VISUAL_TRUECOLOR || \ ++ info->fix.visual == FB_VISUAL_DIRECTCOLOR) ? \ ++ ((u32*)info->pseudo_palette)[a] : a) ++ ++void fbcon_decor_putcs(struct vc_data *vc, struct fb_info *info, ++ const unsigned short *s, int count, int yy, int xx) ++{ ++ unsigned short charmask = vc->vc_hi_font_mask ? 0x1ff : 0xff; ++ struct fbcon_ops *ops = info->fbcon_par; ++ int fg_color, bg_color, transparent; ++ u8 *src; ++ u32 bgx, fgx; ++ u16 c = scr_readw(s); ++ ++ fg_color = get_color(vc, info, c, 1); ++ bg_color = get_color(vc, info, c, 0); ++ ++ /* Don't paint the background image if console is blanked */ ++ transparent = ops->blank_state ? 0 : ++ (vc->vc_decor.bg_color == bg_color); ++ ++ xx = xx * vc->vc_font.width + vc->vc_decor.tx; ++ yy = yy * vc->vc_font.height + vc->vc_decor.ty; ++ ++ fgx = cc2cx(fg_color); ++ bgx = cc2cx(bg_color); ++ ++ while (count--) { ++ c = scr_readw(s++); ++ src = vc->vc_font.data + (c & charmask) * vc->vc_font.height * ++ ((vc->vc_font.width + 7) >> 3); ++ ++ fbcon_decor_renderc(info, yy, xx, vc->vc_font.height, ++ vc->vc_font.width, src, fgx, bgx, transparent); ++ xx += vc->vc_font.width; ++ } ++} ++ ++void fbcon_decor_cursor(struct fb_info *info, struct fb_cursor *cursor) ++{ ++ int i; ++ unsigned int dsize, s_pitch; ++ struct fbcon_ops *ops = info->fbcon_par; ++ struct vc_data* vc; ++ u8 *src; ++ ++ /* we really don't need any cursors while the console is blanked */ ++ if (info->state != FBINFO_STATE_RUNNING || ops->blank_state) ++ return; ++ ++ vc = vc_cons[ops->currcon].d; ++ ++ src = kmalloc(64 + sizeof(struct fb_image), GFP_ATOMIC); ++ if (!src) ++ return; ++ ++ s_pitch = (cursor->image.width + 7) >> 3; ++ dsize = s_pitch * cursor->image.height; ++ if (cursor->enable) { ++ switch (cursor->rop) { ++ case ROP_XOR: ++ for (i = 0; i < dsize; i++) ++ src[i] = cursor->image.data[i] ^ cursor->mask[i]; ++ break; ++ case ROP_COPY: ++ default: ++ for (i = 0; i < dsize; i++) ++ src[i] = cursor->image.data[i] & cursor->mask[i]; ++ break; ++ } ++ } else ++ memcpy(src, cursor->image.data, dsize); ++ ++ fbcon_decor_renderc(info, ++ cursor->image.dy + vc->vc_decor.ty, ++ cursor->image.dx + vc->vc_decor.tx, ++ cursor->image.height, ++ cursor->image.width, ++ (u8*)src, ++ cc2cx(cursor->image.fg_color), ++ cc2cx(cursor->image.bg_color), ++ cursor->image.bg_color == vc->vc_decor.bg_color); ++ ++ kfree(src); ++} ++ ++static void decorset(u8 *dst, int height, int width, int dstbytes, ++ u32 bgx, int bpp) ++{ ++ int i; ++ ++ if (bpp == 8) ++ bgx |= bgx << 8; ++ if (bpp == 16 || bpp == 8) ++ bgx |= bgx << 16; ++ ++ while (height-- > 0) { ++ u8 *p = dst; ++ ++ switch (bpp) { ++ ++ case 32: ++ for (i=0; i < width; i++) { ++ fb_writel(bgx, p); p += 4; ++ } ++ break; ++ case 24: ++ for (i=0; i < width; i++) { ++#ifdef __LITTLE_ENDIAN ++ fb_writew((bgx & 0xffff),(u16*)p); p += 2; ++ fb_writeb((bgx >> 16),p++); ++#else ++ fb_writew((bgx >> 8),(u16*)p); p += 2; ++ fb_writeb((bgx & 0xff),p++); ++#endif ++ } ++ case 16: ++ for (i=0; i < width/4; i++) { ++ fb_writel(bgx,p); p += 4; ++ fb_writel(bgx,p); p += 4; ++ } ++ if (width & 2) { ++ fb_writel(bgx,p); p += 4; ++ } ++ if (width & 1) ++ fb_writew(bgx,(u16*)p); ++ break; ++ case 8: ++ for (i=0; i < width/4; i++) { ++ fb_writel(bgx,p); p += 4; ++ } ++ ++ if (width & 2) { ++ fb_writew(bgx,p); p += 2; ++ } ++ if (width & 1) ++ fb_writeb(bgx,(u8*)p); ++ break; ++ ++ } ++ dst += dstbytes; ++ } ++} ++ ++void fbcon_decor_copy(u8 *dst, u8 *src, int height, int width, int linebytes, ++ int srclinebytes, int bpp) ++{ ++ int i; ++ ++ while (height-- > 0) { ++ u32 *p = (u32 *)dst; ++ u32 *q = (u32 *)src; ++ ++ switch (bpp) { ++ ++ case 32: ++ for (i=0; i < width; i++) ++ fb_writel(*q++, p++); ++ break; ++ case 24: ++ for (i=0; i < (width*3/4); i++) ++ fb_writel(*q++, p++); ++ if ((width*3) % 4) { ++ if (width & 2) { ++ fb_writeb(*(u8*)q, (u8*)p); ++ } else if (width & 1) { ++ fb_writew(*(u16*)q, (u16*)p); ++ fb_writeb(*(u8*)((u16*)q+1),(u8*)((u16*)p+2)); ++ } ++ } ++ break; ++ case 16: ++ for (i=0; i < width/4; i++) { ++ fb_writel(*q++, p++); ++ fb_writel(*q++, p++); ++ } ++ if (width & 2) ++ fb_writel(*q++, p++); ++ if (width & 1) ++ fb_writew(*(u16*)q, (u16*)p); ++ break; ++ case 8: ++ for (i=0; i < width/4; i++) ++ fb_writel(*q++, p++); ++ ++ if (width & 2) { ++ fb_writew(*(u16*)q, (u16*)p); ++ q = (u32*) ((u16*)q + 1); ++ p = (u32*) ((u16*)p + 1); ++ } ++ if (width & 1) ++ fb_writeb(*(u8*)q, (u8*)p); ++ break; ++ } ++ ++ dst += linebytes; ++ src += srclinebytes; ++ } ++} ++ ++static void decorfill(struct fb_info *info, int sy, int sx, int height, ++ int width) ++{ ++ int bytespp = ((info->var.bits_per_pixel + 7) >> 3); ++ int d = sy * info->fix.line_length + sx * bytespp; ++ int ds = (sy * info->var.xres + sx) * bytespp; ++ ++ fbcon_decor_copy((u8 *)(info->screen_base + d), (u8 *)(info->bgdecor.data + ds), ++ height, width, info->fix.line_length, info->var.xres * bytespp, ++ info->var.bits_per_pixel); ++} ++ ++void fbcon_decor_clear(struct vc_data *vc, struct fb_info *info, int sy, int sx, ++ int height, int width) ++{ ++ int bgshift = (vc->vc_hi_font_mask) ? 13 : 12; ++ struct fbcon_ops *ops = info->fbcon_par; ++ u8 *dst; ++ int transparent, bg_color = attr_bgcol_ec(bgshift, vc, info); ++ ++ transparent = (vc->vc_decor.bg_color == bg_color); ++ sy = sy * vc->vc_font.height + vc->vc_decor.ty; ++ sx = sx * vc->vc_font.width + vc->vc_decor.tx; ++ height *= vc->vc_font.height; ++ width *= vc->vc_font.width; ++ ++ /* Don't paint the background image if console is blanked */ ++ if (transparent && !ops->blank_state) { ++ decorfill(info, sy, sx, height, width); ++ } else { ++ dst = (u8 *)(info->screen_base + sy * info->fix.line_length + ++ sx * ((info->var.bits_per_pixel + 7) >> 3)); ++ decorset(dst, height, width, info->fix.line_length, cc2cx(bg_color), ++ info->var.bits_per_pixel); ++ } ++} ++ ++void fbcon_decor_clear_margins(struct vc_data *vc, struct fb_info *info, ++ int bottom_only) ++{ ++ unsigned int tw = vc->vc_cols*vc->vc_font.width; ++ unsigned int th = vc->vc_rows*vc->vc_font.height; ++ ++ if (!bottom_only) { ++ /* top margin */ ++ decorfill(info, 0, 0, vc->vc_decor.ty, info->var.xres); ++ /* left margin */ ++ decorfill(info, vc->vc_decor.ty, 0, th, vc->vc_decor.tx); ++ /* right margin */ ++ decorfill(info, vc->vc_decor.ty, vc->vc_decor.tx + tw, th, ++ info->var.xres - vc->vc_decor.tx - tw); ++ } ++ decorfill(info, vc->vc_decor.ty + th, 0, ++ info->var.yres - vc->vc_decor.ty - th, info->var.xres); ++} ++ ++void fbcon_decor_bmove_redraw(struct vc_data *vc, struct fb_info *info, int y, ++ int sx, int dx, int width) ++{ ++ u16 *d = (u16 *) (vc->vc_origin + vc->vc_size_row * y + dx * 2); ++ u16 *s = d + (dx - sx); ++ u16 *start = d; ++ u16 *ls = d; ++ u16 *le = d + width; ++ u16 c; ++ int x = dx; ++ u16 attr = 1; ++ ++ do { ++ c = scr_readw(d); ++ if (attr != (c & 0xff00)) { ++ attr = c & 0xff00; ++ if (d > start) { ++ fbcon_decor_putcs(vc, info, start, d - start, y, x); ++ x += d - start; ++ start = d; ++ } ++ } ++ if (s >= ls && s < le && c == scr_readw(s)) { ++ if (d > start) { ++ fbcon_decor_putcs(vc, info, start, d - start, y, x); ++ x += d - start + 1; ++ start = d + 1; ++ } else { ++ x++; ++ start++; ++ } ++ } ++ s++; ++ d++; ++ } while (d < le); ++ if (d > start) ++ fbcon_decor_putcs(vc, info, start, d - start, y, x); ++} ++ ++void fbcon_decor_blank(struct vc_data *vc, struct fb_info *info, int blank) ++{ ++ if (blank) { ++ decorset((u8 *)info->screen_base, info->var.yres, info->var.xres, ++ info->fix.line_length, 0, info->var.bits_per_pixel); ++ } else { ++ update_screen(vc); ++ fbcon_decor_clear_margins(vc, info, 0); ++ } ++} ++ +diff -Nur linux-3.13.7.orig/drivers/video/console/fbcon.c linux-3.13.7/drivers/video/console/fbcon.c +--- linux-3.13.7.orig/drivers/video/console/fbcon.c 2014-03-24 05:45:42.000000000 +0100 ++++ linux-3.13.7/drivers/video/console/fbcon.c 2014-03-29 16:03:17.000000000 +0100 +@@ -79,6 +79,7 @@ + #include <asm/irq.h> + + #include "fbcon.h" ++#include "fbcondecor.h" + + #ifdef FBCONDEBUG + # define DPRINTK(fmt, args...) printk(KERN_DEBUG "%s: " fmt, __func__ , ## args) +@@ -94,7 +95,7 @@ + + static struct display fb_display[MAX_NR_CONSOLES]; + +-static signed char con2fb_map[MAX_NR_CONSOLES]; ++signed char con2fb_map[MAX_NR_CONSOLES]; + static signed char con2fb_map_boot[MAX_NR_CONSOLES]; + + static int logo_lines; +@@ -286,7 +287,7 @@ + !vt_force_oops_output(vc); + } + +-static int get_color(struct vc_data *vc, struct fb_info *info, ++int get_color(struct vc_data *vc, struct fb_info *info, + u16 c, int is_fg) + { + int depth = fb_get_color_depth(&info->var, &info->fix); +@@ -551,6 +552,9 @@ + info_idx = -1; + } else { + fbcon_has_console_bind = 1; ++#ifdef CONFIG_FB_CON_DECOR ++ fbcon_decor_init(); ++#endif + } + + return err; +@@ -1007,6 +1011,12 @@ + rows = FBCON_SWAP(ops->rotate, info->var.yres, info->var.xres); + cols /= vc->vc_font.width; + rows /= vc->vc_font.height; ++ ++ if (fbcon_decor_active(info, vc)) { ++ cols = vc->vc_decor.twidth / vc->vc_font.width; ++ rows = vc->vc_decor.theight / vc->vc_font.height; ++ } ++ + vc_resize(vc, cols, rows); + + DPRINTK("mode: %s\n", info->fix.id); +@@ -1036,7 +1046,7 @@ + cap = info->flags; + + if (vc != svc || logo_shown == FBCON_LOGO_DONTSHOW || +- (info->fix.type == FB_TYPE_TEXT)) ++ (info->fix.type == FB_TYPE_TEXT) || fbcon_decor_active(info, vc)) + logo = 0; + + if (var_to_display(p, &info->var, info)) +@@ -1260,6 +1270,11 @@ + fbcon_clear_margins(vc, 0); + } + ++ if (fbcon_decor_active(info, vc)) { ++ fbcon_decor_clear(vc, info, sy, sx, height, width); ++ return; ++ } ++ + /* Split blits that cross physical y_wrap boundary */ + + y_break = p->vrows - p->yscroll; +@@ -1279,10 +1294,15 @@ + struct display *p = &fb_display[vc->vc_num]; + struct fbcon_ops *ops = info->fbcon_par; + +- if (!fbcon_is_inactive(vc, info)) +- ops->putcs(vc, info, s, count, real_y(p, ypos), xpos, +- get_color(vc, info, scr_readw(s), 1), +- get_color(vc, info, scr_readw(s), 0)); ++ if (!fbcon_is_inactive(vc, info)) { ++ ++ if (fbcon_decor_active(info, vc)) ++ fbcon_decor_putcs(vc, info, s, count, ypos, xpos); ++ else ++ ops->putcs(vc, info, s, count, real_y(p, ypos), xpos, ++ get_color(vc, info, scr_readw(s), 1), ++ get_color(vc, info, scr_readw(s), 0)); ++ } + } + + static void fbcon_putc(struct vc_data *vc, int c, int ypos, int xpos) +@@ -1298,8 +1318,13 @@ + struct fb_info *info = registered_fb[con2fb_map[vc->vc_num]]; + struct fbcon_ops *ops = info->fbcon_par; + +- if (!fbcon_is_inactive(vc, info)) +- ops->clear_margins(vc, info, bottom_only); ++ if (!fbcon_is_inactive(vc, info)) { ++ if (fbcon_decor_active(info, vc)) { ++ fbcon_decor_clear_margins(vc, info, bottom_only); ++ } else { ++ ops->clear_margins(vc, info, bottom_only); ++ } ++ } + } + + static void fbcon_cursor(struct vc_data *vc, int mode) +@@ -1819,7 +1844,7 @@ + count = vc->vc_rows; + if (softback_top) + fbcon_softback_note(vc, t, count); +- if (logo_shown >= 0) ++ if (logo_shown >= 0 || fbcon_decor_active(info, vc)) + goto redraw_up; + switch (p->scrollmode) { + case SCROLL_MOVE: +@@ -1912,6 +1937,8 @@ + count = vc->vc_rows; + if (logo_shown >= 0) + goto redraw_down; ++ if (fbcon_decor_active(info, vc)) ++ goto redraw_down; + switch (p->scrollmode) { + case SCROLL_MOVE: + fbcon_redraw_blit(vc, info, p, b - 1, b - t - count, +@@ -2060,6 +2087,13 @@ + } + return; + } ++ ++ if (fbcon_decor_active(info, vc) && sy == dy && height == 1) { ++ /* must use slower redraw bmove to keep background pic intact */ ++ fbcon_decor_bmove_redraw(vc, info, sy, sx, dx, width); ++ return; ++ } ++ + ops->bmove(vc, info, real_y(p, sy), sx, real_y(p, dy), dx, + height, width); + } +@@ -2130,8 +2164,8 @@ + var.yres = virt_h * virt_fh; + x_diff = info->var.xres - var.xres; + y_diff = info->var.yres - var.yres; +- if (x_diff < 0 || x_diff > virt_fw || +- y_diff < 0 || y_diff > virt_fh) { ++ if ((x_diff < 0 || x_diff > virt_fw || ++ y_diff < 0 || y_diff > virt_fh) && !vc->vc_decor.state) { + const struct fb_videomode *mode; + + DPRINTK("attempting resize %ix%i\n", var.xres, var.yres); +@@ -2167,6 +2201,21 @@ + + info = registered_fb[con2fb_map[vc->vc_num]]; + ops = info->fbcon_par; ++ prev_console = ops->currcon; ++ if (prev_console != -1) ++ old_info = registered_fb[con2fb_map[prev_console]]; ++ ++#ifdef CONFIG_FB_CON_DECOR ++ if (!fbcon_decor_active_vc(vc) && info->fix.visual == FB_VISUAL_DIRECTCOLOR) { ++ struct vc_data *vc_curr = vc_cons[prev_console].d; ++ if (vc_curr && fbcon_decor_active_vc(vc_curr)) { ++ /* Clear the screen to avoid displaying funky colors during ++ * palette updates. */ ++ memset((u8*)info->screen_base + info->fix.line_length * info->var.yoffset, ++ 0, info->var.yres * info->fix.line_length); ++ } ++ } ++#endif + + if (softback_top) { + if (softback_lines) +@@ -2185,9 +2234,6 @@ + logo_shown = FBCON_LOGO_CANSHOW; + } + +- prev_console = ops->currcon; +- if (prev_console != -1) +- old_info = registered_fb[con2fb_map[prev_console]]; + /* + * FIXME: If we have multiple fbdev's loaded, we need to + * update all info->currcon. Perhaps, we can place this +@@ -2231,6 +2277,18 @@ + fbcon_del_cursor_timer(old_info); + } + ++ if (fbcon_decor_active_vc(vc)) { ++ struct vc_data *vc_curr = vc_cons[prev_console].d; ++ ++ if (!vc_curr->vc_decor.theme || ++ strcmp(vc->vc_decor.theme, vc_curr->vc_decor.theme) || ++ (fbcon_decor_active_nores(info, vc_curr) && ++ !fbcon_decor_active(info, vc_curr))) { ++ fbcon_decor_disable(vc, 0); ++ fbcon_decor_call_helper("modechange", vc->vc_num); ++ } ++ } ++ + if (fbcon_is_inactive(vc, info) || + ops->blank_state != FB_BLANK_UNBLANK) + fbcon_del_cursor_timer(info); +@@ -2339,15 +2397,20 @@ + } + } + +- if (!fbcon_is_inactive(vc, info)) { ++ if (!fbcon_is_inactive(vc, info)) { + if (ops->blank_state != blank) { + ops->blank_state = blank; + fbcon_cursor(vc, blank ? CM_ERASE : CM_DRAW); + ops->cursor_flash = (!blank); + +- if (!(info->flags & FBINFO_MISC_USEREVENT)) +- if (fb_blank(info, blank)) +- fbcon_generic_blank(vc, info, blank); ++ if (!(info->flags & FBINFO_MISC_USEREVENT)) { ++ if (fb_blank(info, blank)) { ++ if (fbcon_decor_active(info, vc)) ++ fbcon_decor_blank(vc, info, blank); ++ else ++ fbcon_generic_blank(vc, info, blank); ++ } ++ } + } + + if (!blank) +@@ -2522,13 +2585,22 @@ + } + + if (resize) { ++ /* reset wrap/pan */ + int cols, rows; + + cols = FBCON_SWAP(ops->rotate, info->var.xres, info->var.yres); + rows = FBCON_SWAP(ops->rotate, info->var.yres, info->var.xres); ++ ++ if (fbcon_decor_active(info, vc)) { ++ info->var.xoffset = info->var.yoffset = p->yscroll = 0; ++ cols = vc->vc_decor.twidth; ++ rows = vc->vc_decor.theight; ++ } + cols /= w; + rows /= h; ++ + vc_resize(vc, cols, rows); ++ + if (CON_IS_VISIBLE(vc) && softback_buf) + fbcon_update_softback(vc); + } else if (CON_IS_VISIBLE(vc) +@@ -2657,7 +2729,11 @@ + int i, j, k, depth; + u8 val; + +- if (fbcon_is_inactive(vc, info)) ++ if (fbcon_is_inactive(vc, info) ++#ifdef CONFIG_FB_CON_DECOR ++ || vc->vc_num != fg_console ++#endif ++ ) + return -EINVAL; + + if (!CON_IS_VISIBLE(vc)) +@@ -2683,14 +2759,56 @@ + } else + fb_copy_cmap(fb_default_cmap(1 << depth), &palette_cmap); + +- return fb_set_cmap(&palette_cmap, info); ++ if (fbcon_decor_active(info, vc_cons[fg_console].d) && ++ info->fix.visual == FB_VISUAL_DIRECTCOLOR) { ++ ++ u16 *red, *green, *blue; ++ int minlen = min(min(info->var.red.length, info->var.green.length), ++ info->var.blue.length); ++ int h; ++ ++ struct fb_cmap cmap = { ++ .start = 0, ++ .len = (1 << minlen), ++ .red = NULL, ++ .green = NULL, ++ .blue = NULL, ++ .transp = NULL ++ }; ++ ++ red = kmalloc(256 * sizeof(u16) * 3, GFP_KERNEL); ++ ++ if (!red) ++ goto out; ++ ++ green = red + 256; ++ blue = green + 256; ++ cmap.red = red; ++ cmap.green = green; ++ cmap.blue = blue; ++ ++ for (i = 0; i < cmap.len; i++) { ++ red[i] = green[i] = blue[i] = (0xffff * i)/(cmap.len-1); ++ } ++ ++ h = fb_set_cmap(&cmap, info); ++ fbcon_decor_fix_pseudo_pal(info, vc_cons[fg_console].d); ++ kfree(red); ++ ++ return h; ++ ++ } else if (fbcon_decor_active(info, vc_cons[fg_console].d) && ++ info->var.bits_per_pixel == 8 && info->bgdecor.cmap.red != NULL) ++ fb_set_cmap(&info->bgdecor.cmap, info); ++ ++out: return fb_set_cmap(&palette_cmap, info); + } + + static u16 *fbcon_screen_pos(struct vc_data *vc, int offset) + { + unsigned long p; + int line; +- ++ + if (vc->vc_num != fg_console || !softback_lines) + return (u16 *) (vc->vc_origin + offset); + line = offset / vc->vc_size_row; +@@ -2909,7 +3027,14 @@ + rows = FBCON_SWAP(ops->rotate, info->var.yres, info->var.xres); + cols /= vc->vc_font.width; + rows /= vc->vc_font.height; +- vc_resize(vc, cols, rows); ++ ++ if (!fbcon_decor_active_nores(info, vc)) { ++ vc_resize(vc, cols, rows); ++ } else { ++ fbcon_decor_disable(vc, 0); ++ fbcon_decor_call_helper("modechange", vc->vc_num); ++ } ++ + updatescrollmode(p, info, vc); + scrollback_max = 0; + scrollback_current = 0; +@@ -2954,7 +3079,9 @@ + rows = FBCON_SWAP(ops->rotate, info->var.yres, info->var.xres); + cols /= vc->vc_font.width; + rows /= vc->vc_font.height; +- vc_resize(vc, cols, rows); ++ if (!fbcon_decor_active_nores(info, vc)) { ++ vc_resize(vc, cols, rows); ++ } + } + + if (fg != -1) +@@ -3570,6 +3697,7 @@ + } + } + ++ fbcon_decor_exit(); + fbcon_has_exited = 1; + } + +diff -Nur linux-3.13.7.orig/drivers/video/console/fbcondecor.c linux-3.13.7/drivers/video/console/fbcondecor.c +--- linux-3.13.7.orig/drivers/video/console/fbcondecor.c 1970-01-01 01:00:00.000000000 +0100 ++++ linux-3.13.7/drivers/video/console/fbcondecor.c 2014-03-29 16:03:17.000000000 +0100 +@@ -0,0 +1,555 @@ ++/* ++ * linux/drivers/video/console/fbcondecor.c -- Framebuffer console decorations ++ * ++ * Copyright (C) 2004-2009 Michal Januszewski <michalj+fbcondecor@gmail.com> ++ * ++ * Code based upon "Bootsplash" (C) 2001-2003 ++ * Volker Poplawski <volker@poplawski.de>, ++ * Stefan Reinauer <stepan@suse.de>, ++ * Steffen Winterfeldt <snwint@suse.de>, ++ * Michael Schroeder <mls@suse.de>, ++ * Ken Wimer <wimer@suse.de>. ++ * ++ * Compat ioctl support by Thorsten Klein <TK@Thorsten-Klein.de>. ++ * ++ * This file is subject to the terms and conditions of the GNU General Public ++ * License. See the file COPYING in the main directory of this archive for ++ * more details. ++ * ++ */ ++#include <linux/module.h> ++#include <linux/kernel.h> ++#include <linux/string.h> ++#include <linux/types.h> ++#include <linux/fb.h> ++#include <linux/vt_kern.h> ++#include <linux/vmalloc.h> ++#include <linux/unistd.h> ++#include <linux/syscalls.h> ++#include <linux/init.h> ++#include <linux/proc_fs.h> ++#include <linux/workqueue.h> ++#include <linux/kmod.h> ++#include <linux/miscdevice.h> ++#include <linux/device.h> ++#include <linux/fs.h> ++#include <linux/compat.h> ++#include <linux/console.h> ++ ++#include <asm/uaccess.h> ++#include <asm/irq.h> ++ ++#include "fbcon.h" ++#include "fbcondecor.h" ++ ++extern signed char con2fb_map[]; ++static int fbcon_decor_enable(struct vc_data *vc); ++char fbcon_decor_path[KMOD_PATH_LEN] = "/sbin/fbcondecor_helper"; ++static int initialized = 0; ++ ++int fbcon_decor_call_helper(char* cmd, unsigned short vc) ++{ ++ char *envp[] = { ++ "HOME=/", ++ "PATH=/sbin:/bin", ++ NULL ++ }; ++ ++ char tfb[5]; ++ char tcons[5]; ++ unsigned char fb = (int) con2fb_map[vc]; ++ ++ char *argv[] = { ++ fbcon_decor_path, ++ "2", ++ cmd, ++ tcons, ++ tfb, ++ vc_cons[vc].d->vc_decor.theme, ++ NULL ++ }; ++ ++ snprintf(tfb,5,"%d",fb); ++ snprintf(tcons,5,"%d",vc); ++ ++ return call_usermodehelper(fbcon_decor_path, argv, envp, UMH_WAIT_EXEC); ++} ++ ++/* Disables fbcondecor on a virtual console; called with console sem held. */ ++int fbcon_decor_disable(struct vc_data *vc, unsigned char redraw) ++{ ++ struct fb_info* info; ++ ++ if (!vc->vc_decor.state) ++ return -EINVAL; ++ ++ info = registered_fb[(int) con2fb_map[vc->vc_num]]; ++ ++ if (info == NULL) ++ return -EINVAL; ++ ++ vc->vc_decor.state = 0; ++ vc_resize(vc, info->var.xres / vc->vc_font.width, ++ info->var.yres / vc->vc_font.height); ++ ++ if (fg_console == vc->vc_num && redraw) { ++ redraw_screen(vc, 0); ++ update_region(vc, vc->vc_origin + ++ vc->vc_size_row * vc->vc_top, ++ vc->vc_size_row * (vc->vc_bottom - vc->vc_top) / 2); ++ } ++ ++ printk(KERN_INFO "fbcondecor: switched decor state to 'off' on console %d\n", ++ vc->vc_num); ++ ++ return 0; ++} ++ ++/* Enables fbcondecor on a virtual console; called with console sem held. */ ++static int fbcon_decor_enable(struct vc_data *vc) ++{ ++ struct fb_info* info; ++ ++ info = registered_fb[(int) con2fb_map[vc->vc_num]]; ++ ++ if (vc->vc_decor.twidth == 0 || vc->vc_decor.theight == 0 || ++ info == NULL || vc->vc_decor.state || (!info->bgdecor.data && ++ vc->vc_num == fg_console)) ++ return -EINVAL; ++ ++ vc->vc_decor.state = 1; ++ vc_resize(vc, vc->vc_decor.twidth / vc->vc_font.width, ++ vc->vc_decor.theight / vc->vc_font.height); ++ ++ if (fg_console == vc->vc_num) { ++ redraw_screen(vc, 0); ++ update_region(vc, vc->vc_origin + ++ vc->vc_size_row * vc->vc_top, ++ vc->vc_size_row * (vc->vc_bottom - vc->vc_top) / 2); ++ fbcon_decor_clear_margins(vc, info, 0); ++ } ++ ++ printk(KERN_INFO "fbcondecor: switched decor state to 'on' on console %d\n", ++ vc->vc_num); ++ ++ return 0; ++} ++ ++static inline int fbcon_decor_ioctl_dosetstate(struct vc_data *vc, unsigned int state, unsigned char origin) ++{ ++ int ret; ++ ++// if (origin == FBCON_DECOR_IO_ORIG_USER) ++ console_lock(); ++ if (!state) ++ ret = fbcon_decor_disable(vc, 1); ++ else ++ ret = fbcon_decor_enable(vc); ++// if (origin == FBCON_DECOR_IO_ORIG_USER) ++ console_unlock(); ++ ++ return ret; ++} ++ ++static inline void fbcon_decor_ioctl_dogetstate(struct vc_data *vc, unsigned int *state) ++{ ++ *state = vc->vc_decor.state; ++} ++ ++static int fbcon_decor_ioctl_dosetcfg(struct vc_data *vc, struct vc_decor *cfg, unsigned char origin) ++{ ++ struct fb_info *info; ++ int len; ++ char *tmp; ++ ++ info = registered_fb[(int) con2fb_map[vc->vc_num]]; ++ ++ if (info == NULL || !cfg->twidth || !cfg->theight || ++ cfg->tx + cfg->twidth > info->var.xres || ++ cfg->ty + cfg->theight > info->var.yres) ++ return -EINVAL; ++ ++ len = strlen_user(cfg->theme); ++ if (!len || len > FBCON_DECOR_THEME_LEN) ++ return -EINVAL; ++ tmp = kmalloc(len, GFP_KERNEL); ++ if (!tmp) ++ return -ENOMEM; ++ if (copy_from_user(tmp, (void __user *)cfg->theme, len)) ++ return -EFAULT; ++ cfg->theme = tmp; ++ cfg->state = 0; ++ ++ /* If this ioctl is a response to a request from kernel, the console sem ++ * is already held; we also don't need to disable decor because either the ++ * new config and background picture will be successfully loaded, and the ++ * decor will stay on, or in case of a failure it'll be turned off in fbcon. */ ++// if (origin == FBCON_DECOR_IO_ORIG_USER) { ++ console_lock(); ++ if (vc->vc_decor.state) ++ fbcon_decor_disable(vc, 1); ++// } ++ ++ if (vc->vc_decor.theme) ++ kfree(vc->vc_decor.theme); ++ ++ vc->vc_decor = *cfg; ++ ++// if (origin == FBCON_DECOR_IO_ORIG_USER) ++ console_unlock(); ++ ++ printk(KERN_INFO "fbcondecor: console %d using theme '%s'\n", ++ vc->vc_num, vc->vc_decor.theme); ++ return 0; ++} ++ ++static int fbcon_decor_ioctl_dogetcfg(struct vc_data *vc, struct vc_decor *decor) ++{ ++ char __user *tmp; ++ ++ tmp = decor->theme; ++ *decor = vc->vc_decor; ++ decor->theme = tmp; ++ ++ if (vc->vc_decor.theme) { ++ if (copy_to_user(tmp, vc->vc_decor.theme, strlen(vc->vc_decor.theme) + 1)) ++ return -EFAULT; ++ } else ++ if (put_user(0, tmp)) ++ return -EFAULT; ++ ++ return 0; ++} ++ ++static int fbcon_decor_ioctl_dosetpic(struct vc_data *vc, struct fb_image *img, unsigned char origin) ++{ ++ struct fb_info *info; ++ int len; ++ u8 *tmp; ++ ++ if (vc->vc_num != fg_console) ++ return -EINVAL; ++ ++ info = registered_fb[(int) con2fb_map[vc->vc_num]]; ++ ++ if (info == NULL) ++ return -EINVAL; ++ ++ if (img->width != info->var.xres || img->height != info->var.yres) { ++ printk(KERN_ERR "fbcondecor: picture dimensions mismatch\n"); ++ printk(KERN_ERR "%dx%d vs %dx%d\n", img->width, img->height, info->var.xres, info->var.yres); ++ return -EINVAL; ++ } ++ ++ if (img->depth != info->var.bits_per_pixel) { ++ printk(KERN_ERR "fbcondecor: picture depth mismatch\n"); ++ return -EINVAL; ++ } ++ ++ if (img->depth == 8) { ++ if (!img->cmap.len || !img->cmap.red || !img->cmap.green || ++ !img->cmap.blue) ++ return -EINVAL; ++ ++ tmp = vmalloc(img->cmap.len * 3 * 2); ++ if (!tmp) ++ return -ENOMEM; ++ ++ if (copy_from_user(tmp, ++ (void __user*)img->cmap.red, (img->cmap.len << 1)) || ++ copy_from_user(tmp + (img->cmap.len << 1), ++ (void __user*)img->cmap.green, (img->cmap.len << 1)) || ++ copy_from_user(tmp + (img->cmap.len << 2), ++ (void __user*)img->cmap.blue, (img->cmap.len << 1))) { ++ vfree(tmp); ++ return -EFAULT; ++ } ++ ++ img->cmap.transp = NULL; ++ img->cmap.red = (u16*)tmp; ++ img->cmap.green = img->cmap.red + img->cmap.len; ++ img->cmap.blue = img->cmap.green + img->cmap.len; ++ } else { ++ img->cmap.red = NULL; ++ } ++ ++ len = ((img->depth + 7) >> 3) * img->width * img->height; ++ ++ /* ++ * Allocate an additional byte so that we never go outside of the ++ * buffer boundaries in the rendering functions in a 24 bpp mode. ++ */ ++ tmp = vmalloc(len + 1); ++ ++ if (!tmp) ++ goto out; ++ ++ if (copy_from_user(tmp, (void __user*)img->data, len)) ++ goto out; ++ ++ img->data = tmp; ++ ++ /* If this ioctl is a response to a request from kernel, the console sem ++ * is already held. */ ++// if (origin == FBCON_DECOR_IO_ORIG_USER) ++ console_lock(); ++ ++ if (info->bgdecor.data) ++ vfree((u8*)info->bgdecor.data); ++ if (info->bgdecor.cmap.red) ++ vfree(info->bgdecor.cmap.red); ++ ++ info->bgdecor = *img; ++ ++ if (fbcon_decor_active_vc(vc) && fg_console == vc->vc_num) { ++ redraw_screen(vc, 0); ++ update_region(vc, vc->vc_origin + ++ vc->vc_size_row * vc->vc_top, ++ vc->vc_size_row * (vc->vc_bottom - vc->vc_top) / 2); ++ fbcon_decor_clear_margins(vc, info, 0); ++ } ++ ++// if (origin == FBCON_DECOR_IO_ORIG_USER) ++ console_unlock(); ++ ++ return 0; ++ ++out: if (img->cmap.red) ++ vfree(img->cmap.red); ++ ++ if (tmp) ++ vfree(tmp); ++ return -ENOMEM; ++} ++ ++static long fbcon_decor_ioctl(struct file *filp, u_int cmd, u_long arg) ++{ ++ struct fbcon_decor_iowrapper __user *wrapper = (void __user*) arg; ++ struct vc_data *vc = NULL; ++ unsigned short vc_num = 0; ++ unsigned char origin = 0; ++ void __user *data = NULL; ++ ++ if (!access_ok(VERIFY_READ, wrapper, ++ sizeof(struct fbcon_decor_iowrapper))) ++ return -EFAULT; ++ ++ __get_user(vc_num, &wrapper->vc); ++ __get_user(origin, &wrapper->origin); ++ __get_user(data, &wrapper->data); ++ ++ if (!vc_cons_allocated(vc_num)) ++ return -EINVAL; ++ ++ vc = vc_cons[vc_num].d; ++ ++ switch (cmd) { ++ case FBIOCONDECOR_SETPIC: ++ { ++ struct fb_image img; ++ if (copy_from_user(&img, (struct fb_image __user *)data, sizeof(struct fb_image))) ++ return -EFAULT; ++ ++ return fbcon_decor_ioctl_dosetpic(vc, &img, origin); ++ } ++ case FBIOCONDECOR_SETCFG: ++ { ++ struct vc_decor cfg; ++ if (copy_from_user(&cfg, (struct vc_decor __user *)data, sizeof(struct vc_decor))) ++ return -EFAULT; ++ ++ return fbcon_decor_ioctl_dosetcfg(vc, &cfg, origin); ++ } ++ case FBIOCONDECOR_GETCFG: ++ { ++ int rval; ++ struct vc_decor cfg; ++ ++ if (copy_from_user(&cfg, (struct vc_decor __user *)data, sizeof(struct vc_decor))) ++ return -EFAULT; ++ ++ rval = fbcon_decor_ioctl_dogetcfg(vc, &cfg); ++ ++ if (copy_to_user(data, &cfg, sizeof(struct vc_decor))) ++ return -EFAULT; ++ return rval; ++ } ++ case FBIOCONDECOR_SETSTATE: ++ { ++ unsigned int state = 0; ++ if (get_user(state, (unsigned int __user *)data)) ++ return -EFAULT; ++ return fbcon_decor_ioctl_dosetstate(vc, state, origin); ++ } ++ case FBIOCONDECOR_GETSTATE: ++ { ++ unsigned int state = 0; ++ fbcon_decor_ioctl_dogetstate(vc, &state); ++ return put_user(state, (unsigned int __user *)data); ++ } ++ ++ default: ++ return -ENOIOCTLCMD; ++ } ++} ++ ++#ifdef CONFIG_COMPAT ++ ++static long fbcon_decor_compat_ioctl(struct file *filp, unsigned int cmd, unsigned long arg) { ++ ++ struct fbcon_decor_iowrapper32 __user *wrapper = (void __user *)arg; ++ struct vc_data *vc = NULL; ++ unsigned short vc_num = 0; ++ unsigned char origin = 0; ++ compat_uptr_t data_compat = 0; ++ void __user *data = NULL; ++ ++ if (!access_ok(VERIFY_READ, wrapper, ++ sizeof(struct fbcon_decor_iowrapper32))) ++ return -EFAULT; ++ ++ __get_user(vc_num, &wrapper->vc); ++ __get_user(origin, &wrapper->origin); ++ __get_user(data_compat, &wrapper->data); ++ data = compat_ptr(data_compat); ++ ++ if (!vc_cons_allocated(vc_num)) ++ return -EINVAL; ++ ++ vc = vc_cons[vc_num].d; ++ ++ switch (cmd) { ++ case FBIOCONDECOR_SETPIC32: ++ { ++ struct fb_image32 img_compat; ++ struct fb_image img; ++ ++ if (copy_from_user(&img_compat, (struct fb_image32 __user *)data, sizeof(struct fb_image32))) ++ return -EFAULT; ++ ++ fb_image_from_compat(img, img_compat); ++ ++ return fbcon_decor_ioctl_dosetpic(vc, &img, origin); ++ } ++ ++ case FBIOCONDECOR_SETCFG32: ++ { ++ struct vc_decor32 cfg_compat; ++ struct vc_decor cfg; ++ ++ if (copy_from_user(&cfg_compat, (struct vc_decor32 __user *)data, sizeof(struct vc_decor32))) ++ return -EFAULT; ++ ++ vc_decor_from_compat(cfg, cfg_compat); ++ ++ return fbcon_decor_ioctl_dosetcfg(vc, &cfg, origin); ++ } ++ ++ case FBIOCONDECOR_GETCFG32: ++ { ++ int rval; ++ struct vc_decor32 cfg_compat; ++ struct vc_decor cfg; ++ ++ if (copy_from_user(&cfg_compat, (struct vc_decor32 __user *)data, sizeof(struct vc_decor32))) ++ return -EFAULT; ++ cfg.theme = compat_ptr(cfg_compat.theme); ++ ++ rval = fbcon_decor_ioctl_dogetcfg(vc, &cfg); ++ ++ vc_decor_to_compat(cfg_compat, cfg); ++ ++ if (copy_to_user((struct vc_decor32 __user *)data, &cfg_compat, sizeof(struct vc_decor32))) ++ return -EFAULT; ++ return rval; ++ } ++ ++ case FBIOCONDECOR_SETSTATE32: ++ { ++ compat_uint_t state_compat = 0; ++ unsigned int state = 0; ++ ++ if (get_user(state_compat, (compat_uint_t __user *)data)) ++ return -EFAULT; ++ ++ state = (unsigned int)state_compat; ++ ++ return fbcon_decor_ioctl_dosetstate(vc, state, origin); ++ } ++ ++ case FBIOCONDECOR_GETSTATE32: ++ { ++ compat_uint_t state_compat = 0; ++ unsigned int state = 0; ++ ++ fbcon_decor_ioctl_dogetstate(vc, &state); ++ state_compat = (compat_uint_t)state; ++ ++ return put_user(state_compat, (compat_uint_t __user *)data); ++ } ++ ++ default: ++ return -ENOIOCTLCMD; ++ } ++} ++#else ++ #define fbcon_decor_compat_ioctl NULL ++#endif ++ ++static struct file_operations fbcon_decor_ops = { ++ .owner = THIS_MODULE, ++ .unlocked_ioctl = fbcon_decor_ioctl, ++ .compat_ioctl = fbcon_decor_compat_ioctl ++}; ++ ++static struct miscdevice fbcon_decor_dev = { ++ .minor = MISC_DYNAMIC_MINOR, ++ .name = "fbcondecor", ++ .fops = &fbcon_decor_ops ++}; ++ ++void fbcon_decor_reset() ++{ ++ int i; ++ ++ for (i = 0; i < num_registered_fb; i++) { ++ registered_fb[i]->bgdecor.data = NULL; ++ registered_fb[i]->bgdecor.cmap.red = NULL; ++ } ++ ++ for (i = 0; i < MAX_NR_CONSOLES && vc_cons[i].d; i++) { ++ vc_cons[i].d->vc_decor.state = vc_cons[i].d->vc_decor.twidth = ++ vc_cons[i].d->vc_decor.theight = 0; ++ vc_cons[i].d->vc_decor.theme = NULL; ++ } ++ ++ return; ++} ++ ++int fbcon_decor_init() ++{ ++ int i; ++ ++ fbcon_decor_reset(); ++ ++ if (initialized) ++ return 0; ++ ++ i = misc_register(&fbcon_decor_dev); ++ if (i) { ++ printk(KERN_ERR "fbcondecor: failed to register device\n"); ++ return i; ++ } ++ ++ fbcon_decor_call_helper("init", 0); ++ initialized = 1; ++ return 0; ++} ++ ++int fbcon_decor_exit(void) ++{ ++ fbcon_decor_reset(); ++ return 0; ++} ++ ++EXPORT_SYMBOL(fbcon_decor_path); +diff -Nur linux-3.13.7.orig/drivers/video/console/fbcondecor.h linux-3.13.7/drivers/video/console/fbcondecor.h +--- linux-3.13.7.orig/drivers/video/console/fbcondecor.h 1970-01-01 01:00:00.000000000 +0100 ++++ linux-3.13.7/drivers/video/console/fbcondecor.h 2014-03-29 21:17:27.000000000 +0100 +@@ -0,0 +1,79 @@ ++/* ++ * linux/drivers/video/console/fbcondecor.h -- Framebuffer Console Decoration headers ++ * ++ * Copyright (C) 2004 Michal Januszewski <michalj+fbcondecor@gmail.com> ++ * ++ */ ++ ++#ifndef __FBCON_DECOR_H ++#define __FBCON_DECOR_H ++ ++#ifndef _LINUX_FB_H ++#include <linux/fb.h> ++#endif ++ ++/* This is needed for vc_cons in fbcmap.c */ ++#include <linux/vt_kern.h> ++ ++struct fb_cursor; ++struct fb_info; ++struct vc_data; ++ ++#ifdef CONFIG_FB_CON_DECOR ++/* fbcondecor.c */ ++int fbcon_decor_init(void); ++void fbcon_decor_reset(void); ++int fbcon_decor_exit(void); ++int fbcon_decor_call_helper(char* cmd, unsigned short cons); ++int fbcon_decor_disable(struct vc_data *vc, unsigned char redraw); ++ ++/* cfbcondecor.c */ ++void fbcon_decor_putcs(struct vc_data *vc, struct fb_info *info, const unsigned short *s, int count, int yy, int xx); ++void fbcon_decor_cursor(struct fb_info *info, struct fb_cursor *cursor); ++void fbcon_decor_clear(struct vc_data *vc, struct fb_info *info, int sy, int sx, int height, int width); ++void fbcon_decor_clear_margins(struct vc_data *vc, struct fb_info *info, int bottom_only); ++void fbcon_decor_blank(struct vc_data *vc, struct fb_info *info, int blank); ++void fbcon_decor_bmove_redraw(struct vc_data *vc, struct fb_info *info, int y, int sx, int dx, int width); ++void fbcon_decor_copy(u8 *dst, u8 *src, int height, int width, int linebytes, int srclinesbytes, int bpp); ++void fbcon_decor_fix_pseudo_pal(struct fb_info *info, struct vc_data *vc); ++ ++/* vt.c */ ++void acquire_console_sem(void); ++void release_console_sem(void); ++void do_unblank_screen(int entering_gfx); ++ ++/* struct vc_data *y */ ++#define fbcon_decor_active_vc(y) (y->vc_decor.state && y->vc_decor.theme) ++ ++/* struct fb_info *x, struct vc_data *y */ ++#define fbcon_decor_active_nores(x,y) (x->bgdecor.data && fbcon_decor_active_vc(y)) ++ ++/* struct fb_info *x, struct vc_data *y */ ++#define fbcon_decor_active(x,y) (fbcon_decor_active_nores(x,y) && \ ++ x->bgdecor.width == x->var.xres && \ ++ x->bgdecor.height == x->var.yres && \ ++ x->bgdecor.depth == x->var.bits_per_pixel) ++ ++ ++#else /* CONFIG_FB_CON_DECOR */ ++ ++static inline void fbcon_decor_putcs(struct vc_data *vc, struct fb_info *info, const unsigned short *s, int count, int yy, int xx) {} ++static inline void fbcon_decor_putc(struct vc_data *vc, struct fb_info *info, int c, int ypos, int xpos) {} ++static inline void fbcon_decor_cursor(struct fb_info *info, struct fb_cursor *cursor) {} ++static inline void fbcon_decor_clear(struct vc_data *vc, struct fb_info *info, int sy, int sx, int height, int width) {} ++static inline void fbcon_decor_clear_margins(struct vc_data *vc, struct fb_info *info, int bottom_only) {} ++static inline void fbcon_decor_blank(struct vc_data *vc, struct fb_info *info, int blank) {} ++static inline void fbcon_decor_bmove_redraw(struct vc_data *vc, struct fb_info *info, int y, int sx, int dx, int width) {} ++static inline void fbcon_decor_fix_pseudo_pal(struct fb_info *info, struct vc_data *vc) {} ++static inline int fbcon_decor_call_helper(char* cmd, unsigned short cons) { return 0; } ++static inline int fbcon_decor_init(void) { return 0; } ++static inline int fbcon_decor_exit(void) { return 0; } ++static inline int fbcon_decor_disable(struct vc_data *vc, unsigned char redraw) { return 0; } ++ ++#define fbcon_decor_active_vc(y) (0) ++#define fbcon_decor_active_nores(x,y) (0) ++#define fbcon_decor_active(x,y) (0) ++ ++#endif /* CONFIG_FB_CON_DECOR */ ++ ++#endif /* __FBCON_DECOR_H */ +diff -Nur linux-3.13.7.orig/drivers/video/fbcmap.c linux-3.13.7/drivers/video/fbcmap.c +--- linux-3.13.7.orig/drivers/video/fbcmap.c 2014-03-24 05:45:42.000000000 +0100 ++++ linux-3.13.7/drivers/video/fbcmap.c 2014-03-29 16:03:17.000000000 +0100 +@@ -17,6 +17,8 @@ + #include <linux/slab.h> + #include <linux/uaccess.h> + ++#include "console/fbcondecor.h" ++ + static u16 red2[] __read_mostly = { + 0x0000, 0xaaaa + }; +@@ -249,14 +251,17 @@ + if (transp) + htransp = *transp++; + if (info->fbops->fb_setcolreg(start++, +- hred, hgreen, hblue, ++ hred, hgreen, hblue, + htransp, info)) + break; + } + } +- if (rc == 0) ++ if (rc == 0) { + fb_copy_cmap(cmap, &info->cmap); +- ++ if (fbcon_decor_active(info, vc_cons[fg_console].d) && ++ info->fix.visual == FB_VISUAL_DIRECTCOLOR) ++ fbcon_decor_fix_pseudo_pal(info, vc_cons[fg_console].d); ++ } + return rc; + } + +diff -Nur linux-3.13.7.orig/drivers/video/fbmem.c linux-3.13.7/drivers/video/fbmem.c +--- linux-3.13.7.orig/drivers/video/fbmem.c 2014-03-24 05:45:42.000000000 +0100 ++++ linux-3.13.7/drivers/video/fbmem.c 2014-03-29 16:03:17.000000000 +0100 +@@ -1250,15 +1250,6 @@ + u16 reserved[3]; + }; + +-struct fb_cmap32 { +- u32 start; +- u32 len; +- compat_caddr_t red; +- compat_caddr_t green; +- compat_caddr_t blue; +- compat_caddr_t transp; +-}; +- + static int fb_getput_cmap(struct fb_info *info, unsigned int cmd, + unsigned long arg) + { +diff -Nur linux-3.13.7.orig/include/linux/console_decor.h linux-3.13.7/include/linux/console_decor.h +--- linux-3.13.7.orig/include/linux/console_decor.h 1970-01-01 01:00:00.000000000 +0100 ++++ linux-3.13.7/include/linux/console_decor.h 2014-03-29 16:03:17.000000000 +0100 +@@ -0,0 +1,46 @@ ++#ifndef _LINUX_CONSOLE_DECOR_H_ ++#define _LINUX_CONSOLE_DECOR_H_ 1 ++ ++/* A structure used by the framebuffer console decorations (drivers/video/console/fbcondecor.c) */ ++struct vc_decor { ++ __u8 bg_color; /* The color that is to be treated as transparent */ ++ __u8 state; /* Current decor state: 0 = off, 1 = on */ ++ __u16 tx, ty; /* Top left corner coordinates of the text field */ ++ __u16 twidth, theight; /* Width and height of the text field */ ++ char* theme; ++}; ++ ++#ifdef __KERNEL__ ++#ifdef CONFIG_COMPAT ++#include <linux/compat.h> ++ ++struct vc_decor32 { ++ __u8 bg_color; /* The color that is to be treated as transparent */ ++ __u8 state; /* Current decor state: 0 = off, 1 = on */ ++ __u16 tx, ty; /* Top left corner coordinates of the text field */ ++ __u16 twidth, theight; /* Width and height of the text field */ ++ compat_uptr_t theme; ++}; ++ ++#define vc_decor_from_compat(to, from) \ ++ (to).bg_color = (from).bg_color; \ ++ (to).state = (from).state; \ ++ (to).tx = (from).tx; \ ++ (to).ty = (from).ty; \ ++ (to).twidth = (from).twidth; \ ++ (to).theight = (from).theight; \ ++ (to).theme = compat_ptr((from).theme) ++ ++#define vc_decor_to_compat(to, from) \ ++ (to).bg_color = (from).bg_color; \ ++ (to).state = (from).state; \ ++ (to).tx = (from).tx; \ ++ (to).ty = (from).ty; \ ++ (to).twidth = (from).twidth; \ ++ (to).theight = (from).theight; \ ++ (to).theme = ptr_to_compat((from).theme) ++ ++#endif /* CONFIG_COMPAT */ ++#endif /* __KERNEL__ */ ++ ++#endif +diff -Nur linux-3.13.7.orig/include/linux/console_struct.h linux-3.13.7/include/linux/console_struct.h +--- linux-3.13.7.orig/include/linux/console_struct.h 2014-03-24 05:45:42.000000000 +0100 ++++ linux-3.13.7/include/linux/console_struct.h 2014-03-29 16:03:17.000000000 +0100 +@@ -19,6 +19,7 @@ + struct vt_struct; + + #define NPAR 16 ++#include <linux/console_decor.h> + + struct vc_data { + struct tty_port port; /* Upper level data */ +@@ -107,6 +108,8 @@ + unsigned long vc_uni_pagedir; + unsigned long *vc_uni_pagedir_loc; /* [!] Location of uni_pagedir variable for this console */ + bool vc_panic_force_write; /* when oops/panic this VC can accept forced output/blanking */ ++ ++ struct vc_decor vc_decor; + /* additional information is in vt_kern.h */ + }; + +diff -Nur linux-3.13.7.orig/include/linux/fb.h linux-3.13.7/include/linux/fb.h +--- linux-3.13.7.orig/include/linux/fb.h 2014-03-24 05:45:42.000000000 +0100 ++++ linux-3.13.7/include/linux/fb.h 2014-03-29 16:03:17.000000000 +0100 +@@ -219,6 +219,34 @@ + }; + #endif + ++#ifdef __KERNEL__ ++#ifdef CONFIG_COMPAT ++struct fb_image32 { ++ __u32 dx; /* Where to place image */ ++ __u32 dy; ++ __u32 width; /* Size of image */ ++ __u32 height; ++ __u32 fg_color; /* Only used when a mono bitmap */ ++ __u32 bg_color; ++ __u8 depth; /* Depth of the image */ ++ const compat_uptr_t data; /* Pointer to image data */ ++ struct fb_cmap32 cmap; /* color map info */ ++}; ++ ++#define fb_image_from_compat(to, from) \ ++ (to).dx = (from).dx; \ ++ (to).dy = (from).dy; \ ++ (to).width = (from).width; \ ++ (to).height = (from).height; \ ++ (to).fg_color = (from).fg_color; \ ++ (to).bg_color = (from).bg_color; \ ++ (to).depth = (from).depth; \ ++ (to).data = compat_ptr((from).data); \ ++ fb_cmap_from_compat((to).cmap, (from).cmap) ++ ++#endif /* CONFIG_COMPAT */ ++#endif /* __KERNEL__ */ ++ + /* + * Frame buffer operations + * +@@ -489,6 +517,9 @@ + #define FBINFO_STATE_SUSPENDED 1 + u32 state; /* Hardware state i.e suspend */ + void *fbcon_par; /* fbcon use-only private area */ ++ ++ struct fb_image bgdecor; ++ + /* From here on everything is device dependent */ + void *par; + /* we need the PCI or similar aperture base/size not +diff -Nur linux-3.13.7.orig/include/uapi/linux/fb.h linux-3.13.7/include/uapi/linux/fb.h +--- linux-3.13.7.orig/include/uapi/linux/fb.h 2014-03-24 05:45:42.000000000 +0100 ++++ linux-3.13.7/include/uapi/linux/fb.h 2014-03-29 16:03:17.000000000 +0100 +@@ -8,6 +8,25 @@ + + #define FB_MAX 32 /* sufficient for now */ + ++struct fbcon_decor_iowrapper ++{ ++ unsigned short vc; /* Virtual console */ ++ unsigned char origin; /* Point of origin of the request */ ++ void *data; ++}; ++ ++#ifdef __KERNEL__ ++#ifdef CONFIG_COMPAT ++#include <linux/compat.h> ++struct fbcon_decor_iowrapper32 ++{ ++ unsigned short vc; /* Virtual console */ ++ unsigned char origin; /* Point of origin of the request */ ++ compat_uptr_t data; ++}; ++#endif /* CONFIG_COMPAT */ ++#endif /* __KERNEL__ */ ++ + /* ioctls + 0x46 is 'F' */ + #define FBIOGET_VSCREENINFO 0x4600 +@@ -35,6 +54,25 @@ + #define FBIOGET_DISPINFO 0x4618 + #define FBIO_WAITFORVSYNC _IOW('F', 0x20, __u32) + ++#define FBIOCONDECOR_SETCFG _IOWR('F', 0x19, struct fbcon_decor_iowrapper) ++#define FBIOCONDECOR_GETCFG _IOR('F', 0x1A, struct fbcon_decor_iowrapper) ++#define FBIOCONDECOR_SETSTATE _IOWR('F', 0x1B, struct fbcon_decor_iowrapper) ++#define FBIOCONDECOR_GETSTATE _IOR('F', 0x1C, struct fbcon_decor_iowrapper) ++#define FBIOCONDECOR_SETPIC _IOWR('F', 0x1D, struct fbcon_decor_iowrapper) ++#ifdef __KERNEL__ ++#ifdef CONFIG_COMPAT ++#define FBIOCONDECOR_SETCFG32 _IOWR('F', 0x19, struct fbcon_decor_iowrapper32) ++#define FBIOCONDECOR_GETCFG32 _IOR('F', 0x1A, struct fbcon_decor_iowrapper32) ++#define FBIOCONDECOR_SETSTATE32 _IOWR('F', 0x1B, struct fbcon_decor_iowrapper32) ++#define FBIOCONDECOR_GETSTATE32 _IOR('F', 0x1C, struct fbcon_decor_iowrapper32) ++#define FBIOCONDECOR_SETPIC32 _IOWR('F', 0x1D, struct fbcon_decor_iowrapper32) ++#endif /* CONFIG_COMPAT */ ++#endif /* __KERNEL__ */ ++ ++#define FBCON_DECOR_THEME_LEN 128 /* Maximum lenght of a theme name */ ++#define FBCON_DECOR_IO_ORIG_KERNEL 0 /* Kernel ioctl origin */ ++#define FBCON_DECOR_IO_ORIG_USER 1 /* User ioctl origin */ ++ + #define FB_TYPE_PACKED_PIXELS 0 /* Packed Pixels */ + #define FB_TYPE_PLANES 1 /* Non interleaved planes */ + #define FB_TYPE_INTERLEAVED_PLANES 2 /* Interleaved planes */ +@@ -277,6 +315,29 @@ + __u32 reserved[4]; /* Reserved for future compatibility */ + }; + ++#ifdef __KERNEL__ ++#ifdef CONFIG_COMPAT ++struct fb_cmap32 { ++ __u32 start; ++ __u32 len; /* Number of entries */ ++ compat_uptr_t red; /* Red values */ ++ compat_uptr_t green; ++ compat_uptr_t blue; ++ compat_uptr_t transp; /* transparency, can be NULL */ ++}; ++ ++#define fb_cmap_from_compat(to, from) \ ++ (to).start = (from).start; \ ++ (to).len = (from).len; \ ++ (to).red = compat_ptr((from).red); \ ++ (to).green = compat_ptr((from).green); \ ++ (to).blue = compat_ptr((from).blue); \ ++ (to).transp = compat_ptr((from).transp) ++ ++#endif /* CONFIG_COMPAT */ ++#endif /* __KERNEL__ */ ++ ++ + struct fb_cmap { + __u32 start; /* First entry */ + __u32 len; /* Number of entries */ +diff -Nur linux-3.13.7.orig/kernel/sysctl.c linux-3.13.7/kernel/sysctl.c +--- linux-3.13.7.orig/kernel/sysctl.c 2014-03-24 05:45:42.000000000 +0100 ++++ linux-3.13.7/kernel/sysctl.c 2014-03-29 16:03:17.000000000 +0100 +@@ -143,6 +143,10 @@ + static int ngroups_max = NGROUPS_MAX; + static const int cap_last_cap = CAP_LAST_CAP; + ++#ifdef CONFIG_FB_CON_DECOR ++extern char fbcon_decor_path[]; ++#endif ++ + #ifdef CONFIG_INOTIFY_USER + #include <linux/inotify.h> + #endif +@@ -252,6 +256,15 @@ + .mode = 0555, + .child = dev_table, + }, ++#ifdef CONFIG_FB_CON_DECOR ++ { ++ .procname = "fbcondecor", ++ .data = &fbcon_decor_path, ++ .maxlen = KMOD_PATH_LEN, ++ .mode = 0644, ++ .proc_handler = &proc_dostring, ++ }, ++#endif + { } + }; + diff --git a/target/linux/patches/3.13.6/gemalto.patch b/target/linux/patches/3.13.7/gemalto.patch index 65f7af1d7..65f7af1d7 100644 --- a/target/linux/patches/3.13.6/gemalto.patch +++ b/target/linux/patches/3.13.7/gemalto.patch diff --git a/target/linux/patches/3.13.6/lemote-rfkill.patch b/target/linux/patches/3.13.7/lemote-rfkill.patch index a61488434..a61488434 100644 --- a/target/linux/patches/3.13.6/lemote-rfkill.patch +++ b/target/linux/patches/3.13.7/lemote-rfkill.patch diff --git a/target/linux/patches/3.13.6/microblaze-axi.patch b/target/linux/patches/3.13.7/microblaze-axi.patch index 1a4b17d8c..1a4b17d8c 100644 --- a/target/linux/patches/3.13.6/microblaze-axi.patch +++ b/target/linux/patches/3.13.7/microblaze-axi.patch diff --git a/target/linux/patches/3.13.6/microblaze-early-printk.patch b/target/linux/patches/3.13.7/microblaze-early-printk.patch index 92027cea1..92027cea1 100644 --- a/target/linux/patches/3.13.6/microblaze-early-printk.patch +++ b/target/linux/patches/3.13.7/microblaze-early-printk.patch diff --git a/target/linux/patches/3.13.6/microblaze-ethernet.patch b/target/linux/patches/3.13.7/microblaze-ethernet.patch index 742ab477e..742ab477e 100644 --- a/target/linux/patches/3.13.6/microblaze-ethernet.patch +++ b/target/linux/patches/3.13.7/microblaze-ethernet.patch diff --git a/target/linux/patches/3.13.6/microblaze-setup.patch b/target/linux/patches/3.13.7/microblaze-setup.patch index 43815f274..43815f274 100644 --- a/target/linux/patches/3.13.6/microblaze-setup.patch +++ b/target/linux/patches/3.13.7/microblaze-setup.patch diff --git a/target/linux/patches/3.13.6/mtd-rootfs.patch b/target/linux/patches/3.13.7/mtd-rootfs.patch index 775d5fc80..775d5fc80 100644 --- a/target/linux/patches/3.13.6/mtd-rootfs.patch +++ b/target/linux/patches/3.13.7/mtd-rootfs.patch diff --git a/target/linux/patches/3.13.6/non-static.patch b/target/linux/patches/3.13.7/non-static.patch index a967703d0..a967703d0 100644 --- a/target/linux/patches/3.13.6/non-static.patch +++ b/target/linux/patches/3.13.7/non-static.patch diff --git a/target/linux/patches/3.13.6/ppc64-missing-zlib.patch b/target/linux/patches/3.13.7/ppc64-missing-zlib.patch index c6e0616be..c6e0616be 100644 --- a/target/linux/patches/3.13.6/ppc64-missing-zlib.patch +++ b/target/linux/patches/3.13.7/ppc64-missing-zlib.patch diff --git a/target/linux/patches/3.13.6/ppc64-missing_arch_random.patch b/target/linux/patches/3.13.7/ppc64-missing_arch_random.patch index b341a7be5..b341a7be5 100644 --- a/target/linux/patches/3.13.6/ppc64-missing_arch_random.patch +++ b/target/linux/patches/3.13.7/ppc64-missing_arch_random.patch diff --git a/target/linux/patches/3.13.6/raspberry.patch b/target/linux/patches/3.13.7/raspberry.patch index 1e2050a44..1e2050a44 100644 --- a/target/linux/patches/3.13.6/raspberry.patch +++ b/target/linux/patches/3.13.7/raspberry.patch diff --git a/target/linux/patches/3.13.7/startup.patch b/target/linux/patches/3.13.7/startup.patch new file mode 100644 index 000000000..d396b75e4 --- /dev/null +++ b/target/linux/patches/3.13.7/startup.patch @@ -0,0 +1,37 @@ +diff -Nur linux-3.13.3.orig/init/main.c linux-3.13.3/init/main.c +--- linux-3.13.3.orig/init/main.c 2014-02-13 23:00:14.000000000 +0100 ++++ linux-3.13.3/init/main.c 2014-02-17 11:35:14.000000000 +0100 +@@ -916,6 +917,8 @@ + if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) + pr_err("Warning: unable to open an initial console.\n"); + ++ printk(KERN_WARNING "Starting Linux (built with OpenADK).\n"); ++ + (void) sys_dup(0); + (void) sys_dup(0); + /* +diff -Nur linux-3.13.6.orig/init/initramfs.c linux-3.13.6/init/initramfs.c +--- linux-3.13.6.orig/init/initramfs.c 2014-03-07 07:07:02.000000000 +0100 ++++ linux-3.13.6/init/initramfs.c 2014-03-15 12:11:31.882731916 +0100 +@@ -622,6 +622,9 @@ + */ + load_default_modules(); + } ++#ifdef CONFIG_DEVTMPFS_MOUNT ++ devtmpfs_mount("dev"); ++#endif + return 0; + } + rootfs_initcall(populate_rootfs); +diff -Nur linux-3.13.6.orig/init/main.c linux-3.13.6/init/main.c +--- linux-3.13.6.orig/init/main.c 2014-03-07 07:07:02.000000000 +0100 ++++ linux-3.13.6/init/main.c 2014-03-15 12:13:16.459024452 +0100 +@@ -924,7 +924,7 @@ + */ + + if (!ramdisk_execute_command) +- ramdisk_execute_command = "/init"; ++ ramdisk_execute_command = "/sbin/init"; + + if (sys_access((const char __user *) ramdisk_execute_command, 0) != 0) { + ramdisk_execute_command = NULL; diff --git a/target/linux/patches/3.13.6/uuid.patch b/target/linux/patches/3.13.7/uuid.patch index ca23accdf..ca23accdf 100644 --- a/target/linux/patches/3.13.6/uuid.patch +++ b/target/linux/patches/3.13.7/uuid.patch diff --git a/target/linux/patches/3.13.6/vga-cons-default-off.patch b/target/linux/patches/3.13.7/vga-cons-default-off.patch index 08a57f783..08a57f783 100644 --- a/target/linux/patches/3.13.6/vga-cons-default-off.patch +++ b/target/linux/patches/3.13.7/vga-cons-default-off.patch diff --git a/target/linux/patches/3.13.6/wlan-cf.patch b/target/linux/patches/3.13.7/wlan-cf.patch index fc20759e2..fc20759e2 100644 --- a/target/linux/patches/3.13.6/wlan-cf.patch +++ b/target/linux/patches/3.13.7/wlan-cf.patch diff --git a/target/linux/patches/3.13.6/xargs.patch b/target/linux/patches/3.13.7/xargs.patch index 2c7b3df59..2c7b3df59 100644 --- a/target/linux/patches/3.13.6/xargs.patch +++ b/target/linux/patches/3.13.7/xargs.patch diff --git a/target/linux/patches/3.13.6/zlib-inflate.patch b/target/linux/patches/3.13.7/zlib-inflate.patch index 58e1f6d21..58e1f6d21 100644 --- a/target/linux/patches/3.13.6/zlib-inflate.patch +++ b/target/linux/patches/3.13.7/zlib-inflate.patch diff --git a/target/linux/patches/3.4.82/startup.patch b/target/linux/patches/3.4.82/startup.patch deleted file mode 100644 index 4f47eddcb..000000000 --- a/target/linux/patches/3.4.82/startup.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Nur linux-2.6.34.orig/init/main.c linux-2.6.34/init/main.c ---- linux-2.6.34.orig/init/main.c 2010-05-16 23:17:36.000000000 +0200 -+++ linux-2.6.34/init/main.c 2010-05-20 20:13:26.321613615 +0200 -@@ -889,6 +890,8 @@ - if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) - printk(KERN_WARNING "Warning: unable to open an initial console.\n"); - -+ printk(KERN_WARNING "Starting Linux (built with OpenADK).\n"); -+ - (void) sys_dup(0); - (void) sys_dup(0); - /* diff --git a/target/linux/patches/3.4.82/bsd-compatibility.patch b/target/linux/patches/3.4.84/bsd-compatibility.patch index 9e91a62de..9e91a62de 100644 --- a/target/linux/patches/3.4.82/bsd-compatibility.patch +++ b/target/linux/patches/3.4.84/bsd-compatibility.patch diff --git a/target/linux/patches/3.4.82/defaults.patch b/target/linux/patches/3.4.84/defaults.patch index 58aae610b..58aae610b 100644 --- a/target/linux/patches/3.4.82/defaults.patch +++ b/target/linux/patches/3.4.84/defaults.patch diff --git a/target/linux/patches/3.4.82/gemalto.patch b/target/linux/patches/3.4.84/gemalto.patch index 65f7af1d7..65f7af1d7 100644 --- a/target/linux/patches/3.4.82/gemalto.patch +++ b/target/linux/patches/3.4.84/gemalto.patch diff --git a/target/linux/patches/3.4.82/lemote-rfkill.patch b/target/linux/patches/3.4.84/lemote-rfkill.patch index a61488434..a61488434 100644 --- a/target/linux/patches/3.4.82/lemote-rfkill.patch +++ b/target/linux/patches/3.4.84/lemote-rfkill.patch diff --git a/target/linux/patches/3.4.82/mips-error.patch b/target/linux/patches/3.4.84/mips-error.patch index 800abc80d..800abc80d 100644 --- a/target/linux/patches/3.4.82/mips-error.patch +++ b/target/linux/patches/3.4.84/mips-error.patch diff --git a/target/linux/patches/3.4.82/module-alloc-size-check.patch b/target/linux/patches/3.4.84/module-alloc-size-check.patch index a792ac60a..a792ac60a 100644 --- a/target/linux/patches/3.4.82/module-alloc-size-check.patch +++ b/target/linux/patches/3.4.84/module-alloc-size-check.patch diff --git a/target/linux/patches/3.4.82/non-static.patch b/target/linux/patches/3.4.84/non-static.patch index a967703d0..a967703d0 100644 --- a/target/linux/patches/3.4.82/non-static.patch +++ b/target/linux/patches/3.4.84/non-static.patch diff --git a/target/linux/patches/3.4.82/sparc-include.patch b/target/linux/patches/3.4.84/sparc-include.patch index 2f8ffd061..2f8ffd061 100644 --- a/target/linux/patches/3.4.82/sparc-include.patch +++ b/target/linux/patches/3.4.84/sparc-include.patch diff --git a/target/linux/patches/3.4.84/startup.patch b/target/linux/patches/3.4.84/startup.patch new file mode 100644 index 000000000..c26430bcb --- /dev/null +++ b/target/linux/patches/3.4.84/startup.patch @@ -0,0 +1,34 @@ +diff -Nur linux-3.4.82.orig/init/initramfs.c linux-3.4.82/init/initramfs.c +--- linux-3.4.82.orig/init/initramfs.c 2014-02-22 19:33:35.000000000 +0100 ++++ linux-3.4.82/init/initramfs.c 2014-03-15 18:46:22.674928245 +0100 +@@ -606,6 +606,9 @@ + free_initrd(); + #endif + } ++#ifdef CONFIG_DEVTMPFS_MOUNT ++ devtmpfs_mount("dev"); ++#endif + return 0; + } + rootfs_initcall(populate_rootfs); +diff -Nur linux-3.4.82.orig/init/main.c linux-3.4.82/init/main.c +--- linux-3.4.82.orig/init/main.c 2014-02-22 19:33:35.000000000 +0100 ++++ linux-3.4.82/init/main.c 2014-03-15 18:46:22.674928245 +0100 +@@ -873,6 +873,8 @@ + if (sys_open((const char __user *) "/dev/console", O_RDWR, 0) < 0) + printk(KERN_WARNING "Warning: unable to open an initial console.\n"); + ++ printk(KERN_WARNING "Starting Linux (built with OpenADK).\n"); ++ + (void) sys_dup(0); + (void) sys_dup(0); + /* +@@ -881,7 +883,7 @@ + */ + + if (!ramdisk_execute_command) +- ramdisk_execute_command = "/init"; ++ ramdisk_execute_command = "/sbin/init"; + + if (sys_access((const char __user *) ramdisk_execute_command, 0) != 0) { + ramdisk_execute_command = NULL; diff --git a/target/linux/patches/3.4.82/usb-defaults-off.patch b/target/linux/patches/3.4.84/usb-defaults-off.patch index 31367108a..31367108a 100644 --- a/target/linux/patches/3.4.82/usb-defaults-off.patch +++ b/target/linux/patches/3.4.84/usb-defaults-off.patch diff --git a/target/linux/patches/3.4.82/uuid.patch b/target/linux/patches/3.4.84/uuid.patch index ca23accdf..ca23accdf 100644 --- a/target/linux/patches/3.4.82/uuid.patch +++ b/target/linux/patches/3.4.84/uuid.patch diff --git a/target/linux/patches/3.4.82/vga-cons-default-off.patch b/target/linux/patches/3.4.84/vga-cons-default-off.patch index 178aeeeb9..178aeeeb9 100644 --- a/target/linux/patches/3.4.82/vga-cons-default-off.patch +++ b/target/linux/patches/3.4.84/vga-cons-default-off.patch diff --git a/target/linux/patches/3.4.82/wlan-cf.patch b/target/linux/patches/3.4.84/wlan-cf.patch index fc20759e2..fc20759e2 100644 --- a/target/linux/patches/3.4.82/wlan-cf.patch +++ b/target/linux/patches/3.4.84/wlan-cf.patch diff --git a/target/linux/patches/3.4.82/zlib-inflate.patch b/target/linux/patches/3.4.84/zlib-inflate.patch index 58e1f6d21..58e1f6d21 100644 --- a/target/linux/patches/3.4.82/zlib-inflate.patch +++ b/target/linux/patches/3.4.84/zlib-inflate.patch diff --git a/target/m68k/Makefile b/target/m68k/Makefile index 193d8f3ed..78206042c 100644 --- a/target/m68k/Makefile +++ b/target/m68k/Makefile @@ -7,36 +7,36 @@ include $(TOPDIR)/mk/modules.mk include $(TOPDIR)/mk/kernel-build.mk include $(TOPDIR)/mk/image.mk -KERNEL:=$(LINUX_DIR)/vmlinux +KERNEL:=$(LINUX_DIR)/vmlinux.gz ifeq ($(ADK_TARGET_FS),archive) imageinstall: $(FW_DIR)/$(ROOTFSTARBALL) @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSTARBALL)" -ifeq ($(ADK_TARGET_SYSTEM_QEMU_M68K),y) - @echo "Use following command to create a QEMU Image:" - @echo "sudo ./scripts/create-image.sh -f ${ADK_TARGET_ROOTFS} qemu-${CPU_ARCH}.img $(FW_DIR)/$(ROOTFSTARBALL)" - @echo "Start qemu with following command line:" - @echo 'qemu-system-m68k -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${CPU_ARCH}.img' endif +ifeq ($(ADK_TARGET_FS),initramfsarchive) +imageinstall: $(FW_DIR)/$(ROOTFSUSERTARBALL) + @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)" endif ifeq ($(ADK_TARGET_FS),initramfs) imageinstall: $(FW_DIR)/$(INITRAMFS) @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' @echo 'The initramfs image is: ${FW_DIR}/${INITRAMFS}' -ifeq ($(ADK_TARGET_SYSTEM_QEMU_M68K),y) - @echo "Start qemu with following command line:" - @echo 'qemu-system-m68k -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL) -initrd ${FW_DIR}/${INITRAMFS}' +ifeq ($(ADK_TARGET_SYSTEM_ARANYM_M68K),y) + @sed -e "s#@@KERNEL@@#$(FW_DIR)/$(TARGET_KERNEL)#" \ + -e "s#@@INITRAMFS@@#${FW_DIR}/${INITRAMFS}#" \ + $(TOPDIR)/target/m68k/aranym.cfg.in \ + > $(TOPDIR)/target/m68k/aranym.cfg + @echo 'Start aranym with: aranym-mmu -l -c target/m68k/aranym.cfg' + @echo 'Ungrab mouse with middle mouse click' endif endif ifeq ($(ADK_TARGET_FS),initramfs-piggyback) imageinstall: createinitramfs @cp $(KERNEL) $(FW_DIR)/${TARGET_KERNEL} @echo 'The kernel+initramfs file is: $(FW_DIR)/${TARGET_KERNEL}' -ifeq ($(ADK_TARGET_SYSTEM_QEMU_M68K),y) - @echo "Start qemu with following command line:" - @echo 'qemu-system-m68k -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL)' -endif endif diff --git a/target/m68k/aranym.cfg.in b/target/m68k/aranym.cfg.in new file mode 100644 index 000000000..a2fd30170 --- /dev/null +++ b/target/m68k/aranym.cfg.in @@ -0,0 +1,195 @@ +[GLOBAL] +FastRAM = 32 +Floppy = +TOS = ROM +EmuTOS = etos512k.img +Bootstrap = mintara.prg +BootstrapArgs = +BootDrive = +GMTime = No + +[STARTUP] +GrabMouse = No +Debugger = No + +[IKBD] +WheelEiffel = No +AltGr = Yes + +[HOTKEYS] +Setup = 19:0 +Quit = 19:0x1 +Reboot = 19:0x40 +Ungrab = 27:0x141 +Debug = 19:0x100 +Screenshot = 316:0 +Fullscreen = 302:0 + +[JIT] +JIT = Yes +JITFPU = Yes +JITCacheSize = 8192 +JITLazyFlush = 1 +JITBlackList = +JITInline = No + +[VIDEO] +FullScreen = No +BootColorDepth = -1 +VidelRefresh = 2 +VidelMonitor = -1 +SingleBlitComposing = No +SingleBlitRefresh = No + +[TOS] +Cookie_MCH = 50000 +RedirConsole = No + +[IDE0] +Present = No +IsCDROM = No +ByteSwap = No +ReadOnly = No +Path = +Cylinders = 0 +Heads = 0 +SectorsPerTrack = 0 +ModelName = Master + +[IDE1] +Present = No +IsCDROM = No +ByteSwap = No +ReadOnly = No +Path = +Cylinders = 0 +Heads = 0 +SectorsPerTrack = 0 +ModelName = Slave + +[PARTITION0] +Path = +Present = No +PartID = BGM +ByteSwap = No +ReadOnly = No + +[HOSTFS] +A = +B = +C = +D = +E = +F = +G = +H = +I = +J = +K = +L = +M = +N = +O = +P = +Q = +R = +S = +T = +U = +V = +W = +X = +Y = +Z = + +[OPENGL] +Enabled = No +Filtered = No +Library = + +[ETH0] +Type = bridge +Tunnel = tap0 +HostIP = 172.24.30.12 +AtariIP = 172.24.42.46 +Netmask = 255.255.0.0 +MAC = 00:41:45:54:48:30 + +[LILO] +Kernel = @@KERNEL@@ +Args = console=tty debug=par +Ramdisk = @@INITRAMFS@@ + +[MIDI] +Type = none +File = +Sequencer = /dev/sequencer + +[CDROMS] +A = -1 +B = -1 +C = -1 +D = -1 +E = -1 +F = -1 +G = -1 +H = -1 +I = -1 +J = -1 +K = -1 +L = -1 +M = -1 +N = -1 +O = -1 +P = -1 +Q = -1 +R = -1 +S = -1 +T = -1 +U = -1 +V = -1 +W = -1 +X = -1 +Y = -1 +Z = -1 + +[AUTOZOOM] +Enabled = No +IntegerCoefs = No +FixedSize = No +Width = 640 +Height = 480 + +[NFOSMESA] +ChannelSize = 0 +LibGL = libGL.so +LibOSMesa = libOSMesa.so + +[PARALLEL] +Type = file +File = stderr +Parport = /dev/parport0 + +[SERIAL] +Serport = /dev/ttyS0 + +[NATFEATS] +CDROM = sdl +Vdi = soft + +[NFVDI] +UseHostMouseCursor = No + +[AUDIO] +Frequency = 22050 +Channels = 2 +Bits = 16 +Samples = 1024 + +[JOYSTICKS] +Ikbd0 = -1 +Ikbd1 = 0 +JoypadA = -1 +JoypadAButtons = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 +JoypadB = -1 +JoypadBButtons = 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 diff --git a/target/m68k/kernel.config b/target/m68k/kernel.config deleted file mode 100644 index bf7ba4f8a..000000000 --- a/target/m68k/kernel.config +++ /dev/null @@ -1,997 +0,0 @@ -# -# Automatically generated file; DO NOT EDIT. -# Linux/m68k 3.9.11 Kernel Configuration -# -CONFIG_M68K=y -CONFIG_RWSEM_GENERIC_SPINLOCK=y -CONFIG_GENERIC_HWEIGHT=y -CONFIG_GENERIC_CALIBRATE_DELAY=y -CONFIG_TIME_LOW_RES=y -CONFIG_NO_IOPORT=y -# CONFIG_NO_DMA is not set -CONFIG_ZONE_DMA=y -CONFIG_HZ=100 -CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" -CONFIG_IRQ_WORK=y - -# -# General setup -# -CONFIG_BROKEN_ON_SMP=y -CONFIG_INIT_ENV_ARG_LIMIT=32 -CONFIG_CROSS_COMPILE="" -CONFIG_LOCALVERSION="" -# CONFIG_LOCALVERSION_AUTO is not set -CONFIG_DEFAULT_HOSTNAME="openadk" -# CONFIG_SWAP is not set -CONFIG_SYSVIPC=y -CONFIG_SYSVIPC_SYSCTL=y -CONFIG_POSIX_MQUEUE=y -CONFIG_POSIX_MQUEUE_SYSCTL=y -# CONFIG_FHANDLE is not set -# CONFIG_AUDIT is not set -CONFIG_HAVE_GENERIC_HARDIRQS=y - -# -# IRQ subsystem -# -CONFIG_GENERIC_HARDIRQS=y -CONFIG_GENERIC_IRQ_SHOW=y -CONFIG_ARCH_USES_GETTIMEOFFSET=y - -# -# CPU/Task time and stats accounting -# -CONFIG_TICK_CPU_ACCOUNTING=y -# CONFIG_BSD_PROCESS_ACCT is not set -# CONFIG_TASKSTATS is not set - -# -# RCU Subsystem -# -CONFIG_TINY_RCU=y -# CONFIG_PREEMPT_RCU is not set -# CONFIG_RCU_STALL_COMMON is not set -# CONFIG_TREE_RCU_TRACE is not set -CONFIG_IKCONFIG=y -CONFIG_IKCONFIG_PROC=y -CONFIG_LOG_BUF_SHIFT=14 -# CONFIG_CGROUPS is not set -# CONFIG_CHECKPOINT_RESTORE is not set -# CONFIG_NAMESPACES is not set -CONFIG_UIDGID_CONVERTED=y -# CONFIG_UIDGID_STRICT_TYPE_CHECKS is not set -# CONFIG_SCHED_AUTOGROUP is not set -# CONFIG_SYSFS_DEPRECATED is not set -# CONFIG_RELAY is not set -CONFIG_BLK_DEV_INITRD=y -CONFIG_INITRAMFS_SOURCE="" -CONFIG_RD_GZIP=y -# CONFIG_RD_BZIP2 is not set -# CONFIG_RD_LZMA is not set -# CONFIG_RD_XZ is not set -# CONFIG_RD_LZO is not set -CONFIG_CC_OPTIMIZE_FOR_SIZE=y -CONFIG_SYSCTL=y -CONFIG_ANON_INODES=y -CONFIG_EXPERT=y -CONFIG_HAVE_UID16=y -CONFIG_UID16=y -# CONFIG_SYSCTL_SYSCALL is not set -CONFIG_KALLSYMS=y -# CONFIG_KALLSYMS_ALL is not set -CONFIG_HOTPLUG=y -CONFIG_PRINTK=y -CONFIG_BUG=y -CONFIG_BASE_FULL=y -CONFIG_FUTEX=y -CONFIG_EPOLL=y -CONFIG_SIGNALFD=y -CONFIG_TIMERFD=y -CONFIG_EVENTFD=y -CONFIG_SHMEM=y -CONFIG_AIO=y -CONFIG_EMBEDDED=y - -# -# Kernel Performance Events And Counters -# -CONFIG_VM_EVENT_COUNTERS=y -CONFIG_SLUB_DEBUG=y -# CONFIG_COMPAT_BRK is not set -# CONFIG_SLAB is not set -CONFIG_SLUB=y -# CONFIG_SLOB is not set -# CONFIG_PROFILING is not set -# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set -CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y -CONFIG_HAVE_MOD_ARCH_SPECIFIC=y -CONFIG_MODULES_USE_ELF_RELA=y -CONFIG_MODULES_USE_ELF_REL=y -CONFIG_OLD_SIGSUSPEND3=y -CONFIG_OLD_SIGACTION=y - -# -# GCOV-based kernel profiling -# -# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set -CONFIG_SLABINFO=y -CONFIG_RT_MUTEXES=y -CONFIG_BASE_SMALL=0 -CONFIG_MODULES=y -# CONFIG_MODULE_FORCE_LOAD is not set -CONFIG_MODULE_UNLOAD=y -# CONFIG_MODULE_FORCE_UNLOAD is not set -# CONFIG_MODVERSIONS is not set -# CONFIG_MODULE_SRCVERSION_ALL is not set -# CONFIG_MODULE_SIG is not set -CONFIG_BLOCK=y -# CONFIG_LBDAF is not set -# CONFIG_BLK_DEV_BSG is not set -# CONFIG_BLK_DEV_BSGLIB is not set -# CONFIG_BLK_DEV_INTEGRITY is not set - -# -# Partition Types -# -# CONFIG_PARTITION_ADVANCED is not set -CONFIG_ATARI_PARTITION=y -CONFIG_MSDOS_PARTITION=y -CONFIG_EFI_PARTITION=y - -# -# IO Schedulers -# -CONFIG_IOSCHED_NOOP=y -# CONFIG_IOSCHED_DEADLINE is not set -# CONFIG_IOSCHED_CFQ is not set -CONFIG_DEFAULT_NOOP=y -CONFIG_DEFAULT_IOSCHED="noop" -CONFIG_INLINE_SPIN_UNLOCK_IRQ=y -CONFIG_INLINE_READ_UNLOCK=y -CONFIG_INLINE_READ_UNLOCK_IRQ=y -CONFIG_INLINE_WRITE_UNLOCK=y -CONFIG_INLINE_WRITE_UNLOCK_IRQ=y -# CONFIG_FREEZER is not set -CONFIG_MMU=y -CONFIG_MMU_MOTOROLA=y - -# -# Platform setup -# - -# -# Processor Type -# -CONFIG_M68KCLASSIC=y -# CONFIG_COLDFIRE is not set -# CONFIG_M68020 is not set -# CONFIG_M68030 is not set -CONFIG_M68040=y -# CONFIG_M68060 is not set - -# -# Processor Specific Options -# -# CONFIG_M68KFPU_EMU is not set -# CONFIG_ADVANCED is not set -CONFIG_ARCH_DISCONTIGMEM_ENABLE=y -CONFIG_NODES_SHIFT=3 -CONFIG_CPU_HAS_ADDRESS_SPACES=y -CONFIG_FPU=y - -# -# Machine Types -# -# CONFIG_AMIGA is not set -CONFIG_ATARI=y -# CONFIG_MAC is not set -# CONFIG_APOLLO is not set -# CONFIG_VME is not set -# CONFIG_HP300 is not set -# CONFIG_SUN3X is not set -# CONFIG_Q40 is not set - -# -# Bus Support -# -# CONFIG_GENERIC_ISA_DMA is not set - -# -# Kernel Features -# -CONFIG_DISCONTIGMEM=y -CONFIG_FLAT_NODE_MEM_MAP=y -CONFIG_NEED_MULTIPLE_NODES=y -# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set -CONFIG_PAGEFLAGS_EXTENDED=y -CONFIG_SPLIT_PTLOCK_CPUS=4 -# CONFIG_COMPACTION is not set -# CONFIG_PHYS_ADDR_T_64BIT is not set -CONFIG_ZONE_DMA_FLAG=1 -CONFIG_BOUNCE=y -CONFIG_VIRT_TO_BUS=y -# CONFIG_KSM is not set -CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 -# CONFIG_CROSS_MEMORY_ATTACH is not set -CONFIG_NEED_PER_CPU_KM=y -# CONFIG_CLEANCACHE is not set - -# -# Executable file formats -# -CONFIG_BINFMT_ELF=y -CONFIG_HAVE_AOUT=y -# CONFIG_BINFMT_AOUT is not set -# CONFIG_BINFMT_MISC is not set -# CONFIG_COREDUMP is not set -CONFIG_NET=y - -# -# Networking options -# -CONFIG_PACKET=y -# CONFIG_PACKET_DIAG is not set -CONFIG_UNIX=y -# CONFIG_UNIX_DIAG is not set -# CONFIG_XFRM_USER is not set -# CONFIG_NET_KEY is not set -CONFIG_INET=y -# CONFIG_IP_MULTICAST is not set -# CONFIG_IP_ADVANCED_ROUTER is not set -# CONFIG_IP_PNP is not set -# CONFIG_NET_IPIP is not set -# CONFIG_NET_IPGRE_DEMUX is not set -# CONFIG_ARPD is not set -# CONFIG_SYN_COOKIES is not set -# CONFIG_INET_AH is not set -# CONFIG_INET_ESP is not set -# CONFIG_INET_IPCOMP is not set -# CONFIG_INET_XFRM_TUNNEL is not set -# CONFIG_INET_TUNNEL is not set -# CONFIG_INET_XFRM_MODE_TRANSPORT is not set -# CONFIG_INET_XFRM_MODE_TUNNEL is not set -# CONFIG_INET_XFRM_MODE_BEET is not set -# CONFIG_INET_LRO is not set -# CONFIG_INET_DIAG is not set -# CONFIG_TCP_CONG_ADVANCED is not set -CONFIG_TCP_CONG_CUBIC=y -CONFIG_DEFAULT_TCP_CONG="cubic" -# CONFIG_TCP_MD5SIG is not set -# CONFIG_IPV6 is not set -# CONFIG_NETWORK_SECMARK is not set -# CONFIG_NETWORK_PHY_TIMESTAMPING is not set -# CONFIG_NETFILTER is not set -# CONFIG_IP_DCCP is not set -# CONFIG_IP_SCTP is not set -# CONFIG_RDS is not set -# CONFIG_TIPC is not set -# CONFIG_ATM is not set -# CONFIG_L2TP is not set -# CONFIG_BRIDGE is not set -CONFIG_HAVE_NET_DSA=y -# CONFIG_VLAN_8021Q is not set -# CONFIG_DECNET is not set -# CONFIG_LLC2 is not set -# CONFIG_IPX is not set -# CONFIG_ATALK is not set -# CONFIG_X25 is not set -# CONFIG_LAPB is not set -# CONFIG_PHONET is not set -# CONFIG_IEEE802154 is not set -# CONFIG_NET_SCHED is not set -# CONFIG_DCB is not set -# CONFIG_BATMAN_ADV is not set -# CONFIG_OPENVSWITCH is not set -# CONFIG_VSOCKETS is not set -CONFIG_BQL=y - -# -# Network testing -# -# CONFIG_NET_PKTGEN is not set -# CONFIG_HAMRADIO is not set -# CONFIG_CAN is not set -# CONFIG_IRDA is not set -# CONFIG_BT is not set -# CONFIG_AF_RXRPC is not set -# CONFIG_WIRELESS is not set -# CONFIG_WIMAX is not set -# CONFIG_RFKILL is not set -# CONFIG_NET_9P is not set -# CONFIG_CAIF is not set -# CONFIG_CEPH_LIB is not set -# CONFIG_NFC is not set - -# -# Device Drivers -# - -# -# Generic Driver Options -# -CONFIG_UEVENT_HELPER_PATH="" -CONFIG_DEVTMPFS=y -CONFIG_DEVTMPFS_MOUNT=y -# CONFIG_STANDALONE is not set -# CONFIG_PREVENT_FIRMWARE_BUILD is not set -# CONFIG_FW_LOADER is not set -# CONFIG_DEBUG_DRIVER is not set -# CONFIG_DEBUG_DEVRES is not set -# CONFIG_SYS_HYPERVISOR is not set -CONFIG_GENERIC_CPU_DEVICES=y -# CONFIG_DMA_SHARED_BUFFER is not set - -# -# Bus devices -# -# CONFIG_CONNECTOR is not set -# CONFIG_MTD is not set -# CONFIG_PARPORT is not set -CONFIG_BLK_DEV=y -# CONFIG_ATARI_FLOPPY is not set -# CONFIG_BLK_DEV_COW_COMMON is not set -# CONFIG_BLK_DEV_LOOP is not set -# CONFIG_BLK_DEV_DRBD is not set -# CONFIG_BLK_DEV_NBD is not set -# CONFIG_BLK_DEV_RAM is not set -# CONFIG_CDROM_PKTCDVD is not set -# CONFIG_ATA_OVER_ETH is not set -# CONFIG_BLK_DEV_HD is not set -# CONFIG_BLK_DEV_RBD is not set - -# -# Misc devices -# -# CONFIG_SENSORS_LIS3LV02D is not set -# CONFIG_ATMEL_SSC is not set -# CONFIG_ENCLOSURE_SERVICES is not set -# CONFIG_C2PORT is not set - -# -# EEPROM support -# -# CONFIG_EEPROM_93CX6 is not set - -# -# Texas Instruments shared transport line discipline -# - -# -# Altera FPGA firmware download module -# -CONFIG_HAVE_IDE=y -# CONFIG_IDE is not set - -# -# SCSI device support -# -CONFIG_SCSI_MOD=y -# CONFIG_RAID_ATTRS is not set -# CONFIG_SCSI is not set -# CONFIG_SCSI_DMA is not set -# CONFIG_SCSI_NETLINK is not set -# CONFIG_MD is not set -CONFIG_NETDEVICES=y -# CONFIG_NET_CORE is not set - -# -# CAIF transport drivers -# - -# -# Distributed Switch Architecture drivers -# -# CONFIG_NET_DSA_MV88E6XXX is not set -# CONFIG_NET_DSA_MV88E6060 is not set -# CONFIG_NET_DSA_MV88E6XXX_NEED_PPU is not set -# CONFIG_NET_DSA_MV88E6131 is not set -# CONFIG_NET_DSA_MV88E6123_61_65 is not set -CONFIG_ETHERNET=y -CONFIG_NET_VENDOR_AMD=y -# CONFIG_ATARILANCE is not set -CONFIG_NET_CADENCE=y -# CONFIG_ARM_AT91_ETHER is not set -# CONFIG_MACB is not set -# CONFIG_NET_VENDOR_BROADCOM is not set -# CONFIG_NET_CALXEDA_XGMAC is not set -# CONFIG_DNET is not set -CONFIG_NET_VENDOR_INTEL=y -# CONFIG_NET_VENDOR_I825XX is not set -# CONFIG_NET_VENDOR_MARVELL is not set -# CONFIG_NET_VENDOR_MICREL is not set -CONFIG_NET_VENDOR_NATSEMI=y -CONFIG_NET_VENDOR_8390=y -# CONFIG_ETHOC is not set -# CONFIG_NET_VENDOR_SEEQ is not set -# CONFIG_NET_VENDOR_STMICRO is not set -CONFIG_NET_VENDOR_WIZNET=y -# CONFIG_WIZNET_W5100 is not set -# CONFIG_WIZNET_W5300 is not set -# CONFIG_PHYLIB is not set -# CONFIG_PPP is not set -# CONFIG_SLIP is not set -# CONFIG_WLAN is not set - -# -# Enable WiMAX (Networking options) to see the WiMAX drivers -# -# CONFIG_WAN is not set -# CONFIG_ISDN is not set - -# -# Input device support -# -CONFIG_INPUT=y -# CONFIG_INPUT_FF_MEMLESS is not set -# CONFIG_INPUT_POLLDEV is not set -# CONFIG_INPUT_SPARSEKMAP is not set -# CONFIG_INPUT_MATRIXKMAP is not set - -# -# Userland interfaces -# -# CONFIG_INPUT_MOUSEDEV is not set -# CONFIG_INPUT_JOYDEV is not set -# CONFIG_INPUT_EVDEV is not set -# CONFIG_INPUT_EVBUG is not set - -# -# Input Device Drivers -# -# CONFIG_INPUT_KEYBOARD is not set -# CONFIG_INPUT_MOUSE is not set -# CONFIG_INPUT_JOYSTICK is not set -# CONFIG_INPUT_TABLET is not set -# CONFIG_INPUT_TOUCHSCREEN is not set -# CONFIG_INPUT_MISC is not set - -# -# Hardware I/O ports -# -CONFIG_SERIO=y -CONFIG_SERIO_SERPORT=y -CONFIG_SERIO_LIBPS2=y -# CONFIG_SERIO_RAW is not set -# CONFIG_SERIO_ALTERA_PS2 is not set -# CONFIG_SERIO_PS2MULT is not set -# CONFIG_SERIO_ARC_PS2 is not set -# CONFIG_GAMEPORT is not set - -# -# Character devices -# -CONFIG_TTY=y -CONFIG_VT=y -CONFIG_CONSOLE_TRANSLATIONS=y -CONFIG_VT_CONSOLE=y -CONFIG_HW_CONSOLE=y -# CONFIG_VT_HW_CONSOLE_BINDING is not set -CONFIG_UNIX98_PTYS=y -# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set -# CONFIG_LEGACY_PTYS is not set -# CONFIG_SERIAL_NONSTANDARD is not set -# CONFIG_N_GSM is not set -# CONFIG_TRACE_SINK is not set -# CONFIG_DEVKMEM is not set - -# -# Serial drivers -# -CONFIG_SERIAL_8250=y -# CONFIG_SERIAL_8250_DEPRECATED_OPTIONS is not set -CONFIG_SERIAL_8250_CONSOLE=y -CONFIG_SERIAL_8250_NR_UARTS=4 -CONFIG_SERIAL_8250_RUNTIME_UARTS=4 -# CONFIG_SERIAL_8250_EXTENDED is not set -# CONFIG_SERIAL_8250_DW is not set - -# -# Non-8250 serial port support -# -CONFIG_SERIAL_CORE=y -CONFIG_SERIAL_CORE_CONSOLE=y -# CONFIG_SERIAL_SCCNXP is not set -# CONFIG_SERIAL_TIMBERDALE is not set -# CONFIG_SERIAL_ALTERA_JTAGUART is not set -# CONFIG_SERIAL_ALTERA_UART is not set -# CONFIG_SERIAL_ARC is not set -# CONFIG_TTY_PRINTK is not set -# CONFIG_IPMI_HANDLER is not set -CONFIG_HW_RANDOM=y -# CONFIG_HW_RANDOM_TIMERIOMEM is not set -# CONFIG_NVRAM is not set -# CONFIG_R3964 is not set -# CONFIG_RAW_DRIVER is not set -# CONFIG_TCG_TPM is not set -# CONFIG_BRCM_CHAR_DRIVERS is not set -# CONFIG_I2C is not set -# CONFIG_SPI is not set -# CONFIG_HSI is not set - -# -# PPS support -# -# CONFIG_PPS is not set - -# -# PPS generators support -# - -# -# PTP clock support -# -# CONFIG_PTP_1588_CLOCK is not set - -# -# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. -# -# CONFIG_PTP_1588_CLOCK_PCH is not set -CONFIG_GPIO_DEVRES=y -# CONFIG_W1 is not set -# CONFIG_POWER_SUPPLY is not set -# CONFIG_POWER_AVS is not set -# CONFIG_HWMON is not set -# CONFIG_THERMAL is not set -# CONFIG_WATCHDOG is not set -CONFIG_SSB_POSSIBLE=y - -# -# Sonics Silicon Backplane -# -# CONFIG_SSB is not set -CONFIG_BCMA_POSSIBLE=y - -# -# Broadcom specific AMBA -# -# CONFIG_BCMA is not set - -# -# Multifunction device drivers -# -# CONFIG_MFD_CORE is not set -# CONFIG_MFD_SM501 is not set -# CONFIG_MFD_TI_AM335X_TSCADC is not set -# CONFIG_HTC_PASIC3 is not set -# CONFIG_MFD_TMIO is not set -# CONFIG_ABX500_CORE is not set -# CONFIG_REGULATOR is not set -# CONFIG_MEDIA_SUPPORT is not set - -# -# Graphics support -# -# CONFIG_DRM is not set -# CONFIG_VGASTATE is not set -# CONFIG_VIDEO_OUTPUT_CONTROL is not set -CONFIG_FB=y -# CONFIG_FIRMWARE_EDID is not set -# CONFIG_FB_DDC is not set -# CONFIG_FB_BOOT_VESA_SUPPORT is not set -CONFIG_FB_CFB_FILLRECT=y -CONFIG_FB_CFB_COPYAREA=y -CONFIG_FB_CFB_IMAGEBLIT=y -# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set -# CONFIG_FB_SYS_FILLRECT is not set -# CONFIG_FB_SYS_COPYAREA is not set -# CONFIG_FB_SYS_IMAGEBLIT is not set -# CONFIG_FB_FOREIGN_ENDIAN is not set -# CONFIG_FB_SYS_FOPS is not set -# CONFIG_FB_WMT_GE_ROPS is not set -# CONFIG_FB_SVGALIB is not set -# CONFIG_FB_MACMODES is not set -# CONFIG_FB_BACKLIGHT is not set -# CONFIG_FB_MODE_HELPERS is not set -# CONFIG_FB_TILEBLITTING is not set - -# -# Frame buffer hardware drivers -# -CONFIG_FB_ATARI=y -# CONFIG_FB_S1D13XXX is not set -# CONFIG_FB_ATY is not set -# CONFIG_FB_GOLDFISH is not set -# CONFIG_FB_VIRTUAL is not set -# CONFIG_FB_METRONOME is not set -# CONFIG_FB_BROADSHEET is not set -# CONFIG_FB_AUO_K190X is not set -# CONFIG_EXYNOS_VIDEO is not set -# CONFIG_BACKLIGHT_LCD_SUPPORT is not set - -# -# Console display driver support -# -CONFIG_DUMMY_CONSOLE=y -CONFIG_FRAMEBUFFER_CONSOLE=y -# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set -# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set -# CONFIG_FONTS is not set -CONFIG_FONT_8x8=y -CONFIG_FONT_8x16=y -# CONFIG_LOGO is not set -# CONFIG_SOUND is not set - -# -# HID support -# -CONFIG_HID=y -# CONFIG_HIDRAW is not set -# CONFIG_UHID is not set -CONFIG_HID_GENERIC=y - -# -# Special HID drivers -# -# CONFIG_USB_ARCH_HAS_OHCI is not set -# CONFIG_USB_ARCH_HAS_EHCI is not set -# CONFIG_USB_ARCH_HAS_XHCI is not set -# CONFIG_USB_SUPPORT is not set -# CONFIG_MMC is not set -# CONFIG_MEMSTICK is not set -# CONFIG_NEW_LEDS is not set -# CONFIG_ACCESSIBILITY is not set -CONFIG_RTC_LIB=y -CONFIG_RTC_CLASS=y -CONFIG_RTC_HCTOSYS=y -CONFIG_RTC_SYSTOHC=y -CONFIG_RTC_HCTOSYS_DEVICE="rtc0" -# CONFIG_RTC_DEBUG is not set - -# -# RTC interfaces -# -CONFIG_RTC_INTF_SYSFS=y -# CONFIG_RTC_INTF_PROC is not set -CONFIG_RTC_INTF_DEV=y -# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set -# CONFIG_RTC_DRV_TEST is not set - -# -# SPI RTC drivers -# - -# -# Platform RTC drivers -# -# CONFIG_RTC_DRV_CMOS is not set -# CONFIG_RTC_DRV_DS1286 is not set -# CONFIG_RTC_DRV_DS1511 is not set -# CONFIG_RTC_DRV_DS1553 is not set -# CONFIG_RTC_DRV_DS1742 is not set -# CONFIG_RTC_DRV_STK17TA8 is not set -# CONFIG_RTC_DRV_M48T86 is not set -# CONFIG_RTC_DRV_M48T35 is not set -# CONFIG_RTC_DRV_M48T59 is not set -# CONFIG_RTC_DRV_MSM6242 is not set -# CONFIG_RTC_DRV_BQ4802 is not set -# CONFIG_RTC_DRV_RP5C01 is not set -# CONFIG_RTC_DRV_V3020 is not set -# CONFIG_RTC_DRV_DS2404 is not set - -# -# on-CPU RTC drivers -# -# CONFIG_RTC_DRV_GENERIC is not set - -# -# HID Sensor RTC drivers -# -# CONFIG_DMADEVICES is not set -# CONFIG_AUXDISPLAY is not set -# CONFIG_UIO is not set - -# -# Virtio drivers -# -# CONFIG_VIRTIO_MMIO is not set - -# -# Microsoft Hyper-V guest support -# -# CONFIG_STAGING is not set - -# -# Hardware Spinlock drivers -# -# CONFIG_MAILBOX is not set -# CONFIG_IOMMU_SUPPORT is not set - -# -# Remoteproc drivers -# -# CONFIG_STE_MODEM_RPROC is not set - -# -# Rpmsg drivers -# -# CONFIG_VIRT_DRIVERS is not set -# CONFIG_PM_DEVFREQ is not set -# CONFIG_EXTCON is not set -# CONFIG_MEMORY is not set -# CONFIG_IIO is not set -# CONFIG_PWM is not set -# CONFIG_IPACK_BUS is not set - -# -# Platform devices -# -# CONFIG_HEARTBEAT is not set -# CONFIG_PROC_HARDWARE is not set -CONFIG_NATFEAT=y -CONFIG_NFBLOCK=y -CONFIG_NFCON=y -CONFIG_NFETH=y - -# -# Character devices -# -# CONFIG_ATARI_DSP56K is not set - -# -# File systems -# -CONFIG_EXT2_FS=y -# CONFIG_EXT2_FS_XATTR is not set -# CONFIG_EXT2_FS_XIP is not set -# CONFIG_EXT3_FS is not set -# CONFIG_EXT4_FS is not set -# CONFIG_REISERFS_FS is not set -# CONFIG_JFS_FS is not set -# CONFIG_XFS_FS is not set -# CONFIG_BTRFS_FS is not set -# CONFIG_NILFS2_FS is not set -# CONFIG_FS_POSIX_ACL is not set -CONFIG_EXPORTFS=y -CONFIG_FILE_LOCKING=y -CONFIG_FSNOTIFY=y -CONFIG_DNOTIFY=y -CONFIG_INOTIFY_USER=y -# CONFIG_FANOTIFY is not set -# CONFIG_QUOTA is not set -# CONFIG_QUOTACTL is not set -# CONFIG_AUTOFS4_FS is not set -# CONFIG_FUSE_FS is not set - -# -# Caches -# -# CONFIG_FSCACHE is not set - -# -# CD-ROM/DVD Filesystems -# -# CONFIG_ISO9660_FS is not set -# CONFIG_UDF_FS is not set - -# -# DOS/FAT/NT Filesystems -# -# CONFIG_MSDOS_FS is not set -# CONFIG_VFAT_FS is not set -# CONFIG_NTFS_FS is not set - -# -# Pseudo filesystems -# -CONFIG_PROC_FS=y -# CONFIG_PROC_KCORE is not set -CONFIG_PROC_SYSCTL=y -CONFIG_PROC_PAGE_MONITOR=y -CONFIG_SYSFS=y -CONFIG_TMPFS=y -# CONFIG_TMPFS_POSIX_ACL is not set -# CONFIG_TMPFS_XATTR is not set -# CONFIG_HUGETLB_PAGE is not set -# CONFIG_CONFIGFS_FS is not set -# CONFIG_MISC_FILESYSTEMS is not set -# CONFIG_NETWORK_FILESYSTEMS is not set -# CONFIG_NLS is not set - -# -# Kernel hacking -# -CONFIG_PRINTK_TIME=y -CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 -# CONFIG_ENABLE_WARN_DEPRECATED is not set -# CONFIG_ENABLE_MUST_CHECK is not set -CONFIG_FRAME_WARN=1024 -CONFIG_MAGIC_SYSRQ=y -# CONFIG_STRIP_ASM_SYMS is not set -# CONFIG_READABLE_ASM is not set -# CONFIG_UNUSED_SYMBOLS is not set -# CONFIG_DEBUG_FS is not set -# CONFIG_HEADERS_CHECK is not set -# CONFIG_DEBUG_SECTION_MISMATCH is not set -CONFIG_DEBUG_KERNEL=y -# CONFIG_DEBUG_SHIRQ is not set -# CONFIG_LOCKUP_DETECTOR is not set -# CONFIG_PANIC_ON_OOPS is not set -CONFIG_PANIC_ON_OOPS_VALUE=0 -# CONFIG_DETECT_HUNG_TASK is not set -# CONFIG_SCHED_DEBUG is not set -# CONFIG_SCHEDSTATS is not set -# CONFIG_TIMER_STATS is not set -# CONFIG_DEBUG_OBJECTS is not set -# CONFIG_SLUB_DEBUG_ON is not set -# CONFIG_SLUB_STATS is not set -# CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_RT_MUTEX_TESTER is not set -# CONFIG_DEBUG_SPINLOCK is not set -# CONFIG_DEBUG_MUTEXES is not set -# CONFIG_DEBUG_ATOMIC_SLEEP is not set -# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set -# CONFIG_DEBUG_STACK_USAGE is not set -# CONFIG_DEBUG_KOBJECT is not set -CONFIG_HAVE_DEBUG_BUGVERBOSE=y -# CONFIG_DEBUG_BUGVERBOSE is not set -# CONFIG_DEBUG_INFO is not set -# CONFIG_DEBUG_VM is not set -# CONFIG_DEBUG_WRITECOUNT is not set -# CONFIG_DEBUG_MEMORY_INIT is not set -# CONFIG_DEBUG_LIST is not set -# CONFIG_TEST_LIST_SORT is not set -# CONFIG_DEBUG_SG is not set -# CONFIG_DEBUG_NOTIFIERS is not set -# CONFIG_DEBUG_CREDENTIALS is not set -# CONFIG_FRAME_POINTER is not set -# CONFIG_BOOT_PRINTK_DELAY is not set - -# -# RCU Debugging -# -# CONFIG_SPARSE_RCU_POINTER is not set -# CONFIG_RCU_TORTURE_TEST is not set -# CONFIG_RCU_TRACE is not set -# CONFIG_BACKTRACE_SELF_TEST is not set -# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set -# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set -# CONFIG_NOTIFIER_ERROR_INJECTION is not set -# CONFIG_FAULT_INJECTION is not set -# CONFIG_DEBUG_PAGEALLOC is not set -# CONFIG_RBTREE_TEST is not set -# CONFIG_INTERVAL_TREE_TEST is not set -# CONFIG_ATOMIC64_SELFTEST is not set -# CONFIG_SAMPLES is not set -# CONFIG_TEST_KSTRTOX is not set -# CONFIG_BOOTPARAM is not set - -# -# Security options -# -# CONFIG_KEYS is not set -# CONFIG_SECURITY_DMESG_RESTRICT is not set -# CONFIG_SECURITY is not set -# CONFIG_SECURITYFS is not set -CONFIG_DEFAULT_SECURITY_DAC=y -CONFIG_DEFAULT_SECURITY="" -CONFIG_CRYPTO=y - -# -# Crypto core or helper -# -CONFIG_CRYPTO_ALGAPI=y -CONFIG_CRYPTO_ALGAPI2=y -# CONFIG_CRYPTO_MANAGER is not set -# CONFIG_CRYPTO_MANAGER2 is not set -# CONFIG_CRYPTO_USER is not set -# CONFIG_CRYPTO_GF128MUL is not set -# CONFIG_CRYPTO_NULL is not set -# CONFIG_CRYPTO_CRYPTD is not set -# CONFIG_CRYPTO_AUTHENC is not set -# CONFIG_CRYPTO_TEST is not set - -# -# Authenticated Encryption with Associated Data -# -# CONFIG_CRYPTO_CCM is not set -# CONFIG_CRYPTO_GCM is not set -# CONFIG_CRYPTO_SEQIV is not set - -# -# Block modes -# -# CONFIG_CRYPTO_CBC is not set -# CONFIG_CRYPTO_CTR is not set -# CONFIG_CRYPTO_CTS is not set -# CONFIG_CRYPTO_ECB is not set -# CONFIG_CRYPTO_LRW is not set -# CONFIG_CRYPTO_PCBC is not set -# CONFIG_CRYPTO_XTS is not set - -# -# Hash modes -# -# CONFIG_CRYPTO_HMAC is not set -# CONFIG_CRYPTO_XCBC is not set -# CONFIG_CRYPTO_VMAC is not set - -# -# Digest -# -# CONFIG_CRYPTO_CRC32C is not set -# CONFIG_CRYPTO_CRC32 is not set -# CONFIG_CRYPTO_GHASH is not set -# CONFIG_CRYPTO_MD4 is not set -# CONFIG_CRYPTO_MD5 is not set -# CONFIG_CRYPTO_MICHAEL_MIC is not set -# CONFIG_CRYPTO_RMD128 is not set -# CONFIG_CRYPTO_RMD160 is not set -# CONFIG_CRYPTO_RMD256 is not set -# CONFIG_CRYPTO_RMD320 is not set -# CONFIG_CRYPTO_SHA1 is not set -# CONFIG_CRYPTO_SHA256 is not set -# CONFIG_CRYPTO_SHA512 is not set -# CONFIG_CRYPTO_TGR192 is not set -# CONFIG_CRYPTO_WP512 is not set - -# -# Ciphers -# -CONFIG_CRYPTO_AES=y -# CONFIG_CRYPTO_ANUBIS is not set -# CONFIG_CRYPTO_ARC4 is not set -# CONFIG_CRYPTO_BLOWFISH is not set -# CONFIG_CRYPTO_CAMELLIA is not set -# CONFIG_CRYPTO_CAST5 is not set -# CONFIG_CRYPTO_CAST6 is not set -# CONFIG_CRYPTO_DES is not set -# CONFIG_CRYPTO_FCRYPT is not set -# CONFIG_CRYPTO_KHAZAD is not set -# CONFIG_CRYPTO_SALSA20 is not set -# CONFIG_CRYPTO_SEED is not set -# CONFIG_CRYPTO_SERPENT is not set -# CONFIG_CRYPTO_TEA is not set -# CONFIG_CRYPTO_TWOFISH is not set - -# -# Compression -# -# CONFIG_CRYPTO_DEFLATE is not set -# CONFIG_CRYPTO_ZLIB is not set -# CONFIG_CRYPTO_LZO is not set - -# -# Random Number Generation -# -# CONFIG_CRYPTO_ANSI_CPRNG is not set -# CONFIG_CRYPTO_USER_API_HASH is not set -# CONFIG_CRYPTO_USER_API_SKCIPHER is not set -# CONFIG_CRYPTO_HW is not set -# CONFIG_BINARY_PRINTF is not set - -# -# Library routines -# -CONFIG_BITREVERSE=y -CONFIG_GENERIC_STRNCPY_FROM_USER=y -CONFIG_GENERIC_STRNLEN_USER=y -CONFIG_GENERIC_PCI_IOMAP=y -CONFIG_GENERIC_IOMAP=y -CONFIG_GENERIC_IO=y -# CONFIG_CRC_CCITT is not set -# CONFIG_CRC16 is not set -# CONFIG_CRC_T10DIF is not set -# CONFIG_CRC_ITU_T is not set -CONFIG_CRC32=y -# CONFIG_CRC32_SELFTEST is not set -CONFIG_CRC32_SLICEBY8=y -# CONFIG_CRC32_SLICEBY4 is not set -# CONFIG_CRC32_SARWATE is not set -# CONFIG_CRC32_BIT is not set -# CONFIG_CRC7 is not set -# CONFIG_LIBCRC32C is not set -# CONFIG_CRC8 is not set -CONFIG_ZLIB_INFLATE=y -# CONFIG_XZ_DEC is not set -# CONFIG_XZ_DEC_BCJ is not set -CONFIG_DECOMPRESS_GZIP=y -CONFIG_HAS_IOMEM=y -CONFIG_HAS_DMA=y -CONFIG_DQL=y -CONFIG_NLATTR=y -CONFIG_GENERIC_ATOMIC64=y -CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y -# CONFIG_AVERAGE is not set -# CONFIG_CORDIC is not set -# CONFIG_DDR is not set diff --git a/target/m68k/kernel/aranym-m68k b/target/m68k/kernel/aranym-m68k new file mode 100644 index 000000000..ac513fdc6 --- /dev/null +++ b/target/m68k/kernel/aranym-m68k @@ -0,0 +1,11 @@ +CONFIG_M68K=y +CONFIG_MMU_MOTOROLA=y +CONFIG_M68KCLASSIC=y +CONFIG_M68040=y +CONFIG_FPU=y +CONFIG_ATARI=y +CONFIG_NATFEAT=y +CONFIG_NFETH=y +CONFIG_SERIO=y +CONFIG_SERIO_SERPORT=y +CONFIG_SERIO_LIBPS2=y diff --git a/target/m68k/sys-available/aranym-m68k b/target/m68k/sys-available/aranym-m68k index 112e376b9..29e8810a5 100644 --- a/target/m68k/sys-available/aranym-m68k +++ b/target/m68k/sys-available/aranym-m68k @@ -5,6 +5,7 @@ config ADK_TARGET_SYSTEM_ARANYM_M68K select ADK_TARGET_WITH_VGA select ADK_TARGET_WITH_INPUT select ADK_TARGET_WITH_HDD + select ADK_TARGET_KERNEL_ZIMAGE help Support for ARAnyM Emulator (M68K). diff --git a/target/m68k/sys-available/toolchain-m68k b/target/m68k/sys-available/toolchain-m68k index 0bc27683b..b48c9b784 100644 --- a/target/m68k/sys-available/toolchain-m68k +++ b/target/m68k/sys-available/toolchain-m68k @@ -3,7 +3,7 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_M68K select ADK_m68k select ADK_toolchain_m68k select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help Build a m68k toolchain. diff --git a/target/m68k/target.mk b/target/m68k/target.mk index 732363b2a..80b1424a6 100644 --- a/target/m68k/target.mk +++ b/target/m68k/target.mk @@ -1,5 +1,4 @@ include $(TOPDIR)/mk/kernel-ver.mk ARCH:= m68k CPU_ARCH:= $(ADK_TARGET_CPU_ARCH) -TARGET_OPTIMIZATION:= -O2 -pipe TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS) diff --git a/target/m68k/uclibc.config b/target/m68k/uclibc.config deleted file mode 100644 index 7ffcf7440..000000000 --- a/target/m68k/uclibc.config +++ /dev/null @@ -1,251 +0,0 @@ -# -# Automatically generated file; DO NOT EDIT. -# uClibc 0.9.34-git C Library Configuration -# -# TARGET_alpha is not set -# TARGET_arc is not set -# TARGET_arm is not set -# TARGET_avr32 is not set -# TARGET_bfin is not set -# TARGET_c6x is not set -# TARGET_cris is not set -# TARGET_e1 is not set -# TARGET_frv is not set -# TARGET_h8300 is not set -# TARGET_hppa is not set -# TARGET_i386 is not set -# TARGET_i960 is not set -# TARGET_ia64 is not set -TARGET_m68k=y -# TARGET_metag is not set -# TARGET_microblaze is not set -# TARGET_mips is not set -# TARGET_nios is not set -# TARGET_nios2 is not set -# TARGET_powerpc is not set -# TARGET_sh is not set -# TARGET_sh64 is not set -# TARGET_sparc is not set -# TARGET_v850 is not set -# TARGET_vax is not set -# TARGET_x86_64 is not set -# TARGET_xtensa is not set - -# -# Target Architecture Features and Options -# -TARGET_ARCH="m68k" -FORCE_OPTIONS_FOR_ARCH=y -TARGET_SUBARCH="" - -# -# Using ELF file format -# -ARCH_HAS_DEPRECATED_SYSCALLS=y -ARCH_BIG_ENDIAN=y - -# -# Using Big Endian -# -ARCH_HAS_MMU=y -ARCH_USE_MMU=y -UCLIBC_HAS_FLOATS=y -UCLIBC_HAS_FPU=y -DO_C99_MATH=y -# DO_XSI_MATH is not set -UCLIBC_HAS_FENV=y -UCLIBC_HAS_LONG_DOUBLE_MATH=y -KERNEL_HEADERS="" -HAVE_DOT_CONFIG=y - -# -# General Library Settings -# -DOPIC=y -HAVE_SHARED=y -# FORCE_SHAREABLE_TEXT_SEGMENTS is not set -LDSO_LDD_SUPPORT=y -LDSO_CACHE_SUPPORT=y -# LDSO_PRELOAD_ENV_SUPPORT is not set -# LDSO_PRELOAD_FILE_SUPPORT is not set -LDSO_BASE_FILENAME="ld.so" -# LDSO_STANDALONE_SUPPORT is not set -# LDSO_PRELINK_SUPPORT is not set -# UCLIBC_STATIC_LDCONFIG is not set -LDSO_RUNPATH=y -LDSO_SAFE_RUNPATH=y -LDSO_SEARCH_INTERP_PATH=y -LDSO_LD_LIBRARY_PATH=y -# LDSO_NO_CLEANUP is not set -UCLIBC_CTOR_DTOR=y -# LDSO_GNU_HASH_SUPPORT is not set -# HAS_NO_THREADS is not set -LINUXTHREADS_OLD=y -# LINUXTHREADS_NEW is not set -# UCLIBC_HAS_THREADS_NATIVE is not set -UCLIBC_HAS_THREADS=y -# PTHREADS_DEBUG_SUPPORT is not set -UCLIBC_HAS_SYSLOG=y -UCLIBC_HAS_LFS=y -# MALLOC is not set -# MALLOC_SIMPLE is not set -MALLOC_STANDARD=y -MALLOC_GLIBC_COMPAT=y -UCLIBC_HAS_OBSTACK=y -UCLIBC_DYNAMIC_ATEXIT=y -COMPAT_ATEXIT=y -# UCLIBC_SUSV2_LEGACY is not set -UCLIBC_SUSV3_LEGACY=y -# UCLIBC_SUSV3_LEGACY_MACROS is not set -UCLIBC_SUSV4_LEGACY=y -# UCLIBC_STRICT_HEADERS is not set -# UCLIBC_HAS_STUBS is not set -UCLIBC_HAS_SHADOW=y -UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y -UCLIBC_HAS___PROGNAME=y -UCLIBC_HAS_PTY=y -ASSUME_DEVPTS=y -UNIX98PTY_ONLY=y -UCLIBC_HAS_GETPT=y -UCLIBC_HAS_LIBUTIL=y -UCLIBC_HAS_TM_EXTENSIONS=y -UCLIBC_HAS_TZ_CACHING=y -UCLIBC_HAS_TZ_FILE=y -UCLIBC_HAS_TZ_FILE_READ_MANY=y -UCLIBC_TZ_FILE_PATH="/etc/TZ" -UCLIBC_FALLBACK_TO_ETC_LOCALTIME=y - -# -# Advanced Library Settings -# -UCLIBC_PWD_BUFFER_SIZE=256 -UCLIBC_GRP_BUFFER_SIZE=256 - -# -# Support various families of functions -# -UCLIBC_LINUX_MODULE_26=y -# UCLIBC_LINUX_MODULE_24 is not set -UCLIBC_LINUX_SPECIFIC=y -UCLIBC_HAS_GNU_ERROR=y -UCLIBC_BSD_SPECIFIC=y -UCLIBC_HAS_BSD_ERR=y -# UCLIBC_HAS_OBSOLETE_BSD_SIGNAL is not set -# UCLIBC_HAS_OBSOLETE_SYSV_SIGNAL is not set -# UCLIBC_NTP_LEGACY is not set -# UCLIBC_SV4_DEPRECATED is not set -UCLIBC_HAS_REALTIME=y -UCLIBC_HAS_ADVANCED_REALTIME=y -UCLIBC_HAS_EPOLL=y -# UCLIBC_HAS_XATTR is not set -# UCLIBC_HAS_PROFILING is not set -UCLIBC_HAS_CRYPT_IMPL=y -# UCLIBC_HAS_SHA256_CRYPT_IMPL is not set -# UCLIBC_HAS_SHA512_CRYPT_IMPL is not set -UCLIBC_HAS_CRYPT=y -UCLIBC_HAS_NETWORK_SUPPORT=y -UCLIBC_HAS_SOCKET=y -UCLIBC_HAS_IPV4=y -UCLIBC_HAS_IPV6=y -UCLIBC_HAS_RPC=y -UCLIBC_HAS_FULL_RPC=y -UCLIBC_HAS_REENTRANT_RPC=y -UCLIBC_USE_NETLINK=y -UCLIBC_SUPPORT_AI_ADDRCONFIG=y -UCLIBC_HAS_BSD_RES_CLOSE=y -UCLIBC_HAS_COMPAT_RES_STATE=y -# UCLIBC_HAS_EXTRA_COMPAT_RES_STATE is not set -UCLIBC_HAS_RESOLVER_SUPPORT=y -UCLIBC_HAS_LIBRESOLV_STUB=y -UCLIBC_HAS_LIBNSL_STUB=y - -# -# String and Stdio Support -# -UCLIBC_HAS_STRING_GENERIC_OPT=y -UCLIBC_HAS_STRING_ARCH_OPT=y -UCLIBC_HAS_CTYPE_TABLES=y -UCLIBC_HAS_CTYPE_SIGNED=y -# UCLIBC_HAS_CTYPE_UNSAFE is not set -UCLIBC_HAS_CTYPE_CHECKED=y -# UCLIBC_HAS_CTYPE_ENFORCED is not set -UCLIBC_HAS_WCHAR=y -# UCLIBC_HAS_LOCALE is not set -UCLIBC_HAS_HEXADECIMAL_FLOATS=y -UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y -UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 -# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set -UCLIBC_HAS_STDIO_BUFSIZ_4096=y -# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set -UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set -# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set -UCLIBC_HAS_STDIO_GETC_MACRO=y -UCLIBC_HAS_STDIO_PUTC_MACRO=y -UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y -# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set -UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y -# UCLIBC_HAS_FOPEN_CLOSEEXEC_MODE is not set -UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y -UCLIBC_HAS_PRINTF_M_SPEC=y -UCLIBC_HAS_ERRNO_MESSAGES=y -# UCLIBC_HAS_SYS_ERRLIST is not set -UCLIBC_HAS_SIGNUM_MESSAGES=y -# UCLIBC_HAS_SYS_SIGLIST is not set -UCLIBC_HAS_GNU_GETOPT=y -UCLIBC_HAS_GNU_GETSUBOPT=y - -# -# Big and Tall -# -UCLIBC_HAS_REGEX=y -# UCLIBC_HAS_REGEX_OLD is not set -UCLIBC_HAS_FNMATCH=y -# UCLIBC_HAS_FNMATCH_OLD is not set -UCLIBC_HAS_WORDEXP=y -UCLIBC_HAS_NFTW=y -UCLIBC_HAS_FTW=y -# UCLIBC_HAS_FTS is not set -UCLIBC_HAS_GLOB=y -UCLIBC_HAS_GNU_GLOB=y -UCLIBC_HAS_UTMPX=y - -# -# Library Installation Options -# -RUNTIME_PREFIX="/" -DEVEL_PREFIX="/usr/" -MULTILIB_DIR="lib" -HARDWIRED_ABSPATH=y - -# -# Security options -# -UCLIBC_HAS_ARC4RANDOM=y -# ARC4RANDOM_USES_NODEV is not set -# UCLIBC_HAS_SSP is not set -UCLIBC_BUILD_RELRO=y -UCLIBC_BUILD_NOW=y -UCLIBC_BUILD_NOEXECSTACK=y - -# -# Development/debugging options -# -CROSS_COMPILER_PREFIX="" -UCLIBC_EXTRA_CFLAGS="" -# DODEBUG is not set -# DODEBUG_PT is not set -DOSTRIP=y -# DOASSERTS is not set -# SUPPORT_LD_DEBUG is not set -# SUPPORT_LD_DEBUG_EARLY is not set -# UCLIBC_MALLOC_DEBUGGING is not set -# UCLIBC_HAS_BACKTRACE is not set -WARNINGS="-Wall" -# EXTRA_WARNINGS is not set -# DOMULTI is not set -# UCLIBC_MJN3_ONLY is not set diff --git a/target/microblaze/Makefile b/target/microblaze/Makefile index 74f8d3dd0..58d02c5be 100644 --- a/target/microblaze/Makefile +++ b/target/microblaze/Makefile @@ -10,12 +10,10 @@ include $(TOPDIR)/mk/image.mk KERNEL:=$(LINUX_DIR)/arch/microblaze/boot/$(ADK_TARGET_KERNEL) ifeq ($(ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605),y) -MODEL:=petalogix-ml605 -DTB:=-dtb target/microblaze/ml605.dtb +QEMU_ARGS+=-M petalogix-ml605 -dtb target/microblaze/ml605.dtb endif ifeq ($(ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800),y) -MODEL:=petalogix-s3adsp1800 -DTB:= +QEMU_ARGS+=-M petalogix-s3adsp1800 endif ifeq ($(ADK_TARGET_FS),squashfs) @@ -25,7 +23,7 @@ imageinstall: $(BUILD_DIR)/root.squashfs @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) ifneq ($(ADK_HARDWARE_QEMU),) @echo "Start qemu with following options:" - @echo 'qemu-system-${CPU_ARCH} -M $(MODEL) -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL) -pflash $(FW_DIR)/$(ROOTFSSQUASHFS) $(DTB)' + @echo 'qemu-system-${CPU_ARCH} $(QEMU_ARGS) -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL) -pflash $(FW_DIR)/$(ROOTFSSQUASHFS)' endif endif ifeq ($(ADK_TARGET_FS),jffs2) @@ -33,7 +31,7 @@ imageinstall: $(FW_DIR)/$(ROOTFSJFFS2) @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) ifneq ($(ADK_HARDWARE_QEMU),) @echo "Start qemu with following options:" - @echo 'qemu-system-${CPU_ARCH} -M $(MODEL) -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL) -pflash $(FW_DIR)/$(ROOTFSJFFS2) $(DTB)' + @echo 'qemu-system-${CPU_ARCH} $(QEMU_ARGS) -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL) -pflash $(FW_DIR)/$(ROOTFSJFFS2)' endif endif ifeq ($(ADK_TARGET_FS),initramfs) @@ -43,7 +41,7 @@ imageinstall: $(FW_DIR)/$(INITRAMFS) @echo 'The initramfs image is: ${FW_DIR}/${INITRAMFS}' ifneq ($(ADK_HARDWARE_QEMU),) @echo "Start qemu with following command line:" - @echo 'qemu-system-${CPU_ARCH} -M $(MODEL) -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL) -initrd ${FW_DIR}/${INITRAMFS} $(DTB)' + @echo 'qemu-system-${CPU_ARCH} $(QEMU_ARGS) -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL) -initrd ${FW_DIR}/${INITRAMFS}' endif endif ifeq ($(ADK_TARGET_FS),initramfs-piggyback) @@ -52,11 +50,18 @@ imageinstall: createinitramfs @echo 'The kernel+initramfs file is: $(FW_DIR)/${TARGET_KERNEL}' ifneq ($(ADK_HARDWARE_QEMU),) @echo "Start qemu with following command line:" - @echo 'qemu-system-${CPU_ARCH} -M $(MODEL) -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL) $(DTB)' + @echo 'qemu-system-${CPU_ARCH} $(QEMU_ARGS) -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL)' endif endif ifeq ($(ADK_TARGET_FS),archive) imageinstall: $(FW_DIR)/$(ROOTFSTARBALL) @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSTARBALL)" endif +ifeq ($(ADK_TARGET_FS),initramfsarchive) +imageinstall: $(FW_DIR)/$(ROOTFSUSERTARBALL) + @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)" +endif diff --git a/target/microblaze/kernel/qemu-microblaze-ml605 b/target/microblaze/kernel/qemu-microblaze-ml605 index 3c331795d..cb8da0cec 100644 --- a/target/microblaze/kernel/qemu-microblaze-ml605 +++ b/target/microblaze/kernel/qemu-microblaze-ml605 @@ -15,13 +15,11 @@ CONFIG_PCI_XILINX=y CONFIG_DTC=y CONFIG_OF=y CONFIG_PROC_DEVICETREE=y +CONFIG_NET_VENDOR_XILINX=y +CONFIG_XILINX_AXI_EMAC=y CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y -CONFIG_SERIAL_8250_NR_UARTS=4 -CONFIG_SERIAL_8250_RUNTIME_UARTS=4 +CONFIG_SERIAL_8250_NR_UARTS=1 +CONFIG_SERIAL_8250_RUNTIME_UARTS=1 CONFIG_SERIAL_OF_PLATFORM=y -CONFIG_NETDEVICES=y -CONFIG_NET_CORE=y -CONFIG_ETHERNET=y -CONFIG_NET_VENDOR_XILINX=y -CONFIG_XILINX_AXI_EMAC=y +CONFIG_CMDLINE_FORCE=y diff --git a/target/microblaze/kernel/qemu-microblaze-s3adsp1800 b/target/microblaze/kernel/qemu-microblaze-s3adsp1800 index c49b961b3..3c3546b47 100644 --- a/target/microblaze/kernel/qemu-microblaze-s3adsp1800 +++ b/target/microblaze/kernel/qemu-microblaze-s3adsp1800 @@ -15,10 +15,8 @@ CONFIG_PCI_XILINX=y CONFIG_DTC=y CONFIG_OF=y CONFIG_PROC_DEVICETREE=y -CONFIG_SERIAL_UARTLITE=y -CONFIG_SERIAL_UARTLITE_CONSOLE=y -CONFIG_NETDEVICES=y -CONFIG_NET_CORE=y -CONFIG_ETHERNET=y CONFIG_NET_VENDOR_XILINX=y CONFIG_XILINX_EMACLITE=y +CONFIG_SERIAL_UARTLITE=y +CONFIG_SERIAL_UARTLITE_CONSOLE=y +CONFIG_CMDLINE_FORCE=y diff --git a/target/microblaze/s3adsp1800.dtb b/target/microblaze/s3adsp1800.dtb Binary files differnew file mode 100644 index 000000000..163f1632d --- /dev/null +++ b/target/microblaze/s3adsp1800.dtb diff --git a/target/microblaze/s3adsp1800.dts b/target/microblaze/s3adsp1800.dts new file mode 100644 index 000000000..9cc6bdc13 --- /dev/null +++ b/target/microblaze/s3adsp1800.dts @@ -0,0 +1,287 @@ +/dts-v1/; + +/ { + #address-cells = <0x1>; + #size-cells = <0x1>; + compatible = "xlnx,microblaze"; + model = "testing"; + + memory@90000000 { + device_type = "memory"; + reg = <0x90000000 0x8000000>; + }; + + chosen { + bootargs = "console=ttyUL0,115200"; + linux,stdout-path = "/plb@0/serial@84000000"; + }; + + cpus { + #address-cells = <0x1>; + #cpus = <0x1>; + #size-cells = <0x0>; + + cpu@0 { + clock-frequency = <0x3b9aca0>; + compatible = "xlnx,microblaze-7.10.d"; + d-cache-baseaddr = <0x90000000>; + d-cache-highaddr = <0x97ffffff>; + d-cache-line-size = <0x10>; + d-cache-size = <0x800>; + device_type = "cpu"; + i-cache-baseaddr = <0x90000000>; + i-cache-highaddr = <0x97ffffff>; + i-cache-line-size = <0x10>; + i-cache-size = <0x800>; + model = "microblaze,7.10.d"; + reg = <0x0>; + timebase-frequency = <0x3b9aca0>; + xlnx,addr-tag-bits = <0x10>; + xlnx,allow-dcache-wr = <0x1>; + xlnx,allow-icache-wr = <0x1>; + xlnx,area-optimized = <0x0>; + xlnx,cache-byte-size = <0x800>; + xlnx,d-lmb = <0x1>; + xlnx,d-opb = <0x0>; + xlnx,d-plb = <0x1>; + xlnx,data-size = <0x20>; + xlnx,dcache-addr-tag = <0x10>; + xlnx,dcache-always-used = <0x0>; + xlnx,dcache-byte-size = <0x800>; + xlnx,dcache-line-len = <0x4>; + xlnx,dcache-use-fsl = <0x1>; + xlnx,debug-enabled = <0x1>; + xlnx,div-zero-exception = <0x0>; + xlnx,dopb-bus-exception = <0x0>; + xlnx,dynamic-bus-sizing = <0x1>; + xlnx,edge-is-positive = <0x1>; + xlnx,family = "spartan3adsp"; + xlnx,fpu-exception = <0x0>; + xlnx,fsl-data-size = <0x20>; + xlnx,fsl-exception = <0x0>; + xlnx,fsl-links = <0x0>; + xlnx,i-lmb = <0x1>; + xlnx,i-opb = <0x0>; + xlnx,i-plb = <0x1>; + xlnx,icache-always-used = <0x0>; + xlnx,icache-line-len = <0x4>; + xlnx,icache-use-fsl = <0x1>; + xlnx,ill-opcode-exception = <0x0>; + xlnx,instance = "microblaze_0"; + xlnx,interconnect = <0x1>; + xlnx,interrupt-is-edge = <0x0>; + xlnx,iopb-bus-exception = <0x0>; + xlnx,mmu-dtlb-size = <0x4>; + xlnx,mmu-itlb-size = <0x2>; + xlnx,mmu-tlb-access = <0x3>; + xlnx,mmu-zones = <0x10>; + xlnx,number-of-pc-brk = <0x3>; + xlnx,number-of-rd-addr-brk = <0x2>; + xlnx,number-of-wr-addr-brk = <0x2>; + xlnx,opcode-0x0-illegal = <0x0>; + xlnx,pvr = <0x1>; + xlnx,pvr-user1 = <0x0>; + xlnx,pvr-user2 = <0x0>; + xlnx,reset-msr = <0x0>; + xlnx,sco = <0x0>; + xlnx,unaligned-exceptions = <0x1>; + xlnx,use-barrel = <0x1>; + xlnx,use-dcache = <0x1>; + xlnx,use-div = <0x0>; + xlnx,use-ext-brk = <0x1>; + xlnx,use-ext-nm-brk = <0x1>; + xlnx,use-extended-fsl-instr = <0x0>; + xlnx,use-fpu = <0x0>; + xlnx,use-hw-mul = <0x1>; + xlnx,use-icache = <0x1>; + xlnx,use-interrupt = <0x1>; + xlnx,use-mmu = <0x3>; + xlnx,use-msr-instr = <0x1>; + xlnx,use-pcmp-instr = <0x1>; + }; + }; + + plb@0 { + #address-cells = <0x1>; + #size-cells = <0x1>; + compatible = "xlnx,plb-v46-1.03.a", "simple-bus"; + ranges; + + ethernet@81000000 { + compatible = "xlnx,xps-ethernetlite-2.00.b"; + device_type = "network"; + interrupt-parent = <0x1>; + interrupts = <0x1 0x0>; + local-mac-address = [02 00 00 00 00 00]; + reg = <0x81000000 0x10000>; + xlnx,duplex = <0x1>; + xlnx,family = "spartan3adsp"; + xlnx,rx-ping-pong = <0x0>; + xlnx,tx-ping-pong = <0x0>; + }; + + flash@a0000000 { + #address-cells = <1>; + #size-cells = <1>; + bank-width = <0x1>; + compatible = "xlnx,xps-mch-emc-2.00.a", "cfi-flash"; + reg = <0xa0000000 0x1000000>; + xlnx,family = "spartan3adsp"; + xlnx,include-datawidth-matching-0 = <0x1>; + xlnx,include-datawidth-matching-1 = <0x0>; + xlnx,include-datawidth-matching-2 = <0x0>; + xlnx,include-datawidth-matching-3 = <0x0>; + xlnx,include-negedge-ioregs = <0x0>; + xlnx,include-plb-ipif = <0x1>; + xlnx,include-wrbuf = <0x1>; + xlnx,max-mem-width = <0x8>; + xlnx,mch-native-dwidth = <0x20>; + xlnx,mch-plb-clk-period-ps = <0x3e80>; + xlnx,mch-splb-awidth = <0x20>; + xlnx,mch0-accessbuf-depth = <0x10>; + xlnx,mch0-protocol = <0x0>; + xlnx,mch0-rddatabuf-depth = <0x10>; + xlnx,mch1-accessbuf-depth = <0x10>; + xlnx,mch1-protocol = <0x0>; + xlnx,mch1-rddatabuf-depth = <0x10>; + xlnx,mch2-accessbuf-depth = <0x10>; + xlnx,mch2-protocol = <0x0>; + xlnx,mch2-rddatabuf-depth = <0x10>; + xlnx,mch3-accessbuf-depth = <0x10>; + xlnx,mch3-protocol = <0x0>; + xlnx,mch3-rddatabuf-depth = <0x10>; + xlnx,mem0-width = <0x8>; + xlnx,mem1-width = <0x20>; + xlnx,mem2-width = <0x20>; + xlnx,mem3-width = <0x20>; + xlnx,num-banks-mem = <0x1>; + xlnx,num-channels = <0x0>; + xlnx,priority-mode = <0x0>; + xlnx,synch-mem-0 = <0x0>; + xlnx,synch-mem-1 = <0x0>; + xlnx,synch-mem-2 = <0x0>; + xlnx,synch-mem-3 = <0x0>; + xlnx,synch-pipedelay-0 = <0x2>; + xlnx,synch-pipedelay-1 = <0x2>; + xlnx,synch-pipedelay-2 = <0x2>; + xlnx,synch-pipedelay-3 = <0x2>; + xlnx,tavdv-ps-mem-0 = <0x11170>; + xlnx,tavdv-ps-mem-1 = <0x3a98>; + xlnx,tavdv-ps-mem-2 = <0x3a98>; + xlnx,tavdv-ps-mem-3 = <0x3a98>; + xlnx,tcedv-ps-mem-0 = <0x11170>; + xlnx,tcedv-ps-mem-1 = <0x3a98>; + xlnx,tcedv-ps-mem-2 = <0x3a98>; + xlnx,tcedv-ps-mem-3 = <0x3a98>; + xlnx,thzce-ps-mem-0 = <0x61a8>; + xlnx,thzce-ps-mem-1 = <0x1b58>; + xlnx,thzce-ps-mem-2 = <0x1b58>; + xlnx,thzce-ps-mem-3 = <0x1b58>; + xlnx,thzoe-ps-mem-0 = <0x61a8>; + xlnx,thzoe-ps-mem-1 = <0x1b58>; + xlnx,thzoe-ps-mem-2 = <0x1b58>; + xlnx,thzoe-ps-mem-3 = <0x1b58>; + xlnx,tlzwe-ps-mem-0 = <0x1388>; + xlnx,tlzwe-ps-mem-1 = <0x0>; + xlnx,tlzwe-ps-mem-2 = <0x0>; + xlnx,tlzwe-ps-mem-3 = <0x0>; + xlnx,twc-ps-mem-0 = <0x11170>; + xlnx,twc-ps-mem-1 = <0x3a98>; + xlnx,twc-ps-mem-2 = <0x3a98>; + xlnx,twc-ps-mem-3 = <0x3a98>; + xlnx,twp-ps-mem-0 = <0xafc8>; + xlnx,twp-ps-mem-1 = <0x2ee0>; + xlnx,twp-ps-mem-2 = <0x2ee0>; + xlnx,twp-ps-mem-3 = <0x2ee0>; + xlnx,xcl0-linesize = <0x4>; + xlnx,xcl0-writexfer = <0x1>; + xlnx,xcl1-linesize = <0x4>; + xlnx,xcl1-writexfer = <0x1>; + xlnx,xcl2-linesize = <0x4>; + xlnx,xcl2-writexfer = <0x1>; + xlnx,xcl3-linesize = <0x4>; + xlnx,xcl3-writexfer = <0x1>; + partition@0x00000000 { + label = "rootfs"; + reg = <0x00000000 0x01000000>; + }; + }; + + gpio@81400000 { + compatible = "xlnx,xps-gpio-1.00.a"; + interrupt-parent = <0x1>; + interrupts = <0x2 0x2>; + reg = <0x81400000 0x10000>; + xlnx,all-inputs = <0x0>; + xlnx,all-inputs-2 = <0x0>; + xlnx,dout-default = <0x0>; + xlnx,dout-default-2 = <0x0>; + xlnx,family = "spartan3adsp"; + xlnx,gpio-width = <0x8>; + xlnx,interrupt-present = <0x1>; + xlnx,is-bidir = <0x0>; + xlnx,is-bidir-2 = <0x1>; + xlnx,is-dual = <0x0>; + xlnx,tri-default = <0xffffffff>; + xlnx,tri-default-2 = <0xffffffff>; + }; + + serial@84000000 { + clock-frequency = <0x3b9aca0>; + compatible = "xlnx,xps-uartlite-1.00.a"; + current-speed = <0x1c200>; + device_type = "serial"; + interrupt-parent = <0x1>; + interrupts = <0x3 0x0>; + port-number = <0x0>; + reg = <0x84000000 0x10000>; + xlnx,baudrate = <0x1c200>; + xlnx,data-bits = <0x8>; + xlnx,family = "spartan3adsp"; + xlnx,odd-parity = <0x0>; + xlnx,use-parity = <0x0>; + }; + + debug@84400000 { + compatible = "xlnx,mdm-1.00.d"; + reg = <0x84400000 0x10000>; + xlnx,family = "spartan3adsp"; + xlnx,interconnect = <0x1>; + xlnx,jtag-chain = <0x2>; + xlnx,mb-dbg-ports = <0x1>; + xlnx,uart-width = <0x8>; + xlnx,use-uart = <0x1>; + xlnx,write-fsl-ports = <0x0>; + }; + + mpmc@90000000 { + #address-cells = <0x1>; + #size-cells = <0x1>; + compatible = "xlnx,mpmc-4.03.a"; + }; + + interrupt-controller@81800000 { + #interrupt-cells = <0x2>; + compatible = "xlnx,xps-intc-1.00.a"; + interrupt-controller; + reg = <0x81800000 0x10000>; + xlnx,kind-of-intr = <0xa>; + xlnx,num-intr-inputs = <0x4>; + linux,phandle = <0x1>; + }; + + timer@83c00000 { + compatible = "xlnx,xps-timer-1.00.a"; + interrupt-parent = <0x1>; + interrupts = <0x0 0x2>; + reg = <0x83c00000 0x10000>; + xlnx,count-width = <0x20>; + xlnx,family = "spartan3adsp"; + xlnx,gen0-assert = <0x1>; + xlnx,gen1-assert = <0x1>; + xlnx,one-timer-only = <0x0>; + xlnx,trig0-assert = <0x1>; + xlnx,trig1-assert = <0x1>; + }; + }; +}; diff --git a/target/microblaze/sys-available/qemu-microblaze b/target/microblaze/sys-available/qemu-microblaze index 8f35db842..ee9cb6a52 100644 --- a/target/microblaze/sys-available/qemu-microblaze +++ b/target/microblaze/sys-available/qemu-microblaze @@ -3,11 +3,9 @@ config ADK_TARGET_SYSTEM_QEMU_MICROBLAZE select ADK_microblaze select ADK_big select ADK_qemu_microblaze - select ADK_KERNEL_CPU_BIG_ENDIAN select ADK_HARDWARE_QEMU + select ADK_TARGET_WITH_MTD select ADK_TARGET_KERNEL_LINUXBIN - select ADK_USE_KERNEL_MINICONFIG - select ADK_TOOLCHAIN_GCC_SJLJ help Qemu support for microblaze big endian architecture. diff --git a/target/microblaze/sys-available/qemu-microblazeel b/target/microblaze/sys-available/qemu-microblazeel index 085718e63..8dff0e260 100644 --- a/target/microblaze/sys-available/qemu-microblazeel +++ b/target/microblaze/sys-available/qemu-microblazeel @@ -1,13 +1,11 @@ config ADK_TARGET_SYSTEM_QEMU_MICROBLAZEEL bool "Qemu Emulator (little endian)" - select ADK_microblazeel + select ADK_microblaze select ADK_qemu_microblazeel select ADK_little - select ADK_KERNEL_CPU_LITTLE_ENDIAN select ADK_HARDWARE_QEMU + select ADK_TARGET_WITH_MTD select ADK_TARGET_KERNEL_LINUXBIN - select ADK_USE_KERNEL_MINICONFIG - select ADK_TOOLCHAIN_GCC_SJLJ help Qemu support for microblaze little endian architecture. diff --git a/target/microblaze/sys-available/toolchain-microblaze b/target/microblaze/sys-available/toolchain-microblaze index 6fb76c5f5..3b8d3512b 100644 --- a/target/microblaze/sys-available/toolchain-microblaze +++ b/target/microblaze/sys-available/toolchain-microblaze @@ -4,7 +4,7 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_MICROBLAZE select ADK_big select ADK_toolchain_microblaze select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help Microblaze toolchain. diff --git a/target/microblaze/sys-available/toolchain-microblazeel b/target/microblaze/sys-available/toolchain-microblazeel index 8992e5550..c41e26f91 100644 --- a/target/microblaze/sys-available/toolchain-microblazeel +++ b/target/microblaze/sys-available/toolchain-microblazeel @@ -4,7 +4,7 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_MICROBLAZEEL select ADK_little select ADK_toolchain_microblazeel select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help Microblaze toolchain. diff --git a/target/microblaze/target.mk b/target/microblaze/target.mk index bee74e465..c179123f9 100644 --- a/target/microblaze/target.mk +++ b/target/microblaze/target.mk @@ -1,5 +1,4 @@ include $(TOPDIR)/mk/kernel-ver.mk ARCH:= microblaze CPU_ARCH:= $(ADK_TARGET_CPU_ARCH) -TARGET_OPTIMIZATION:= -Os -pipe TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS) diff --git a/target/mips/Makefile b/target/mips/Makefile index 68c2ea0fe..436b570e3 100644 --- a/target/mips/Makefile +++ b/target/mips/Makefile @@ -112,6 +112,12 @@ ifeq ($(ADK_TARGET_SYSTEM_LEMOTE_YEELONG),y) @echo "The root parameter have to be changed." endif endif +ifeq ($(ADK_TARGET_FS),initramfsarchive) +imageinstall: $(FW_DIR)/$(ROOTFSUSERTARBALL) + @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)" +endif ifeq ($(ADK_TARGET_FS),initramfs) imageinstall: $(FW_DIR)/$(INITRAMFS) @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) diff --git a/target/mips/kernel.config b/target/mips/kernel.config deleted file mode 100644 index a7000ece9..000000000 --- a/target/mips/kernel.config +++ /dev/null @@ -1,1095 +0,0 @@ -# -# Automatically generated file; DO NOT EDIT. -# Linux/mips 3.5.4 Kernel Configuration -# -CONFIG_MIPS=y - -# -# Machine selection -# -# CONFIG_MIPS_ALCHEMY is not set -# CONFIG_AR7 is not set -# CONFIG_ATH79 is not set -# CONFIG_BCM47XX is not set -# CONFIG_BCM63XX is not set -# CONFIG_MIPS_COBALT is not set -# CONFIG_MACH_DECSTATION is not set -# CONFIG_MACH_JAZZ is not set -# CONFIG_MACH_JZ4740 is not set -# CONFIG_LANTIQ is not set -# CONFIG_LASAT is not set -CONFIG_MACH_LOONGSON=y -# CONFIG_MIPS_MALTA is not set -# CONFIG_MIPS_SIM is not set -# CONFIG_NEC_MARKEINS is not set -# CONFIG_MACH_VR41XX is not set -# CONFIG_NXP_STB220 is not set -# CONFIG_NXP_STB225 is not set -# CONFIG_PNX8550_JBS is not set -# CONFIG_PNX8550_STB810 is not set -# CONFIG_PMC_MSP is not set -# CONFIG_PMC_YOSEMITE is not set -# CONFIG_POWERTV is not set -# CONFIG_SGI_IP22 is not set -# CONFIG_SGI_IP27 is not set -# CONFIG_SGI_IP28 is not set -# CONFIG_SGI_IP32 is not set -# CONFIG_SIBYTE_CRHINE is not set -# CONFIG_SIBYTE_CARMEL is not set -# CONFIG_SIBYTE_CRHONE is not set -# CONFIG_SIBYTE_RHONE is not set -# CONFIG_SIBYTE_SWARM is not set -# CONFIG_SIBYTE_LITTLESUR is not set -# CONFIG_SIBYTE_SENTOSA is not set -# CONFIG_SIBYTE_BIGSUR is not set -# CONFIG_SNI_RM is not set -# CONFIG_MACH_TX39XX is not set -# CONFIG_MACH_TX49XX is not set -# CONFIG_MIKROTIK_RB532 is not set -# CONFIG_WR_PPMC is not set -# CONFIG_CAVIUM_OCTEON_SIMULATOR is not set -# CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set -# CONFIG_NLM_XLR_BOARD is not set -# CONFIG_NLM_XLP_BOARD is not set -# CONFIG_ALCHEMY_GPIO_INDIRECT is not set -# CONFIG_LEMOTE_FULOONG2E is not set -CONFIG_LEMOTE_MACH2F=y -CONFIG_CS5536=y -# CONFIG_CS5536_MFGPT is not set -CONFIG_LOONGSON_SUSPEND=y -CONFIG_LOONGSON_UART_BASE=y -CONFIG_LOONGSON_MC146818=y -CONFIG_RWSEM_GENERIC_SPINLOCK=y -# CONFIG_ARCH_HAS_ILOG2_U32 is not set -# CONFIG_ARCH_HAS_ILOG2_U64 is not set -CONFIG_GENERIC_HWEIGHT=y -CONFIG_GENERIC_CALIBRATE_DELAY=y -CONFIG_SCHED_OMIT_FRAME_POINTER=y -CONFIG_CEVT_R4K_LIB=y -CONFIG_CEVT_R4K=y -CONFIG_CSRC_R4K_LIB=y -CONFIG_CSRC_R4K=y -# CONFIG_ARCH_DMA_ADDR_T_64BIT is not set -CONFIG_DMA_NONCOHERENT=y -CONFIG_NEED_DMA_MAP_STATE=y -CONFIG_SYS_HAS_EARLY_PRINTK=y -CONFIG_I8259=y -# CONFIG_MIPS_MACHINE is not set -# CONFIG_NO_IOPORT is not set -CONFIG_GENERIC_ISA_DMA=y -CONFIG_GENERIC_ISA_DMA_SUPPORT_BROKEN=y -CONFIG_ISA_DMA_API=y -CONFIG_GENERIC_GPIO=y -CONFIG_CPU_LITTLE_ENDIAN=y -CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y -CONFIG_IRQ_CPU=y -CONFIG_BOOT_ELF32=y -CONFIG_MIPS_L1_CACHE_SHIFT=5 - -# -# CPU selection -# -CONFIG_CPU_LOONGSON2F=y -CONFIG_CPU_NOP_WORKAROUNDS=y -CONFIG_CPU_JUMP_WORKAROUNDS=y -CONFIG_CPU_LOONGSON2F_WORKAROUNDS=y -CONFIG_SYS_SUPPORTS_ZBOOT=y -CONFIG_CPU_LOONGSON2=y -CONFIG_SYS_HAS_CPU_LOONGSON2F=y -CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y -CONFIG_SYS_SUPPORTS_64BIT_KERNEL=y -CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y -CONFIG_CPU_SUPPORTS_64BIT_KERNEL=y -CONFIG_CPU_SUPPORTS_CPUFREQ=y -CONFIG_CPU_SUPPORTS_UNCACHED_ACCELERATED=y - -# -# Kernel type -# -CONFIG_32BIT=y -# CONFIG_64BIT is not set -CONFIG_PAGE_SIZE_16KB=y -# CONFIG_PAGE_SIZE_64KB is not set -CONFIG_FORCE_MAX_ZONEORDER=11 -CONFIG_BOARD_SCACHE=y -CONFIG_MIPS_MT_DISABLED=y -# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set -CONFIG_CPU_HAS_WB=y -CONFIG_CPU_HAS_SYNC=y -# CONFIG_HIGHMEM is not set -CONFIG_CPU_SUPPORTS_HIGHMEM=y -CONFIG_SYS_SUPPORTS_HIGHMEM=y -CONFIG_ARCH_SPARSEMEM_ENABLE=y -CONFIG_SELECT_MEMORY_MODEL=y -CONFIG_SPARSEMEM_MANUAL=y -CONFIG_SPARSEMEM=y -CONFIG_HAVE_MEMORY_PRESENT=y -CONFIG_SPARSEMEM_STATIC=y -CONFIG_HAVE_MEMBLOCK=y -CONFIG_HAVE_MEMBLOCK_NODE_MAP=y -CONFIG_ARCH_DISCARD_MEMBLOCK=y -CONFIG_SPLIT_PTLOCK_CPUS=4 -# CONFIG_COMPACTION is not set -# CONFIG_PHYS_ADDR_T_64BIT is not set -CONFIG_ZONE_DMA_FLAG=0 -CONFIG_VIRT_TO_BUS=y -# CONFIG_KSM is not set -CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 -CONFIG_CROSS_MEMORY_ATTACH=y -CONFIG_NEED_PER_CPU_KM=y -# CONFIG_CLEANCACHE is not set -# CONFIG_HZ_48 is not set -CONFIG_HZ_100=y -# CONFIG_HZ_128 is not set -# CONFIG_HZ_250 is not set -# CONFIG_HZ_256 is not set -# CONFIG_HZ_1000 is not set -# CONFIG_HZ_1024 is not set -CONFIG_SYS_SUPPORTS_ARBIT_HZ=y -CONFIG_HZ=100 -CONFIG_PREEMPT_NONE=y -# CONFIG_PREEMPT_VOLUNTARY is not set -# CONFIG_PREEMPT is not set -# CONFIG_KEXEC is not set -# CONFIG_SECCOMP is not set -# CONFIG_USE_OF is not set -CONFIG_LOCKDEP_SUPPORT=y -CONFIG_STACKTRACE_SUPPORT=y -CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" -CONFIG_HAVE_IRQ_WORK=y - -# -# General setup -# -CONFIG_EXPERIMENTAL=y -CONFIG_BROKEN_ON_SMP=y -CONFIG_INIT_ENV_ARG_LIMIT=32 -CONFIG_CROSS_COMPILE="" -CONFIG_LOCALVERSION="" -# CONFIG_LOCALVERSION_AUTO is not set -CONFIG_HAVE_KERNEL_GZIP=y -CONFIG_HAVE_KERNEL_BZIP2=y -CONFIG_HAVE_KERNEL_LZMA=y -CONFIG_HAVE_KERNEL_LZO=y -# CONFIG_KERNEL_GZIP is not set -# CONFIG_KERNEL_BZIP2 is not set -CONFIG_KERNEL_LZMA=y -# CONFIG_KERNEL_LZO is not set -CONFIG_DEFAULT_HOSTNAME="openadk" -CONFIG_SYSVIPC=y -CONFIG_SYSVIPC_SYSCTL=y -CONFIG_POSIX_MQUEUE=y -CONFIG_POSIX_MQUEUE_SYSCTL=y -# CONFIG_BSD_PROCESS_ACCT is not set -# CONFIG_FHANDLE is not set -# CONFIG_TASKSTATS is not set -# CONFIG_AUDIT is not set -CONFIG_HAVE_GENERIC_HARDIRQS=y - -# -# IRQ subsystem -# -CONFIG_GENERIC_HARDIRQS=y -CONFIG_GENERIC_IRQ_PROBE=y -CONFIG_GENERIC_IRQ_SHOW=y -CONFIG_IRQ_FORCED_THREADING=y -CONFIG_GENERIC_CLOCKEVENTS=y -CONFIG_GENERIC_CLOCKEVENTS_BUILD=y -CONFIG_GENERIC_CMOS_UPDATE=y - -# -# Timers subsystem -# -# CONFIG_NO_HZ is not set -# CONFIG_HIGH_RES_TIMERS is not set - -# -# RCU Subsystem -# -CONFIG_TINY_RCU=y -# CONFIG_PREEMPT_RCU is not set -# CONFIG_TREE_RCU_TRACE is not set -# CONFIG_IKCONFIG is not set -CONFIG_LOG_BUF_SHIFT=14 -# CONFIG_CGROUPS is not set -# CONFIG_CHECKPOINT_RESTORE is not set -# CONFIG_NAMESPACES is not set -# CONFIG_SCHED_AUTOGROUP is not set -# CONFIG_SYSFS_DEPRECATED is not set -# CONFIG_RELAY is not set -# CONFIG_BLK_DEV_INITRD is not set -CONFIG_CC_OPTIMIZE_FOR_SIZE=y -CONFIG_SYSCTL=y -CONFIG_ANON_INODES=y -CONFIG_EXPERT=y -CONFIG_SYSCTL_SYSCALL=y -# CONFIG_KALLSYMS is not set -CONFIG_HOTPLUG=y -CONFIG_PRINTK=y -CONFIG_BUG=y -# CONFIG_ELF_CORE is not set -# CONFIG_BASE_FULL is not set -CONFIG_FUTEX=y -CONFIG_EPOLL=y -CONFIG_SIGNALFD=y -CONFIG_TIMERFD=y -CONFIG_EVENTFD=y -CONFIG_SHMEM=y -CONFIG_AIO=y -CONFIG_EMBEDDED=y -CONFIG_HAVE_PERF_EVENTS=y -CONFIG_PERF_USE_VMALLOC=y - -# -# Kernel Performance Events And Counters -# -# CONFIG_PERF_EVENTS is not set -# CONFIG_VM_EVENT_COUNTERS is not set -CONFIG_PCI_QUIRKS=y -# CONFIG_COMPAT_BRK is not set -CONFIG_SLAB=y -# CONFIG_SLUB is not set -# CONFIG_SLOB is not set -# CONFIG_PROFILING is not set -CONFIG_HAVE_OPROFILE=y -# CONFIG_KPROBES is not set -# CONFIG_JUMP_LABEL is not set -CONFIG_HAVE_KPROBES=y -CONFIG_HAVE_KRETPROBES=y -CONFIG_HAVE_DMA_ATTRS=y -CONFIG_GENERIC_SMP_IDLE_THREAD=y -CONFIG_HAVE_DMA_API_DEBUG=y -CONFIG_HAVE_ARCH_JUMP_LABEL=y - -# -# GCOV-based kernel profiling -# -CONFIG_HAVE_GENERIC_DMA_COHERENT=y -CONFIG_SLABINFO=y -CONFIG_RT_MUTEXES=y -CONFIG_BASE_SMALL=1 -CONFIG_MODULES=y -# CONFIG_MODULE_FORCE_LOAD is not set -CONFIG_MODULE_UNLOAD=y -CONFIG_MODULE_FORCE_UNLOAD=y -# CONFIG_MODVERSIONS is not set -# CONFIG_MODULE_SRCVERSION_ALL is not set -# CONFIG_BLOCK is not set -# CONFIG_INLINE_SPIN_TRYLOCK is not set -# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set -# CONFIG_INLINE_SPIN_LOCK is not set -# CONFIG_INLINE_SPIN_LOCK_BH is not set -# CONFIG_INLINE_SPIN_LOCK_IRQ is not set -# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set -# CONFIG_INLINE_SPIN_UNLOCK_BH is not set -CONFIG_INLINE_SPIN_UNLOCK_IRQ=y -# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set -# CONFIG_INLINE_READ_TRYLOCK is not set -# CONFIG_INLINE_READ_LOCK is not set -# CONFIG_INLINE_READ_LOCK_BH is not set -# CONFIG_INLINE_READ_LOCK_IRQ is not set -# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set -CONFIG_INLINE_READ_UNLOCK=y -# CONFIG_INLINE_READ_UNLOCK_BH is not set -CONFIG_INLINE_READ_UNLOCK_IRQ=y -# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set -# CONFIG_INLINE_WRITE_TRYLOCK is not set -# CONFIG_INLINE_WRITE_LOCK is not set -# CONFIG_INLINE_WRITE_LOCK_BH is not set -# CONFIG_INLINE_WRITE_LOCK_IRQ is not set -# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set -CONFIG_INLINE_WRITE_UNLOCK=y -# CONFIG_INLINE_WRITE_UNLOCK_BH is not set -CONFIG_INLINE_WRITE_UNLOCK_IRQ=y -# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set -# CONFIG_MUTEX_SPIN_ON_OWNER is not set -CONFIG_FREEZER=y - -# -# Bus options (PCI, PCMCIA, EISA, ISA, TC) -# -CONFIG_HW_HAS_PCI=y -CONFIG_PCI=y -CONFIG_PCI_DOMAINS=y -# CONFIG_ARCH_SUPPORTS_MSI is not set -# CONFIG_PCI_DEBUG is not set -# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set -# CONFIG_PCI_STUB is not set -# CONFIG_PCI_IOV is not set -# CONFIG_PCI_PRI is not set -# CONFIG_PCI_PASID is not set -CONFIG_ISA=y -CONFIG_MMU=y -# CONFIG_PCCARD is not set -# CONFIG_HOTPLUG_PCI is not set -# CONFIG_RAPIDIO is not set - -# -# Executable file formats -# -CONFIG_BINFMT_ELF=y -CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y -# CONFIG_HAVE_AOUT is not set -# CONFIG_BINFMT_MISC is not set -CONFIG_TRAD_SIGNALS=y - -# -# Power management options -# -CONFIG_ARCH_HIBERNATION_POSSIBLE=y -CONFIG_ARCH_SUSPEND_POSSIBLE=y -CONFIG_SUSPEND=y -CONFIG_SUSPEND_FREEZER=y -CONFIG_PM_SLEEP=y -# CONFIG_PM_AUTOSLEEP is not set -# CONFIG_PM_WAKELOCKS is not set -# CONFIG_PM_RUNTIME is not set -CONFIG_PM=y -# CONFIG_PM_DEBUG is not set -CONFIG_NET=y - -# -# Networking options -# -CONFIG_PACKET=y -CONFIG_UNIX=y -# CONFIG_UNIX_DIAG is not set -# CONFIG_XFRM_USER is not set -# CONFIG_NET_KEY is not set -CONFIG_INET=y -# CONFIG_IP_MULTICAST is not set -# CONFIG_IP_ADVANCED_ROUTER is not set -# CONFIG_IP_PNP is not set -# CONFIG_NET_IPIP is not set -# CONFIG_NET_IPGRE_DEMUX is not set -# CONFIG_ARPD is not set -# CONFIG_SYN_COOKIES is not set -# CONFIG_INET_AH is not set -# CONFIG_INET_ESP is not set -# CONFIG_INET_IPCOMP is not set -# CONFIG_INET_XFRM_TUNNEL is not set -# CONFIG_INET_TUNNEL is not set -# CONFIG_INET_XFRM_MODE_TRANSPORT is not set -# CONFIG_INET_XFRM_MODE_TUNNEL is not set -# CONFIG_INET_XFRM_MODE_BEET is not set -# CONFIG_INET_LRO is not set -# CONFIG_INET_DIAG is not set -# CONFIG_TCP_CONG_ADVANCED is not set -CONFIG_TCP_CONG_CUBIC=y -CONFIG_DEFAULT_TCP_CONG="cubic" -# CONFIG_TCP_MD5SIG is not set -# CONFIG_IPV6 is not set -# CONFIG_NETWORK_SECMARK is not set -# CONFIG_NETWORK_PHY_TIMESTAMPING is not set -# CONFIG_NETFILTER is not set -# CONFIG_IP_DCCP is not set -# CONFIG_IP_SCTP is not set -# CONFIG_RDS is not set -# CONFIG_TIPC is not set -# CONFIG_ATM is not set -# CONFIG_L2TP is not set -# CONFIG_BRIDGE is not set -# CONFIG_NET_DSA is not set -# CONFIG_VLAN_8021Q is not set -# CONFIG_DECNET is not set -# CONFIG_LLC2 is not set -# CONFIG_IPX is not set -# CONFIG_ATALK is not set -# CONFIG_X25 is not set -# CONFIG_LAPB is not set -# CONFIG_WAN_ROUTER is not set -# CONFIG_PHONET is not set -# CONFIG_IEEE802154 is not set -# CONFIG_NET_SCHED is not set -# CONFIG_DCB is not set -# CONFIG_BATMAN_ADV is not set -# CONFIG_OPENVSWITCH is not set -CONFIG_BQL=y - -# -# Network testing -# -# CONFIG_NET_PKTGEN is not set -# CONFIG_HAMRADIO is not set -# CONFIG_CAN is not set -# CONFIG_IRDA is not set -# CONFIG_BT is not set -# CONFIG_AF_RXRPC is not set -CONFIG_WIRELESS=y -# CONFIG_CFG80211 is not set -# CONFIG_LIB80211 is not set - -# -# CFG80211 needs to be enabled for MAC80211 -# -# CONFIG_WIMAX is not set -# CONFIG_RFKILL is not set -# CONFIG_NET_9P is not set -# CONFIG_CAIF is not set -# CONFIG_CEPH_LIB is not set -# CONFIG_NFC is not set - -# -# Device Drivers -# - -# -# Generic Driver Options -# -CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" -CONFIG_DEVTMPFS=y -CONFIG_DEVTMPFS_MOUNT=y -# CONFIG_STANDALONE is not set -# CONFIG_PREVENT_FIRMWARE_BUILD is not set -# CONFIG_FW_LOADER is not set -# CONFIG_DEBUG_DRIVER is not set -# CONFIG_DEBUG_DEVRES is not set -# CONFIG_SYS_HYPERVISOR is not set -# CONFIG_GENERIC_CPU_DEVICES is not set -# CONFIG_DMA_SHARED_BUFFER is not set -# CONFIG_CONNECTOR is not set -# CONFIG_MTD is not set -# CONFIG_PARPORT is not set -# CONFIG_PNP is not set - -# -# Misc devices -# -# CONFIG_PHANTOM is not set -# CONFIG_INTEL_MID_PTI is not set -# CONFIG_SGI_IOC4 is not set -# CONFIG_TIFM_CORE is not set -# CONFIG_ENCLOSURE_SERVICES is not set -# CONFIG_HP_ILO is not set -# CONFIG_PCH_PHUB is not set -# CONFIG_C2PORT is not set - -# -# EEPROM support -# -# CONFIG_EEPROM_93CX6 is not set -# CONFIG_CB710_CORE is not set - -# -# Texas Instruments shared transport line discipline -# -# CONFIG_TI_ST is not set - -# -# Altera FPGA firmware download module -# -CONFIG_HAVE_IDE=y - -# -# SCSI device support -# -CONFIG_SCSI_MOD=y -# CONFIG_SCSI_DMA is not set -# CONFIG_SCSI_NETLINK is not set -# CONFIG_FUSION is not set - -# -# IEEE 1394 (FireWire) support -# -# CONFIG_FIREWIRE is not set -# CONFIG_FIREWIRE_NOSY is not set -# CONFIG_I2O is not set -CONFIG_NETDEVICES=y -CONFIG_NET_CORE=y -# CONFIG_BONDING is not set -# CONFIG_DUMMY is not set -# CONFIG_EQUALIZER is not set -# CONFIG_MII is not set -# CONFIG_NET_TEAM is not set -# CONFIG_MACVLAN is not set -# CONFIG_NETCONSOLE is not set -# CONFIG_NETPOLL is not set -# CONFIG_NET_POLL_CONTROLLER is not set -# CONFIG_TUN is not set -# CONFIG_VETH is not set -# CONFIG_ARCNET is not set - -# -# CAIF transport drivers -# -CONFIG_ETHERNET=y -CONFIG_NET_VENDOR_3COM=y -# CONFIG_EL1 is not set -# CONFIG_EL3 is not set -# CONFIG_3C515 is not set -# CONFIG_VORTEX is not set -# CONFIG_TYPHOON is not set -CONFIG_NET_VENDOR_ADAPTEC=y -# CONFIG_ADAPTEC_STARFIRE is not set -CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_ACENIC is not set -CONFIG_NET_VENDOR_AMD=y -# CONFIG_AMD8111_ETH is not set -# CONFIG_LANCE is not set -# CONFIG_PCNET32 is not set -# CONFIG_DEPCA is not set -# CONFIG_NI65 is not set -CONFIG_NET_VENDOR_ATHEROS=y -# CONFIG_ATL2 is not set -# CONFIG_ATL1 is not set -# CONFIG_ATL1E is not set -# CONFIG_ATL1C is not set -CONFIG_NET_VENDOR_BROADCOM=y -# CONFIG_B44 is not set -# CONFIG_BNX2 is not set -# CONFIG_CNIC is not set -# CONFIG_TIGON3 is not set -# CONFIG_BNX2X is not set -CONFIG_NET_VENDOR_BROCADE=y -# CONFIG_BNA is not set -# CONFIG_NET_CALXEDA_XGMAC is not set -CONFIG_NET_VENDOR_CHELSIO=y -# CONFIG_CHELSIO_T1 is not set -# CONFIG_CHELSIO_T3 is not set -# CONFIG_CHELSIO_T4 is not set -# CONFIG_CHELSIO_T4VF is not set -CONFIG_NET_VENDOR_CIRRUS=y -# CONFIG_CS89x0 is not set -CONFIG_NET_VENDOR_CISCO=y -# CONFIG_ENIC is not set -# CONFIG_DM9000 is not set -# CONFIG_DNET is not set -CONFIG_NET_VENDOR_DEC=y -# CONFIG_EWRK3 is not set -# CONFIG_NET_TULIP is not set -CONFIG_NET_VENDOR_DLINK=y -# CONFIG_DL2K is not set -# CONFIG_SUNDANCE is not set -CONFIG_NET_VENDOR_EMULEX=y -# CONFIG_BE2NET is not set -CONFIG_NET_VENDOR_EXAR=y -# CONFIG_S2IO is not set -# CONFIG_VXGE is not set -CONFIG_NET_VENDOR_FUJITSU=y -# CONFIG_AT1700 is not set -# CONFIG_ETH16I is not set -CONFIG_NET_VENDOR_HP=y -# CONFIG_HP100 is not set -CONFIG_NET_VENDOR_INTEL=y -# CONFIG_E100 is not set -# CONFIG_E1000 is not set -# CONFIG_E1000E is not set -# CONFIG_IGB is not set -# CONFIG_IGBVF is not set -# CONFIG_IXGB is not set -# CONFIG_IXGBE is not set -CONFIG_NET_VENDOR_I825XX=y -# CONFIG_ELPLUS is not set -# CONFIG_EL16 is not set -# CONFIG_APRICOT is not set -# CONFIG_EEXPRESS is not set -# CONFIG_EEXPRESS_PRO is not set -# CONFIG_LP486E is not set -# CONFIG_NI52 is not set -# CONFIG_ZNET is not set -# CONFIG_IP1000 is not set -# CONFIG_JME is not set -CONFIG_NET_VENDOR_MARVELL=y -# CONFIG_SKGE is not set -# CONFIG_SKY2 is not set -CONFIG_NET_VENDOR_MELLANOX=y -# CONFIG_MLX4_EN is not set -# CONFIG_MLX4_CORE is not set -CONFIG_NET_VENDOR_MICREL=y -# CONFIG_KS8851_MLL is not set -# CONFIG_KSZ884X_PCI is not set -CONFIG_NET_VENDOR_MYRI=y -# CONFIG_MYRI10GE is not set -# CONFIG_FEALNX is not set -CONFIG_NET_VENDOR_NATSEMI=y -# CONFIG_NATSEMI is not set -# CONFIG_NS83820 is not set -CONFIG_NET_VENDOR_8390=y -# CONFIG_EL2 is not set -# CONFIG_AC3200 is not set -# CONFIG_AX88796 is not set -# CONFIG_E2100 is not set -# CONFIG_HPLAN_PLUS is not set -# CONFIG_HPLAN is not set -# CONFIG_NE2000 is not set -# CONFIG_NE2K_PCI is not set -# CONFIG_ULTRA is not set -# CONFIG_WD80x3 is not set -CONFIG_NET_VENDOR_NVIDIA=y -# CONFIG_FORCEDETH is not set -CONFIG_NET_VENDOR_OKI=y -# CONFIG_PCH_GBE is not set -# CONFIG_ETHOC is not set -CONFIG_NET_PACKET_ENGINE=y -# CONFIG_HAMACHI is not set -# CONFIG_YELLOWFIN is not set -CONFIG_NET_VENDOR_QLOGIC=y -# CONFIG_QLA3XXX is not set -# CONFIG_QLCNIC is not set -# CONFIG_QLGE is not set -# CONFIG_NETXEN_NIC is not set -CONFIG_NET_VENDOR_RACAL=y -# CONFIG_NI5010 is not set -CONFIG_NET_VENDOR_REALTEK=y -# CONFIG_8139CP is not set -# CONFIG_8139TOO is not set -# CONFIG_R8169 is not set -CONFIG_NET_VENDOR_RDC=y -# CONFIG_R6040 is not set -CONFIG_NET_VENDOR_SEEQ=y -# CONFIG_SEEQ8005 is not set -CONFIG_NET_VENDOR_SILAN=y -# CONFIG_SC92031 is not set -CONFIG_NET_VENDOR_SIS=y -# CONFIG_SIS900 is not set -# CONFIG_SIS190 is not set -# CONFIG_SFC is not set -CONFIG_NET_VENDOR_SMSC=y -# CONFIG_SMC9194 is not set -# CONFIG_SMC91X is not set -# CONFIG_EPIC100 is not set -# CONFIG_SMSC911X is not set -# CONFIG_SMSC9420 is not set -CONFIG_NET_VENDOR_STMICRO=y -# CONFIG_STMMAC_ETH is not set -CONFIG_NET_VENDOR_SUN=y -# CONFIG_HAPPYMEAL is not set -# CONFIG_SUNGEM is not set -# CONFIG_CASSINI is not set -# CONFIG_NIU is not set -CONFIG_NET_VENDOR_TEHUTI=y -# CONFIG_TEHUTI is not set -CONFIG_NET_VENDOR_TI=y -# CONFIG_TLAN is not set -CONFIG_NET_VENDOR_TOSHIBA=y -# CONFIG_TC35815 is not set -CONFIG_NET_VENDOR_VIA=y -# CONFIG_VIA_RHINE is not set -# CONFIG_VIA_VELOCITY is not set -CONFIG_NET_VENDOR_WIZNET=y -# CONFIG_WIZNET_W5100 is not set -# CONFIG_WIZNET_W5300 is not set -# CONFIG_FDDI is not set -# CONFIG_HIPPI is not set -CONFIG_PHYLIB=y - -# -# MII PHY device drivers -# -# CONFIG_AMD_PHY is not set -# CONFIG_MARVELL_PHY is not set -# CONFIG_DAVICOM_PHY is not set -# CONFIG_QSEMI_PHY is not set -# CONFIG_LXT_PHY is not set -# CONFIG_CICADA_PHY is not set -# CONFIG_VITESSE_PHY is not set -# CONFIG_SMSC_PHY is not set -# CONFIG_BROADCOM_PHY is not set -# CONFIG_ICPLUS_PHY is not set -# CONFIG_REALTEK_PHY is not set -# CONFIG_NATIONAL_PHY is not set -# CONFIG_STE10XP is not set -# CONFIG_LSI_ET1011C_PHY is not set -# CONFIG_MICREL_PHY is not set -# CONFIG_FIXED_PHY is not set -# CONFIG_MDIO_BITBANG is not set -# CONFIG_PPP is not set -# CONFIG_SLIP is not set -CONFIG_WLAN=y -# CONFIG_AIRO is not set -# CONFIG_ATMEL is not set -# CONFIG_PRISM54 is not set -# CONFIG_HOSTAP is not set -# CONFIG_WL_TI is not set - -# -# Enable WiMAX (Networking options) to see the WiMAX drivers -# -# CONFIG_WAN is not set -# CONFIG_VMXNET3 is not set -# CONFIG_ISDN is not set - -# -# Input device support -# -# CONFIG_INPUT is not set - -# -# Hardware I/O ports -# -# CONFIG_SERIO is not set -# CONFIG_GAMEPORT is not set - -# -# Character devices -# -# CONFIG_VT is not set -CONFIG_UNIX98_PTYS=y -# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set -# CONFIG_LEGACY_PTYS is not set -# CONFIG_SERIAL_NONSTANDARD is not set -# CONFIG_NOZOMI is not set -# CONFIG_N_GSM is not set -# CONFIG_TRACE_SINK is not set -# CONFIG_DEVKMEM is not set - -# -# Serial drivers -# -CONFIG_SERIAL_8250=y -CONFIG_SERIAL_8250_CONSOLE=y -# CONFIG_SERIAL_8250_PCI is not set -CONFIG_SERIAL_8250_NR_UARTS=4 -CONFIG_SERIAL_8250_RUNTIME_UARTS=4 -# CONFIG_SERIAL_8250_EXTENDED is not set - -# -# Non-8250 serial port support -# -# CONFIG_SERIAL_MFD_HSU is not set -CONFIG_SERIAL_CORE=y -CONFIG_SERIAL_CORE_CONSOLE=y -# CONFIG_SERIAL_JSM is not set -# CONFIG_SERIAL_TIMBERDALE is not set -# CONFIG_SERIAL_ALTERA_JTAGUART is not set -# CONFIG_SERIAL_ALTERA_UART is not set -# CONFIG_SERIAL_PCH_UART is not set -# CONFIG_SERIAL_XILINX_PS_UART is not set -# CONFIG_TTY_PRINTK is not set -# CONFIG_IPMI_HANDLER is not set -# CONFIG_HW_RANDOM is not set -# CONFIG_RTC is not set -# CONFIG_DTLK is not set -# CONFIG_R3964 is not set -# CONFIG_APPLICOM is not set -# CONFIG_TCG_TPM is not set -CONFIG_DEVPORT=y -# CONFIG_I2C is not set -# CONFIG_SPI is not set -# CONFIG_HSI is not set - -# -# PPS support -# -# CONFIG_PPS is not set - -# -# PPS generators support -# - -# -# PTP clock support -# - -# -# Enable Device Drivers -> PPS to see the PTP clock options. -# -CONFIG_ARCH_HAVE_CUSTOM_GPIO_H=y -CONFIG_ARCH_REQUIRE_GPIOLIB=y -CONFIG_GPIOLIB=y -# CONFIG_DEBUG_GPIO is not set -# CONFIG_GPIO_SYSFS is not set - -# -# Memory mapped GPIO drivers: -# -# CONFIG_GPIO_GENERIC_PLATFORM is not set -# CONFIG_GPIO_VX855 is not set - -# -# I2C GPIO expanders: -# - -# -# PCI GPIO expanders: -# -# CONFIG_GPIO_BT8XX is not set -# CONFIG_GPIO_ML_IOH is not set -# CONFIG_GPIO_RDC321X is not set - -# -# SPI GPIO expanders: -# - -# -# AC97 GPIO expanders: -# - -# -# MODULbus GPIO expanders: -# -# CONFIG_W1 is not set -# CONFIG_POWER_SUPPLY is not set -# CONFIG_HWMON is not set -# CONFIG_THERMAL is not set -# CONFIG_WATCHDOG is not set -CONFIG_SSB_POSSIBLE=y - -# -# Sonics Silicon Backplane -# -# CONFIG_SSB is not set -CONFIG_BCMA_POSSIBLE=y - -# -# Broadcom specific AMBA -# -# CONFIG_BCMA is not set - -# -# Multifunction device drivers -# -# CONFIG_MFD_CORE is not set -# CONFIG_MFD_SM501 is not set -# CONFIG_HTC_PASIC3 is not set -# CONFIG_MFD_TMIO is not set -# CONFIG_ABX500_CORE is not set -# CONFIG_MFD_TIMBERDALE is not set -# CONFIG_LPC_SCH is not set -# CONFIG_LPC_ICH is not set -# CONFIG_MFD_RDC321X is not set -# CONFIG_MFD_JANZ_CMODIO is not set -# CONFIG_MFD_VX855 is not set -# CONFIG_REGULATOR is not set -# CONFIG_MEDIA_SUPPORT is not set - -# -# Graphics support -# -# CONFIG_VGA_ARB is not set -# CONFIG_DRM is not set -# CONFIG_STUB_POULSBO is not set -# CONFIG_VGASTATE is not set -# CONFIG_VIDEO_OUTPUT_CONTROL is not set -# CONFIG_FB is not set -# CONFIG_EXYNOS_VIDEO is not set -# CONFIG_BACKLIGHT_LCD_SUPPORT is not set -# CONFIG_SOUND is not set -CONFIG_USB_ARCH_HAS_OHCI=y -CONFIG_USB_ARCH_HAS_EHCI=y -CONFIG_USB_ARCH_HAS_XHCI=y -# CONFIG_USB_SUPPORT is not set -# CONFIG_UWB is not set -# CONFIG_MMC is not set -# CONFIG_MEMSTICK is not set -# CONFIG_NEW_LEDS is not set -# CONFIG_ACCESSIBILITY is not set -# CONFIG_INFINIBAND is not set -# CONFIG_RTC_CLASS is not set -# CONFIG_DMADEVICES is not set -# CONFIG_AUXDISPLAY is not set -# CONFIG_UIO is not set - -# -# Virtio drivers -# -# CONFIG_VIRTIO_PCI is not set -# CONFIG_VIRTIO_BALLOON is not set -# CONFIG_VIRTIO_MMIO is not set - -# -# Microsoft Hyper-V guest support -# -CONFIG_STAGING=y -# CONFIG_ET131X is not set -# CONFIG_ECHO is not set -# CONFIG_R8187SE is not set -# CONFIG_RTLLIB is not set -# CONFIG_VT6655 is not set -# CONFIG_DX_SEP is not set -# CONFIG_CRYSTALHD is not set -# CONFIG_FT1000 is not set - -# -# Speakup console speech -# -# CONFIG_STAGING_MEDIA is not set - -# -# Android -# -# CONFIG_ANDROID is not set -# CONFIG_PHONE is not set -# CONFIG_IPACK_BUS is not set -# CONFIG_WIMAX_GDM72XX is not set - -# -# Hardware Spinlock drivers -# -CONFIG_IOMMU_SUPPORT=y - -# -# Remoteproc drivers (EXPERIMENTAL) -# - -# -# Rpmsg drivers (EXPERIMENTAL) -# -# CONFIG_VIRT_DRIVERS is not set -# CONFIG_PM_DEVFREQ is not set -# CONFIG_EXTCON is not set -# CONFIG_MEMORY is not set -# CONFIG_IIO is not set -# CONFIG_VME_BUS is not set - -# -# File systems -# -# CONFIG_FS_POSIX_ACL is not set -CONFIG_EXPORTFS=y -CONFIG_FILE_LOCKING=y -CONFIG_FSNOTIFY=y -# CONFIG_DNOTIFY is not set -# CONFIG_INOTIFY_USER is not set -# CONFIG_FANOTIFY is not set -# CONFIG_QUOTA is not set -# CONFIG_QUOTACTL is not set -# CONFIG_AUTOFS4_FS is not set -# CONFIG_FUSE_FS is not set - -# -# Caches -# -# CONFIG_FSCACHE is not set - -# -# Pseudo filesystems -# -CONFIG_PROC_FS=y -# CONFIG_PROC_KCORE is not set -CONFIG_PROC_SYSCTL=y -# CONFIG_PROC_PAGE_MONITOR is not set -CONFIG_SYSFS=y -CONFIG_TMPFS=y -# CONFIG_TMPFS_POSIX_ACL is not set -# CONFIG_TMPFS_XATTR is not set -# CONFIG_HUGETLB_PAGE is not set -# CONFIG_CONFIGFS_FS is not set -# CONFIG_MISC_FILESYSTEMS is not set -# CONFIG_NETWORK_FILESYSTEMS is not set -# CONFIG_NLS is not set - -# -# Kernel hacking -# -CONFIG_TRACE_IRQFLAGS_SUPPORT=y -CONFIG_PRINTK_TIME=y -CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 -# CONFIG_ENABLE_WARN_DEPRECATED is not set -# CONFIG_ENABLE_MUST_CHECK is not set -CONFIG_FRAME_WARN=1024 -CONFIG_MAGIC_SYSRQ=y -# CONFIG_STRIP_ASM_SYMS is not set -# CONFIG_READABLE_ASM is not set -# CONFIG_UNUSED_SYMBOLS is not set -# CONFIG_DEBUG_FS is not set -# CONFIG_HEADERS_CHECK is not set -# CONFIG_DEBUG_SECTION_MISMATCH is not set -CONFIG_DEBUG_KERNEL=y -# CONFIG_DEBUG_SHIRQ is not set -# CONFIG_LOCKUP_DETECTOR is not set -# CONFIG_HARDLOCKUP_DETECTOR is not set -# CONFIG_PANIC_ON_OOPS is not set -CONFIG_PANIC_ON_OOPS_VALUE=0 -# CONFIG_DETECT_HUNG_TASK is not set -# CONFIG_SCHED_DEBUG is not set -# CONFIG_SCHEDSTATS is not set -# CONFIG_TIMER_STATS is not set -# CONFIG_DEBUG_OBJECTS is not set -# CONFIG_DEBUG_SLAB is not set -# CONFIG_DEBUG_KMEMLEAK is not set -# CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_RT_MUTEX_TESTER is not set -# CONFIG_DEBUG_SPINLOCK is not set -# CONFIG_DEBUG_MUTEXES is not set -# CONFIG_DEBUG_LOCK_ALLOC is not set -# CONFIG_PROVE_LOCKING is not set -# CONFIG_SPARSE_RCU_POINTER is not set -# CONFIG_LOCK_STAT is not set -# CONFIG_DEBUG_ATOMIC_SLEEP is not set -# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set -# CONFIG_DEBUG_STACK_USAGE is not set -# CONFIG_DEBUG_KOBJECT is not set -CONFIG_DEBUG_INFO=y -# CONFIG_DEBUG_INFO_REDUCED is not set -# CONFIG_DEBUG_VM is not set -# CONFIG_DEBUG_WRITECOUNT is not set -# CONFIG_DEBUG_MEMORY_INIT is not set -# CONFIG_DEBUG_LIST is not set -# CONFIG_TEST_LIST_SORT is not set -# CONFIG_DEBUG_SG is not set -# CONFIG_DEBUG_NOTIFIERS is not set -# CONFIG_DEBUG_CREDENTIALS is not set -# CONFIG_BOOT_PRINTK_DELAY is not set -# CONFIG_RCU_TORTURE_TEST is not set -# CONFIG_RCU_TRACE is not set -# CONFIG_BACKTRACE_SELF_TEST is not set -# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set -# CONFIG_FAULT_INJECTION is not set -# CONFIG_DEBUG_PAGEALLOC is not set -CONFIG_HAVE_FUNCTION_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y -CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y -CONFIG_HAVE_DYNAMIC_FTRACE=y -CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y -CONFIG_HAVE_C_RECORDMCOUNT=y -CONFIG_TRACING_SUPPORT=y -# CONFIG_FTRACE is not set -# CONFIG_DMA_API_DEBUG is not set -# CONFIG_ATOMIC64_SELFTEST is not set -# CONFIG_SAMPLES is not set -CONFIG_HAVE_ARCH_KGDB=y -# CONFIG_KGDB is not set -# CONFIG_TEST_KSTRTOX is not set -CONFIG_EARLY_PRINTK=y -CONFIG_CMDLINE_BOOL=y -CONFIG_CMDLINE="init=/init" -# CONFIG_CMDLINE_OVERRIDE is not set -# CONFIG_DEBUG_STACKOVERFLOW is not set -# CONFIG_RUNTIME_DEBUG is not set -# CONFIG_DEBUG_ZBOOT is not set - -# -# Security options -# -# CONFIG_KEYS is not set -# CONFIG_SECURITY_DMESG_RESTRICT is not set -# CONFIG_SECURITY is not set -# CONFIG_SECURITYFS is not set -CONFIG_DEFAULT_SECURITY_DAC=y -CONFIG_DEFAULT_SECURITY="" -# CONFIG_CRYPTO is not set -# CONFIG_BINARY_PRINTF is not set - -# -# Library routines -# -CONFIG_BITREVERSE=y -CONFIG_NO_GENERIC_PCI_IOPORT_MAP=y -CONFIG_GENERIC_PCI_IOMAP=y -CONFIG_GENERIC_IO=y -# CONFIG_CRC_CCITT is not set -# CONFIG_CRC16 is not set -# CONFIG_CRC_T10DIF is not set -# CONFIG_CRC_ITU_T is not set -CONFIG_CRC32=y -# CONFIG_CRC32_SELFTEST is not set -CONFIG_CRC32_SLICEBY8=y -# CONFIG_CRC32_SLICEBY4 is not set -# CONFIG_CRC32_SARWATE is not set -# CONFIG_CRC32_BIT is not set -# CONFIG_CRC7 is not set -# CONFIG_LIBCRC32C is not set -# CONFIG_CRC8 is not set -# CONFIG_XZ_DEC is not set -# CONFIG_XZ_DEC_BCJ is not set -CONFIG_DECOMPRESS_LZMA=y -CONFIG_HAS_IOMEM=y -CONFIG_HAS_IOPORT=y -CONFIG_HAS_DMA=y -CONFIG_DQL=y -CONFIG_NLATTR=y -CONFIG_GENERIC_ATOMIC64=y -# CONFIG_AVERAGE is not set -# CONFIG_CORDIC is not set -# CONFIG_DDR is not set diff --git a/target/mips/kernel/lemote-yeelong b/target/mips/kernel/lemote-yeelong index c37d40271..ec7868db2 100644 --- a/target/mips/kernel/lemote-yeelong +++ b/target/mips/kernel/lemote-yeelong @@ -15,9 +15,6 @@ CONFIG_COMPAT=y CONFIG_MIPS32_O32=y CONFIG_MIPS32_N32=y CONFIG_BLK_DEV=y -CONFIG_NETDEVICES=y -CONFIG_NET_CORE=y -CONFIG_ETHERNET=y CONFIG_NET_VENDOR_REALTEK=y CONFIG_8139TOO=y CONFIG_SERIO=y diff --git a/target/mips/kernel/qemu-mips b/target/mips/kernel/qemu-mips index 2ea58176a..d3129fbda 100644 --- a/target/mips/kernel/qemu-mips +++ b/target/mips/kernel/qemu-mips @@ -1,29 +1,13 @@ +CONFIG_MIPS=y CONFIG_MIPS_MALTA=y CONFIG_MIPS_BONITO64=y CONFIG_MIPS_MSC=y -CONFIG_CPU_BIG_ENDIAN=y CONFIG_CPU_MIPS32_R1=y CONFIG_PAGE_SIZE_4KB=y CONFIG_PCI=y CONFIG_PCI_DOMAINS=y -CONFIG_SCSI=y -CONFIG_SCSI_DMA=y -CONFIG_SCSI_PROC_FS=y -CONFIG_BLK_DEV_SD=y -CONFIG_ATA=y -CONFIG_SATA_PMP=y -CONFIG_ATA_SFF=y -CONFIG_ATA_BMDMA=y -CONFIG_ATA_PIIX=y -CONFIG_NETDEVICES=y -CONFIG_NET_CORE=y -CONFIG_ETHERNET=y CONFIG_NET_VENDOR_INTEL=y CONFIG_E1000=y CONFIG_PHYLIB=y CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y -CONFIG_SERIAL_8250_NR_UARTS=4 -CONFIG_SERIAL_8250_RUNTIME_UARTS=4 -CONFIG_SERIAL_CORE=y -CONFIG_SERIAL_CORE_CONSOLE=y diff --git a/target/mips/kernel/qemu-mips64 b/target/mips/kernel/qemu-mips64 index 5ccc48cca..3a1be029e 100644 --- a/target/mips/kernel/qemu-mips64 +++ b/target/mips/kernel/qemu-mips64 @@ -1,7 +1,6 @@ +CONFIG_MIPS=y CONFIG_MIPS_MALTA=y -CONFIG_CPU_BIG_ENDIAN=y CONFIG_CPU_MIPS64_R1=y -CONFIG_64BIT=y CONFIG_PAGE_SIZE_4KB=y CONFIG_PCI=y CONFIG_PCI_DOMAINS=y @@ -9,23 +8,7 @@ CONFIG_MIPS32_COMPAT=y CONFIG_MIPS32_O32=y CONFIG_MIPS32_N32=y CONFIG_BINFMT_ELF32=y -CONFIG_SCSI=y -CONFIG_SCSI_DMA=y -CONFIG_SCSI_PROC_FS=y -CONFIG_BLK_DEV_SD=y -CONFIG_ATA=y -CONFIG_SATA_PMP=y -CONFIG_ATA_SFF=y -CONFIG_ATA_BMDMA=y -CONFIG_ATA_PIIX=y -CONFIG_NETDEVICES=y -CONFIG_NET_CORE=y -CONFIG_ETHERNET=y CONFIG_NET_VENDOR_INTEL=y CONFIG_E1000=y CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y -CONFIG_SERIAL_8250_NR_UARTS=4 -CONFIG_SERIAL_8250_RUNTIME_UARTS=4 -CONFIG_SERIAL_CORE=y -CONFIG_SERIAL_CORE_CONSOLE=y diff --git a/target/mips/kernel/qemu-mips64el b/target/mips/kernel/qemu-mips64el index 11240010d..40192aff2 100644 --- a/target/mips/kernel/qemu-mips64el +++ b/target/mips/kernel/qemu-mips64el @@ -1,7 +1,6 @@ +CONFIG_MIPS=y CONFIG_MIPS_MALTA=y -CONFIG_CPU_LITTLE_ENDIAN=y CONFIG_CPU_MIPS64_R1=y -CONFIG_64BIT=y CONFIG_PAGE_SIZE_4KB=y CONFIG_PCI=y CONFIG_PCI_DOMAINS=y @@ -9,21 +8,9 @@ CONFIG_MIPS32_COMPAT=y CONFIG_MIPS32_O32=y CONFIG_MIPS32_N32=y CONFIG_BINFMT_ELF32=y -CONFIG_SCSI=y -CONFIG_SCSI_DMA=y -CONFIG_SCSI_PROC_FS=y -CONFIG_BLK_DEV_SD=y -CONFIG_ATA=y -CONFIG_SATA_PMP=y -CONFIG_ATA_SFF=y -CONFIG_ATA_BMDMA=y -CONFIG_ATA_PIIX=y -CONFIG_NETDEVICES=y -CONFIG_NET_CORE=y -CONFIG_ETHERNET=y CONFIG_NET_VENDOR_INTEL=y CONFIG_E1000=y CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y -CONFIG_SERIAL_8250_NR_UARTS=4 -CONFIG_SERIAL_8250_RUNTIME_UARTS=4 +CONFIG_SERIAL_8250_NR_UARTS=1 +CONFIG_SERIAL_8250_RUNTIME_UARTS=1 diff --git a/target/mips/kernel/qemu-mipsel b/target/mips/kernel/qemu-mipsel index b1b7c8c5b..d3129fbda 100644 --- a/target/mips/kernel/qemu-mipsel +++ b/target/mips/kernel/qemu-mipsel @@ -1,29 +1,13 @@ +CONFIG_MIPS=y CONFIG_MIPS_MALTA=y CONFIG_MIPS_BONITO64=y CONFIG_MIPS_MSC=y -CONFIG_CPU_LITTLE_ENDIAN=y CONFIG_CPU_MIPS32_R1=y CONFIG_PAGE_SIZE_4KB=y CONFIG_PCI=y CONFIG_PCI_DOMAINS=y -CONFIG_SCSI=y -CONFIG_SCSI_DMA=y -CONFIG_SCSI_PROC_FS=y -CONFIG_BLK_DEV_SD=y -CONFIG_ATA=y -CONFIG_SATA_PMP=y -CONFIG_ATA_SFF=y -CONFIG_ATA_BMDMA=y -CONFIG_ATA_PIIX=y -CONFIG_NETDEVICES=y -CONFIG_NET_CORE=y -CONFIG_ETHERNET=y CONFIG_NET_VENDOR_INTEL=y CONFIG_E1000=y CONFIG_PHYLIB=y CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y -CONFIG_SERIAL_8250_NR_UARTS=4 -CONFIG_SERIAL_8250_RUNTIME_UARTS=4 -CONFIG_SERIAL_CORE=y -CONFIG_SERIAL_CORE_CONSOLE=y diff --git a/target/mips/kernel64.config b/target/mips/kernel64.config deleted file mode 100644 index 80355e797..000000000 --- a/target/mips/kernel64.config +++ /dev/null @@ -1,1170 +0,0 @@ -# -# Automatically generated file; DO NOT EDIT. -# Linux/mips 3.4.65 Kernel Configuration -# -CONFIG_MIPS=y - -# -# Machine selection -# -# CONFIG_MIPS_ALCHEMY is not set -# CONFIG_AR7 is not set -# CONFIG_ATH79 is not set -# CONFIG_BCM47XX is not set -# CONFIG_BCM63XX is not set -# CONFIG_MIPS_COBALT is not set -# CONFIG_MACH_DECSTATION is not set -# CONFIG_MACH_JAZZ is not set -# CONFIG_MACH_JZ4740 is not set -# CONFIG_LANTIQ is not set -# CONFIG_LASAT is not set -CONFIG_MACH_LOONGSON=y -# CONFIG_MIPS_MALTA is not set -# CONFIG_MIPS_SIM is not set -# CONFIG_NEC_MARKEINS is not set -# CONFIG_MACH_VR41XX is not set -# CONFIG_NXP_STB220 is not set -# CONFIG_NXP_STB225 is not set -# CONFIG_PNX8550_JBS is not set -# CONFIG_PNX8550_STB810 is not set -# CONFIG_PMC_YOSEMITE is not set -# CONFIG_POWERTV is not set -# CONFIG_SGI_IP22 is not set -# CONFIG_SGI_IP27 is not set -# CONFIG_SGI_IP32 is not set -# CONFIG_SIBYTE_SWARM is not set -# CONFIG_SIBYTE_BIGSUR is not set -# CONFIG_SNI_RM is not set -# CONFIG_MACH_TX39XX is not set -# CONFIG_MACH_TX49XX is not set -# CONFIG_MIKROTIK_RB532 is not set -# CONFIG_WR_PPMC is not set -# CONFIG_CAVIUM_OCTEON_SIMULATOR is not set -# CONFIG_CAVIUM_OCTEON_REFERENCE_BOARD is not set -# CONFIG_ALCHEMY_GPIO_INDIRECT is not set -CONFIG_ARCH_SPARSEMEM_ENABLE=y -# CONFIG_LEMOTE_FULOONG2E is not set -CONFIG_LEMOTE_MACH2F=y -CONFIG_CS5536=y -# CONFIG_CS5536_MFGPT is not set -CONFIG_LOONGSON_UART_BASE=y -CONFIG_LOONGSON_MC146818=y -CONFIG_RWSEM_GENERIC_SPINLOCK=y -# CONFIG_ARCH_HAS_ILOG2_U32 is not set -# CONFIG_ARCH_HAS_ILOG2_U64 is not set -CONFIG_GENERIC_HWEIGHT=y -CONFIG_GENERIC_CALIBRATE_DELAY=y -CONFIG_GENERIC_CLOCKEVENTS=y -CONFIG_GENERIC_CMOS_UPDATE=y -CONFIG_SCHED_OMIT_FRAME_POINTER=y -CONFIG_CEVT_R4K_LIB=y -CONFIG_CEVT_R4K=y -CONFIG_CSRC_R4K_LIB=y -CONFIG_CSRC_R4K=y -CONFIG_ARCH_DMA_ADDR_T_64BIT=y -CONFIG_DMA_NONCOHERENT=y -CONFIG_NEED_DMA_MAP_STATE=y -CONFIG_SYS_HAS_EARLY_PRINTK=y -CONFIG_I8259=y -# CONFIG_MIPS_MACHINE is not set -# CONFIG_NO_IOPORT is not set -CONFIG_GENERIC_ISA_DMA=y -CONFIG_GENERIC_ISA_DMA_SUPPORT_BROKEN=y -CONFIG_ISA_DMA_API=y -CONFIG_GENERIC_GPIO=y -CONFIG_CPU_LITTLE_ENDIAN=y -CONFIG_SYS_SUPPORTS_LITTLE_ENDIAN=y -CONFIG_IRQ_CPU=y -CONFIG_BOOT_ELF32=y -CONFIG_MIPS_L1_CACHE_SHIFT=5 - -# -# CPU selection -# -CONFIG_CPU_LOONGSON2F=y -CONFIG_CPU_NOP_WORKAROUNDS=y -CONFIG_CPU_JUMP_WORKAROUNDS=y -CONFIG_CPU_LOONGSON2F_WORKAROUNDS=y -CONFIG_SYS_SUPPORTS_ZBOOT=y -CONFIG_CPU_LOONGSON2=y -CONFIG_SYS_HAS_CPU_LOONGSON2F=y -CONFIG_SYS_SUPPORTS_32BIT_KERNEL=y -CONFIG_SYS_SUPPORTS_64BIT_KERNEL=y -CONFIG_CPU_SUPPORTS_32BIT_KERNEL=y -CONFIG_CPU_SUPPORTS_64BIT_KERNEL=y -CONFIG_CPU_SUPPORTS_CPUFREQ=y -CONFIG_CPU_SUPPORTS_ADDRWINCFG=y -CONFIG_CPU_SUPPORTS_UNCACHED_ACCELERATED=y - -# -# Kernel type -# -# CONFIG_32BIT is not set -CONFIG_64BIT=y -CONFIG_PAGE_SIZE_16KB=y -CONFIG_FORCE_MAX_ZONEORDER=11 -CONFIG_BOARD_SCACHE=y -CONFIG_MIPS_MT_DISABLED=y -# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set -CONFIG_CPU_HAS_WB=y -CONFIG_CPU_HAS_SYNC=y -CONFIG_CPU_SUPPORTS_HIGHMEM=y -CONFIG_SYS_SUPPORTS_HIGHMEM=y -CONFIG_SPARSEMEM=y -CONFIG_HAVE_MEMORY_PRESENT=y -CONFIG_SPARSEMEM_STATIC=y -CONFIG_HAVE_MEMBLOCK=y -CONFIG_HAVE_MEMBLOCK_NODE_MAP=y -CONFIG_ARCH_DISCARD_MEMBLOCK=y -CONFIG_PAGEFLAGS_EXTENDED=y -CONFIG_SPLIT_PTLOCK_CPUS=4 -# CONFIG_COMPACTION is not set -CONFIG_PHYS_ADDR_T_64BIT=y -CONFIG_ZONE_DMA_FLAG=0 -CONFIG_VIRT_TO_BUS=y -# CONFIG_KSM is not set -CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 -CONFIG_NEED_PER_CPU_KM=y -# CONFIG_CLEANCACHE is not set -# CONFIG_NO_HZ is not set -# CONFIG_HIGH_RES_TIMERS is not set -CONFIG_GENERIC_CLOCKEVENTS_BUILD=y -# CONFIG_HZ_48 is not set -CONFIG_HZ_100=y -# CONFIG_HZ_128 is not set -# CONFIG_HZ_250 is not set -# CONFIG_HZ_256 is not set -# CONFIG_HZ_1000 is not set -# CONFIG_HZ_1024 is not set -CONFIG_SYS_SUPPORTS_ARBIT_HZ=y -CONFIG_HZ=100 -CONFIG_PREEMPT_NONE=y -# CONFIG_PREEMPT_VOLUNTARY is not set -# CONFIG_PREEMPT is not set -# CONFIG_SECCOMP is not set -# CONFIG_USE_OF is not set -CONFIG_LOCKDEP_SUPPORT=y -CONFIG_STACKTRACE_SUPPORT=y -CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" -CONFIG_HAVE_IRQ_WORK=y - -# -# General setup -# -# CONFIG_EXPERIMENTAL is not set -CONFIG_BROKEN_ON_SMP=y -CONFIG_INIT_ENV_ARG_LIMIT=32 -CONFIG_CROSS_COMPILE="" -CONFIG_LOCALVERSION="" -# CONFIG_LOCALVERSION_AUTO is not set -CONFIG_HAVE_KERNEL_GZIP=y -CONFIG_HAVE_KERNEL_BZIP2=y -CONFIG_HAVE_KERNEL_LZMA=y -CONFIG_HAVE_KERNEL_LZO=y -# CONFIG_KERNEL_GZIP is not set -# CONFIG_KERNEL_BZIP2 is not set -CONFIG_KERNEL_LZMA=y -# CONFIG_KERNEL_LZO is not set -CONFIG_DEFAULT_HOSTNAME="openadk" -CONFIG_SWAP=y -CONFIG_SYSVIPC=y -CONFIG_SYSVIPC_SYSCTL=y -# CONFIG_BSD_PROCESS_ACCT is not set -# CONFIG_FHANDLE is not set -# CONFIG_TASKSTATS is not set -# CONFIG_AUDIT is not set -CONFIG_HAVE_GENERIC_HARDIRQS=y - -# -# IRQ subsystem -# -CONFIG_GENERIC_HARDIRQS=y -CONFIG_GENERIC_IRQ_PROBE=y -CONFIG_GENERIC_IRQ_SHOW=y -CONFIG_IRQ_FORCED_THREADING=y - -# -# RCU Subsystem -# -CONFIG_TINY_RCU=y -# CONFIG_PREEMPT_RCU is not set -# CONFIG_TREE_RCU_TRACE is not set -# CONFIG_IKCONFIG is not set -CONFIG_LOG_BUF_SHIFT=14 -# CONFIG_CGROUPS is not set -# CONFIG_CHECKPOINT_RESTORE is not set -# CONFIG_NAMESPACES is not set -# CONFIG_SCHED_AUTOGROUP is not set -# CONFIG_SYSFS_DEPRECATED is not set -# CONFIG_RELAY is not set -# CONFIG_BLK_DEV_INITRD is not set -CONFIG_CC_OPTIMIZE_FOR_SIZE=y -CONFIG_SYSCTL=y -CONFIG_ANON_INODES=y -CONFIG_EXPERT=y -CONFIG_SYSCTL_SYSCALL=y -# CONFIG_KALLSYMS is not set -CONFIG_HOTPLUG=y -CONFIG_PRINTK=y -CONFIG_BUG=y -# CONFIG_ELF_CORE is not set -# CONFIG_BASE_FULL is not set -CONFIG_FUTEX=y -CONFIG_EPOLL=y -CONFIG_SIGNALFD=y -CONFIG_TIMERFD=y -CONFIG_EVENTFD=y -CONFIG_SHMEM=y -CONFIG_AIO=y -CONFIG_EMBEDDED=y -CONFIG_HAVE_PERF_EVENTS=y -CONFIG_PERF_USE_VMALLOC=y - -# -# Kernel Performance Events And Counters -# -# CONFIG_PERF_EVENTS is not set -# CONFIG_PERF_COUNTERS is not set -# CONFIG_VM_EVENT_COUNTERS is not set -CONFIG_PCI_QUIRKS=y -# CONFIG_COMPAT_BRK is not set -CONFIG_SLAB=y -# CONFIG_SLUB is not set -# CONFIG_SLOB is not set -# CONFIG_PROFILING is not set -CONFIG_HAVE_OPROFILE=y -# CONFIG_KPROBES is not set -# CONFIG_JUMP_LABEL is not set -CONFIG_HAVE_SYSCALL_WRAPPERS=y -CONFIG_HAVE_KPROBES=y -CONFIG_HAVE_KRETPROBES=y -CONFIG_HAVE_DMA_ATTRS=y -CONFIG_HAVE_DMA_API_DEBUG=y -CONFIG_HAVE_ARCH_JUMP_LABEL=y -CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y - -# -# GCOV-based kernel profiling -# -CONFIG_HAVE_GENERIC_DMA_COHERENT=y -CONFIG_SLABINFO=y -CONFIG_RT_MUTEXES=y -CONFIG_BASE_SMALL=1 -CONFIG_MODULES=y -# CONFIG_MODULE_FORCE_LOAD is not set -CONFIG_MODULE_UNLOAD=y -# CONFIG_MODVERSIONS is not set -# CONFIG_MODULE_SRCVERSION_ALL is not set -CONFIG_BLOCK=y -# CONFIG_BLK_DEV_BSG is not set -# CONFIG_BLK_DEV_BSGLIB is not set -# CONFIG_BLK_DEV_INTEGRITY is not set - -# -# Partition Types -# -CONFIG_PARTITION_ADVANCED=y -# CONFIG_ACORN_PARTITION is not set -# CONFIG_OSF_PARTITION is not set -# CONFIG_AMIGA_PARTITION is not set -# CONFIG_ATARI_PARTITION is not set -# CONFIG_MAC_PARTITION is not set -CONFIG_MSDOS_PARTITION=y -# CONFIG_BSD_DISKLABEL is not set -# CONFIG_MINIX_SUBPARTITION is not set -# CONFIG_SOLARIS_X86_PARTITION is not set -# CONFIG_UNIXWARE_DISKLABEL is not set -# CONFIG_LDM_PARTITION is not set -# CONFIG_SGI_PARTITION is not set -# CONFIG_ULTRIX_PARTITION is not set -# CONFIG_SUN_PARTITION is not set -# CONFIG_KARMA_PARTITION is not set -CONFIG_EFI_PARTITION=y -# CONFIG_SYSV68_PARTITION is not set -CONFIG_BLOCK_COMPAT=y - -# -# IO Schedulers -# -CONFIG_IOSCHED_NOOP=y -# CONFIG_IOSCHED_DEADLINE is not set -# CONFIG_IOSCHED_CFQ is not set -CONFIG_DEFAULT_NOOP=y -CONFIG_DEFAULT_IOSCHED="noop" -# CONFIG_INLINE_SPIN_TRYLOCK is not set -# CONFIG_INLINE_SPIN_TRYLOCK_BH is not set -# CONFIG_INLINE_SPIN_LOCK is not set -# CONFIG_INLINE_SPIN_LOCK_BH is not set -# CONFIG_INLINE_SPIN_LOCK_IRQ is not set -# CONFIG_INLINE_SPIN_LOCK_IRQSAVE is not set -# CONFIG_INLINE_SPIN_UNLOCK_BH is not set -CONFIG_INLINE_SPIN_UNLOCK_IRQ=y -# CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE is not set -# CONFIG_INLINE_READ_TRYLOCK is not set -# CONFIG_INLINE_READ_LOCK is not set -# CONFIG_INLINE_READ_LOCK_BH is not set -# CONFIG_INLINE_READ_LOCK_IRQ is not set -# CONFIG_INLINE_READ_LOCK_IRQSAVE is not set -CONFIG_INLINE_READ_UNLOCK=y -# CONFIG_INLINE_READ_UNLOCK_BH is not set -CONFIG_INLINE_READ_UNLOCK_IRQ=y -# CONFIG_INLINE_READ_UNLOCK_IRQRESTORE is not set -# CONFIG_INLINE_WRITE_TRYLOCK is not set -# CONFIG_INLINE_WRITE_LOCK is not set -# CONFIG_INLINE_WRITE_LOCK_BH is not set -# CONFIG_INLINE_WRITE_LOCK_IRQ is not set -# CONFIG_INLINE_WRITE_LOCK_IRQSAVE is not set -CONFIG_INLINE_WRITE_UNLOCK=y -# CONFIG_INLINE_WRITE_UNLOCK_BH is not set -CONFIG_INLINE_WRITE_UNLOCK_IRQ=y -# CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE is not set -# CONFIG_MUTEX_SPIN_ON_OWNER is not set -# CONFIG_FREEZER is not set - -# -# Bus options (PCI, PCMCIA, EISA, ISA, TC) -# -CONFIG_HW_HAS_PCI=y -CONFIG_PCI=y -CONFIG_PCI_DOMAINS=y -# CONFIG_ARCH_SUPPORTS_MSI is not set -# CONFIG_PCI_DEBUG is not set -# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set -# CONFIG_PCI_STUB is not set -# CONFIG_PCI_IOV is not set -# CONFIG_PCI_PRI is not set -# CONFIG_PCI_PASID is not set -CONFIG_ISA=y -CONFIG_MMU=y -# CONFIG_PCCARD is not set -# CONFIG_HOTPLUG_PCI is not set -# CONFIG_RAPIDIO is not set - -# -# Executable file formats -# -CONFIG_BINFMT_ELF=y -CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y -# CONFIG_HAVE_AOUT is not set -# CONFIG_BINFMT_MISC is not set -CONFIG_MIPS32_COMPAT=y -CONFIG_COMPAT=y -CONFIG_SYSVIPC_COMPAT=y -CONFIG_MIPS32_O32=y -CONFIG_MIPS32_N32=y -CONFIG_BINFMT_ELF32=y - -# -# Power management options -# -CONFIG_ARCH_HIBERNATION_POSSIBLE=y -CONFIG_ARCH_SUSPEND_POSSIBLE=y -# CONFIG_SUSPEND is not set -# CONFIG_HIBERNATION is not set -# CONFIG_PM_RUNTIME is not set -CONFIG_NET=y - -# -# Networking options -# -CONFIG_PACKET=y -CONFIG_UNIX=y -# CONFIG_UNIX_DIAG is not set -# CONFIG_NET_KEY is not set -CONFIG_INET=y -# CONFIG_IP_MULTICAST is not set -# CONFIG_IP_ADVANCED_ROUTER is not set -# CONFIG_IP_PNP is not set -# CONFIG_NET_IPIP is not set -# CONFIG_NET_IPGRE_DEMUX is not set -# CONFIG_ARPD is not set -# CONFIG_SYN_COOKIES is not set -# CONFIG_INET_AH is not set -# CONFIG_INET_ESP is not set -# CONFIG_INET_IPCOMP is not set -# CONFIG_INET_XFRM_TUNNEL is not set -# CONFIG_INET_TUNNEL is not set -# CONFIG_INET_XFRM_MODE_TRANSPORT is not set -# CONFIG_INET_XFRM_MODE_TUNNEL is not set -# CONFIG_INET_XFRM_MODE_BEET is not set -# CONFIG_INET_LRO is not set -# CONFIG_INET_DIAG is not set -# CONFIG_TCP_CONG_ADVANCED is not set -CONFIG_TCP_CONG_CUBIC=y -CONFIG_DEFAULT_TCP_CONG="cubic" -# CONFIG_IPV6 is not set -# CONFIG_NETWORK_SECMARK is not set -# CONFIG_NETFILTER is not set -# CONFIG_ATM is not set -# CONFIG_L2TP is not set -# CONFIG_BRIDGE is not set -# CONFIG_VLAN_8021Q is not set -# CONFIG_DECNET is not set -# CONFIG_LLC2 is not set -# CONFIG_IPX is not set -# CONFIG_ATALK is not set -# CONFIG_PHONET is not set -# CONFIG_NET_SCHED is not set -# CONFIG_DCB is not set -# CONFIG_BATMAN_ADV is not set -# CONFIG_OPENVSWITCH is not set -CONFIG_BQL=y - -# -# Network testing -# -# CONFIG_NET_PKTGEN is not set -# CONFIG_HAMRADIO is not set -# CONFIG_CAN is not set -# CONFIG_IRDA is not set -# CONFIG_BT is not set -CONFIG_WIRELESS=y -# CONFIG_CFG80211 is not set -# CONFIG_LIB80211 is not set - -# -# CFG80211 needs to be enabled for MAC80211 -# -# CONFIG_WIMAX is not set -# CONFIG_RFKILL is not set -# CONFIG_NET_9P is not set -# CONFIG_CAIF is not set - -# -# Device Drivers -# - -# -# Generic Driver Options -# -CONFIG_UEVENT_HELPER_PATH="/sbin/mdev" -CONFIG_DEVTMPFS=y -CONFIG_DEVTMPFS_MOUNT=y -CONFIG_STANDALONE=y -# CONFIG_PREVENT_FIRMWARE_BUILD is not set -# CONFIG_FW_LOADER is not set -# CONFIG_DEBUG_DRIVER is not set -# CONFIG_DEBUG_DEVRES is not set -# CONFIG_SYS_HYPERVISOR is not set -# CONFIG_GENERIC_CPU_DEVICES is not set -# CONFIG_CONNECTOR is not set -# CONFIG_MTD is not set -# CONFIG_PARPORT is not set -# CONFIG_PNP is not set -CONFIG_BLK_DEV=y -# CONFIG_BLK_DEV_XD is not set -# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set -# CONFIG_BLK_CPQ_DA is not set -# CONFIG_BLK_CPQ_CISS_DA is not set -# CONFIG_BLK_DEV_DAC960 is not set -# CONFIG_BLK_DEV_COW_COMMON is not set -# CONFIG_BLK_DEV_LOOP is not set - -# -# DRBD disabled because PROC_FS, INET or CONNECTOR not selected -# -# CONFIG_BLK_DEV_NBD is not set -# CONFIG_BLK_DEV_NVME is not set -# CONFIG_BLK_DEV_SX8 is not set -# CONFIG_BLK_DEV_RAM is not set -# CONFIG_CDROM_PKTCDVD is not set -# CONFIG_ATA_OVER_ETH is not set -# CONFIG_BLK_DEV_HD is not set - -# -# Misc devices -# -# CONFIG_PHANTOM is not set -# CONFIG_INTEL_MID_PTI is not set -# CONFIG_SGI_IOC4 is not set -# CONFIG_ENCLOSURE_SERVICES is not set -# CONFIG_HP_ILO is not set -# CONFIG_PCH_PHUB is not set - -# -# EEPROM support -# -# CONFIG_EEPROM_93CX6 is not set -# CONFIG_CB710_CORE is not set - -# -# Texas Instruments shared transport line discipline -# -# CONFIG_TI_ST is not set - -# -# Altera FPGA firmware download module -# -CONFIG_HAVE_IDE=y -# CONFIG_IDE is not set - -# -# SCSI device support -# -CONFIG_SCSI_MOD=y -# CONFIG_RAID_ATTRS is not set -# CONFIG_SCSI is not set -# CONFIG_SCSI_DMA is not set -# CONFIG_SCSI_NETLINK is not set -# CONFIG_ATA is not set -# CONFIG_MD is not set -# CONFIG_FUSION is not set - -# -# IEEE 1394 (FireWire) support -# -# CONFIG_FIREWIRE is not set -# CONFIG_FIREWIRE_NOSY is not set -# CONFIG_I2O is not set -CONFIG_NETDEVICES=y -CONFIG_NET_CORE=y -# CONFIG_BONDING is not set -# CONFIG_DUMMY is not set -# CONFIG_EQUALIZER is not set -# CONFIG_MII is not set -# CONFIG_NETCONSOLE is not set -# CONFIG_NETPOLL is not set -# CONFIG_NET_POLL_CONTROLLER is not set -# CONFIG_TUN is not set -# CONFIG_VETH is not set -# CONFIG_ARCNET is not set - -# -# CAIF transport drivers -# -CONFIG_ETHERNET=y -CONFIG_NET_VENDOR_3COM=y -# CONFIG_EL1 is not set -# CONFIG_EL3 is not set -# CONFIG_3C515 is not set -# CONFIG_VORTEX is not set -# CONFIG_TYPHOON is not set -CONFIG_NET_VENDOR_ADAPTEC=y -# CONFIG_ADAPTEC_STARFIRE is not set -CONFIG_NET_VENDOR_ALTEON=y -# CONFIG_ACENIC is not set -CONFIG_NET_VENDOR_AMD=y -# CONFIG_AMD8111_ETH is not set -# CONFIG_LANCE is not set -# CONFIG_PCNET32 is not set -# CONFIG_DEPCA is not set -# CONFIG_NI65 is not set -CONFIG_NET_VENDOR_ATHEROS=y -# CONFIG_ATL2 is not set -# CONFIG_ATL1 is not set -CONFIG_NET_VENDOR_BROADCOM=y -# CONFIG_B44 is not set -# CONFIG_BNX2 is not set -# CONFIG_CNIC is not set -# CONFIG_TIGON3 is not set -# CONFIG_BNX2X is not set -CONFIG_NET_VENDOR_BROCADE=y -# CONFIG_BNA is not set -# CONFIG_NET_CALXEDA_XGMAC is not set -CONFIG_NET_VENDOR_CHELSIO=y -# CONFIG_CHELSIO_T1 is not set -# CONFIG_CHELSIO_T3 is not set -# CONFIG_CHELSIO_T4 is not set -# CONFIG_CHELSIO_T4VF is not set -CONFIG_NET_VENDOR_CIRRUS=y -# CONFIG_CS89x0 is not set -CONFIG_NET_VENDOR_CISCO=y -# CONFIG_ENIC is not set -# CONFIG_DM9000 is not set -# CONFIG_DNET is not set -CONFIG_NET_VENDOR_DEC=y -# CONFIG_EWRK3 is not set -# CONFIG_NET_TULIP is not set -CONFIG_NET_VENDOR_DLINK=y -# CONFIG_DL2K is not set -# CONFIG_SUNDANCE is not set -CONFIG_NET_VENDOR_EMULEX=y -# CONFIG_BE2NET is not set -CONFIG_NET_VENDOR_EXAR=y -# CONFIG_S2IO is not set -# CONFIG_VXGE is not set -CONFIG_NET_VENDOR_FUJITSU=y -# CONFIG_ETH16I is not set -CONFIG_NET_VENDOR_HP=y -# CONFIG_HP100 is not set -CONFIG_NET_VENDOR_INTEL=y -# CONFIG_E100 is not set -# CONFIG_E1000 is not set -# CONFIG_E1000E is not set -# CONFIG_IGB is not set -# CONFIG_IGBVF is not set -# CONFIG_IXGB is not set -# CONFIG_IXGBE is not set -CONFIG_NET_VENDOR_I825XX=y -# CONFIG_ELPLUS is not set -# CONFIG_APRICOT is not set -# CONFIG_EEXPRESS is not set -# CONFIG_EEXPRESS_PRO is not set -# CONFIG_LP486E is not set -# CONFIG_NI52 is not set -# CONFIG_JME is not set -CONFIG_NET_VENDOR_MARVELL=y -# CONFIG_SKGE is not set -# CONFIG_SKY2 is not set -CONFIG_NET_VENDOR_MELLANOX=y -# CONFIG_MLX4_EN is not set -# CONFIG_MLX4_CORE is not set -CONFIG_NET_VENDOR_MICREL=y -# CONFIG_KS8851_MLL is not set -# CONFIG_KSZ884X_PCI is not set -CONFIG_NET_VENDOR_MYRI=y -# CONFIG_MYRI10GE is not set -# CONFIG_FEALNX is not set -CONFIG_NET_VENDOR_NATSEMI=y -# CONFIG_NATSEMI is not set -# CONFIG_NS83820 is not set -CONFIG_NET_VENDOR_8390=y -# CONFIG_EL2 is not set -# CONFIG_AX88796 is not set -# CONFIG_E2100 is not set -# CONFIG_HPLAN_PLUS is not set -# CONFIG_HPLAN is not set -# CONFIG_NE2000 is not set -# CONFIG_NE2K_PCI is not set -# CONFIG_ULTRA is not set -# CONFIG_WD80x3 is not set -CONFIG_NET_VENDOR_NVIDIA=y -# CONFIG_FORCEDETH is not set -CONFIG_NET_VENDOR_OKI=y -# CONFIG_PCH_GBE is not set -# CONFIG_ETHOC is not set -CONFIG_NET_PACKET_ENGINE=y -# CONFIG_HAMACHI is not set -CONFIG_NET_VENDOR_QLOGIC=y -# CONFIG_QLA3XXX is not set -# CONFIG_QLCNIC is not set -# CONFIG_QLGE is not set -# CONFIG_NETXEN_NIC is not set -CONFIG_NET_VENDOR_RACAL=y -CONFIG_NET_VENDOR_REALTEK=y -# CONFIG_8139TOO is not set -# CONFIG_R8169 is not set -CONFIG_NET_VENDOR_RDC=y -# CONFIG_R6040 is not set -CONFIG_NET_VENDOR_SIS=y -# CONFIG_SIS900 is not set -# CONFIG_SIS190 is not set -# CONFIG_SFC is not set -CONFIG_NET_VENDOR_SMSC=y -# CONFIG_SMC9194 is not set -# CONFIG_SMC91X is not set -# CONFIG_EPIC100 is not set -# CONFIG_SMSC911X is not set -# CONFIG_SMSC9420 is not set -CONFIG_NET_VENDOR_STMICRO=y -# CONFIG_STMMAC_ETH is not set -CONFIG_NET_VENDOR_SUN=y -# CONFIG_HAPPYMEAL is not set -# CONFIG_SUNGEM is not set -# CONFIG_CASSINI is not set -# CONFIG_NIU is not set -CONFIG_NET_VENDOR_TEHUTI=y -# CONFIG_TEHUTI is not set -CONFIG_NET_VENDOR_TI=y -# CONFIG_TLAN is not set -CONFIG_NET_VENDOR_TOSHIBA=y -# CONFIG_TC35815 is not set -CONFIG_NET_VENDOR_VIA=y -# CONFIG_VIA_RHINE is not set -# CONFIG_VIA_VELOCITY is not set -# CONFIG_FDDI is not set -CONFIG_PHYLIB=y - -# -# MII PHY device drivers -# -# CONFIG_AMD_PHY is not set -# CONFIG_MARVELL_PHY is not set -# CONFIG_DAVICOM_PHY is not set -# CONFIG_QSEMI_PHY is not set -# CONFIG_LXT_PHY is not set -# CONFIG_CICADA_PHY is not set -# CONFIG_VITESSE_PHY is not set -# CONFIG_SMSC_PHY is not set -# CONFIG_BROADCOM_PHY is not set -# CONFIG_ICPLUS_PHY is not set -# CONFIG_REALTEK_PHY is not set -# CONFIG_NATIONAL_PHY is not set -# CONFIG_STE10XP is not set -# CONFIG_LSI_ET1011C_PHY is not set -# CONFIG_MICREL_PHY is not set -# CONFIG_FIXED_PHY is not set -# CONFIG_MDIO_BITBANG is not set -# CONFIG_PPP is not set -# CONFIG_SLIP is not set -# CONFIG_TR is not set -CONFIG_WLAN=y -# CONFIG_AIRO is not set -# CONFIG_ATMEL is not set -# CONFIG_HOSTAP is not set - -# -# Enable WiMAX (Networking options) to see the WiMAX drivers -# -# CONFIG_WAN is not set -# CONFIG_VMXNET3 is not set -# CONFIG_ISDN is not set - -# -# Input device support -# -# CONFIG_INPUT is not set - -# -# Hardware I/O ports -# -# CONFIG_SERIO is not set -# CONFIG_GAMEPORT is not set - -# -# Character devices -# -# CONFIG_VT is not set -CONFIG_UNIX98_PTYS=y -# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set -# CONFIG_LEGACY_PTYS is not set -# CONFIG_SERIAL_NONSTANDARD is not set -# CONFIG_TRACE_SINK is not set -# CONFIG_DEVKMEM is not set - -# -# Serial drivers -# -CONFIG_SERIAL_8250=y -CONFIG_SERIAL_8250_CONSOLE=y -# CONFIG_SERIAL_8250_PCI is not set -CONFIG_SERIAL_8250_NR_UARTS=4 -CONFIG_SERIAL_8250_RUNTIME_UARTS=4 -# CONFIG_SERIAL_8250_EXTENDED is not set - -# -# Non-8250 serial port support -# -# CONFIG_SERIAL_MFD_HSU is not set -CONFIG_SERIAL_CORE=y -CONFIG_SERIAL_CORE_CONSOLE=y -# CONFIG_SERIAL_JSM is not set -# CONFIG_SERIAL_TIMBERDALE is not set -# CONFIG_SERIAL_ALTERA_JTAGUART is not set -# CONFIG_SERIAL_ALTERA_UART is not set -# CONFIG_SERIAL_PCH_UART is not set -# CONFIG_SERIAL_XILINX_PS_UART is not set -# CONFIG_TTY_PRINTK is not set -# CONFIG_IPMI_HANDLER is not set -# CONFIG_HW_RANDOM is not set -# CONFIG_RTC is not set -# CONFIG_DTLK is not set -# CONFIG_R3964 is not set -# CONFIG_APPLICOM is not set -# CONFIG_RAW_DRIVER is not set -# CONFIG_TCG_TPM is not set -CONFIG_DEVPORT=y -# CONFIG_RAMOOPS is not set -# CONFIG_I2C is not set -# CONFIG_SPI is not set -# CONFIG_HSI is not set - -# -# PPS support -# - -# -# PPS generators support -# - -# -# PTP clock support -# - -# -# Enable Device Drivers -> PPS to see the PTP clock options. -# -CONFIG_ARCH_REQUIRE_GPIOLIB=y -CONFIG_GPIOLIB=y -# CONFIG_DEBUG_GPIO is not set - -# -# Memory mapped GPIO drivers: -# -# CONFIG_GPIO_GENERIC_PLATFORM is not set -# CONFIG_GPIO_VX855 is not set - -# -# I2C GPIO expanders: -# - -# -# PCI GPIO expanders: -# -# CONFIG_GPIO_BT8XX is not set -# CONFIG_GPIO_ML_IOH is not set -# CONFIG_GPIO_RDC321X is not set - -# -# SPI GPIO expanders: -# - -# -# AC97 GPIO expanders: -# - -# -# MODULbus GPIO expanders: -# -# CONFIG_W1 is not set -# CONFIG_POWER_SUPPLY is not set -# CONFIG_HWMON is not set -# CONFIG_THERMAL is not set -# CONFIG_WATCHDOG is not set -CONFIG_SSB_POSSIBLE=y - -# -# Sonics Silicon Backplane -# -# CONFIG_SSB is not set -CONFIG_BCMA_POSSIBLE=y - -# -# Broadcom specific AMBA -# -# CONFIG_BCMA is not set - -# -# Multifunction device drivers -# -# CONFIG_MFD_CORE is not set -# CONFIG_MFD_SM501 is not set -# CONFIG_HTC_PASIC3 is not set -# CONFIG_MFD_TMIO is not set -# CONFIG_ABX500_CORE is not set -# CONFIG_MFD_TIMBERDALE is not set -# CONFIG_LPC_SCH is not set -# CONFIG_MFD_RDC321X is not set -# CONFIG_MFD_JANZ_CMODIO is not set -# CONFIG_MFD_VX855 is not set -# CONFIG_REGULATOR is not set -# CONFIG_MEDIA_SUPPORT is not set - -# -# Graphics support -# -# CONFIG_VGA_ARB is not set -# CONFIG_DRM is not set -# CONFIG_STUB_POULSBO is not set -# CONFIG_VGASTATE is not set -# CONFIG_VIDEO_OUTPUT_CONTROL is not set -# CONFIG_FB is not set -# CONFIG_EXYNOS_VIDEO is not set -# CONFIG_BACKLIGHT_LCD_SUPPORT is not set -# CONFIG_SOUND is not set -CONFIG_USB_ARCH_HAS_OHCI=y -CONFIG_USB_ARCH_HAS_EHCI=y -CONFIG_USB_ARCH_HAS_XHCI=y -# CONFIG_USB_SUPPORT is not set -# CONFIG_MMC is not set -# CONFIG_MEMSTICK is not set -# CONFIG_NEW_LEDS is not set -# CONFIG_ACCESSIBILITY is not set -# CONFIG_INFINIBAND is not set -# CONFIG_RTC_CLASS is not set -# CONFIG_DMADEVICES is not set -# CONFIG_AUXDISPLAY is not set -# CONFIG_UIO is not set - -# -# Virtio drivers -# -# CONFIG_VIRTIO_BALLOON is not set - -# -# Microsoft Hyper-V guest support -# -# CONFIG_STAGING is not set - -# -# Hardware Spinlock drivers -# -CONFIG_IOMMU_SUPPORT=y - -# -# Remoteproc drivers (EXPERIMENTAL) -# - -# -# Rpmsg drivers (EXPERIMENTAL) -# -# CONFIG_VIRT_DRIVERS is not set -# CONFIG_PM_DEVFREQ is not set - -# -# File systems -# -CONFIG_EXT2_FS=y -# CONFIG_EXT2_FS_XATTR is not set -# CONFIG_EXT2_FS_XIP is not set -# CONFIG_EXT3_FS is not set -# CONFIG_EXT4_FS is not set -# CONFIG_REISERFS_FS is not set -# CONFIG_JFS_FS is not set -# CONFIG_XFS_FS is not set -# CONFIG_GFS2_FS is not set -# CONFIG_FS_POSIX_ACL is not set -CONFIG_EXPORTFS=y -CONFIG_FILE_LOCKING=y -CONFIG_FSNOTIFY=y -CONFIG_DNOTIFY=y -CONFIG_INOTIFY_USER=y -CONFIG_FANOTIFY=y -# CONFIG_QUOTA is not set -# CONFIG_QUOTACTL is not set -# CONFIG_AUTOFS4_FS is not set -# CONFIG_FUSE_FS is not set - -# -# Caches -# -# CONFIG_FSCACHE is not set - -# -# CD-ROM/DVD Filesystems -# -# CONFIG_ISO9660_FS is not set -# CONFIG_UDF_FS is not set - -# -# DOS/FAT/NT Filesystems -# -# CONFIG_MSDOS_FS is not set -# CONFIG_VFAT_FS is not set -# CONFIG_NTFS_FS is not set - -# -# Pseudo filesystems -# -CONFIG_PROC_FS=y -# CONFIG_PROC_KCORE is not set -CONFIG_PROC_SYSCTL=y -# CONFIG_PROC_PAGE_MONITOR is not set -CONFIG_SYSFS=y -CONFIG_TMPFS=y -# CONFIG_TMPFS_POSIX_ACL is not set -# CONFIG_TMPFS_XATTR is not set -# CONFIG_HUGETLB_PAGE is not set -# CONFIG_CONFIGFS_FS is not set -# CONFIG_MISC_FILESYSTEMS is not set -# CONFIG_NETWORK_FILESYSTEMS is not set -# CONFIG_NLS is not set - -# -# Kernel hacking -# -CONFIG_TRACE_IRQFLAGS_SUPPORT=y -CONFIG_PRINTK_TIME=y -CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 -# CONFIG_ENABLE_WARN_DEPRECATED is not set -# CONFIG_ENABLE_MUST_CHECK is not set -CONFIG_FRAME_WARN=1024 -CONFIG_MAGIC_SYSRQ=y -# CONFIG_STRIP_ASM_SYMS is not set -# CONFIG_UNUSED_SYMBOLS is not set -# CONFIG_DEBUG_FS is not set -# CONFIG_HEADERS_CHECK is not set -# CONFIG_DEBUG_SECTION_MISMATCH is not set -CONFIG_DEBUG_KERNEL=y -# CONFIG_DEBUG_SHIRQ is not set -# CONFIG_LOCKUP_DETECTOR is not set -# CONFIG_HARDLOCKUP_DETECTOR is not set -# CONFIG_DETECT_HUNG_TASK is not set -# CONFIG_SCHED_DEBUG is not set -# CONFIG_SCHEDSTATS is not set -# CONFIG_TIMER_STATS is not set -# CONFIG_DEBUG_OBJECTS is not set -# CONFIG_DEBUG_SLAB is not set -# CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_RT_MUTEX_TESTER is not set -# CONFIG_DEBUG_SPINLOCK is not set -# CONFIG_DEBUG_MUTEXES is not set -# CONFIG_DEBUG_LOCK_ALLOC is not set -# CONFIG_PROVE_LOCKING is not set -# CONFIG_SPARSE_RCU_POINTER is not set -# CONFIG_LOCK_STAT is not set -# CONFIG_DEBUG_ATOMIC_SLEEP is not set -# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set -# CONFIG_DEBUG_STACK_USAGE is not set -# CONFIG_DEBUG_KOBJECT is not set -CONFIG_DEBUG_INFO=y -# CONFIG_DEBUG_INFO_REDUCED is not set -# CONFIG_DEBUG_VM is not set -# CONFIG_DEBUG_WRITECOUNT is not set -# CONFIG_DEBUG_MEMORY_INIT is not set -# CONFIG_DEBUG_LIST is not set -# CONFIG_TEST_LIST_SORT is not set -# CONFIG_DEBUG_SG is not set -# CONFIG_DEBUG_NOTIFIERS is not set -# CONFIG_DEBUG_CREDENTIALS is not set -# CONFIG_BOOT_PRINTK_DELAY is not set -# CONFIG_RCU_TORTURE_TEST is not set -# CONFIG_RCU_TRACE is not set -# CONFIG_BACKTRACE_SELF_TEST is not set -# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set -# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set -# CONFIG_FAULT_INJECTION is not set -# CONFIG_DEBUG_PAGEALLOC is not set -CONFIG_HAVE_FUNCTION_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y -CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y -CONFIG_HAVE_DYNAMIC_FTRACE=y -CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y -CONFIG_HAVE_C_RECORDMCOUNT=y -CONFIG_TRACING_SUPPORT=y -# CONFIG_FTRACE is not set -# CONFIG_DMA_API_DEBUG is not set -# CONFIG_ATOMIC64_SELFTEST is not set -# CONFIG_SAMPLES is not set -CONFIG_HAVE_ARCH_KGDB=y -# CONFIG_TEST_KSTRTOX is not set -CONFIG_EARLY_PRINTK=y -CONFIG_CMDLINE_BOOL=y -CONFIG_CMDLINE="init=/init" -# CONFIG_CMDLINE_OVERRIDE is not set -# CONFIG_DEBUG_STACKOVERFLOW is not set -# CONFIG_RUNTIME_DEBUG is not set -# CONFIG_DEBUG_ZBOOT is not set - -# -# Security options -# -# CONFIG_KEYS is not set -# CONFIG_SECURITY_DMESG_RESTRICT is not set -# CONFIG_SECURITY is not set -# CONFIG_SECURITYFS is not set -CONFIG_DEFAULT_SECURITY_DAC=y -CONFIG_DEFAULT_SECURITY="" -CONFIG_CRYPTO=y - -# -# Crypto core or helper -# -# CONFIG_CRYPTO_FIPS is not set -CONFIG_CRYPTO_ALGAPI=y -CONFIG_CRYPTO_ALGAPI2=y -CONFIG_CRYPTO_RNG=m -CONFIG_CRYPTO_RNG2=m -# CONFIG_CRYPTO_MANAGER is not set -# CONFIG_CRYPTO_MANAGER2 is not set -# CONFIG_CRYPTO_USER is not set -# CONFIG_CRYPTO_GF128MUL is not set -# CONFIG_CRYPTO_NULL is not set -# CONFIG_CRYPTO_CRYPTD is not set -# CONFIG_CRYPTO_AUTHENC is not set -# CONFIG_CRYPTO_TEST is not set - -# -# Authenticated Encryption with Associated Data -# -# CONFIG_CRYPTO_CCM is not set -# CONFIG_CRYPTO_GCM is not set -# CONFIG_CRYPTO_SEQIV is not set - -# -# Block modes -# -# CONFIG_CRYPTO_CBC is not set -# CONFIG_CRYPTO_CTR is not set -# CONFIG_CRYPTO_CTS is not set -# CONFIG_CRYPTO_ECB is not set -# CONFIG_CRYPTO_LRW is not set -# CONFIG_CRYPTO_PCBC is not set -# CONFIG_CRYPTO_XTS is not set - -# -# Hash modes -# -# CONFIG_CRYPTO_HMAC is not set - -# -# Digest -# -# CONFIG_CRYPTO_CRC32C is not set -# CONFIG_CRYPTO_GHASH is not set -# CONFIG_CRYPTO_MD4 is not set -# CONFIG_CRYPTO_MD5 is not set -# CONFIG_CRYPTO_MICHAEL_MIC is not set -# CONFIG_CRYPTO_RMD128 is not set -# CONFIG_CRYPTO_RMD160 is not set -# CONFIG_CRYPTO_RMD256 is not set -# CONFIG_CRYPTO_RMD320 is not set -# CONFIG_CRYPTO_SHA1 is not set -# CONFIG_CRYPTO_SHA256 is not set -# CONFIG_CRYPTO_SHA512 is not set -# CONFIG_CRYPTO_TGR192 is not set -# CONFIG_CRYPTO_WP512 is not set - -# -# Ciphers -# -CONFIG_CRYPTO_AES=y -# CONFIG_CRYPTO_ANUBIS is not set -# CONFIG_CRYPTO_ARC4 is not set -# CONFIG_CRYPTO_BLOWFISH is not set -# CONFIG_CRYPTO_CAMELLIA is not set -# CONFIG_CRYPTO_CAST5 is not set -# CONFIG_CRYPTO_CAST6 is not set -# CONFIG_CRYPTO_DES is not set -# CONFIG_CRYPTO_FCRYPT is not set -# CONFIG_CRYPTO_KHAZAD is not set -# CONFIG_CRYPTO_SEED is not set -# CONFIG_CRYPTO_SERPENT is not set -# CONFIG_CRYPTO_TEA is not set -# CONFIG_CRYPTO_TWOFISH is not set - -# -# Compression -# -# CONFIG_CRYPTO_DEFLATE is not set -# CONFIG_CRYPTO_ZLIB is not set -# CONFIG_CRYPTO_LZO is not set - -# -# Random Number Generation -# -CONFIG_CRYPTO_ANSI_CPRNG=m -# CONFIG_CRYPTO_USER_API_HASH is not set -# CONFIG_CRYPTO_USER_API_SKCIPHER is not set -CONFIG_CRYPTO_HW=y -# CONFIG_BINARY_PRINTF is not set - -# -# Library routines -# -CONFIG_BITREVERSE=y -CONFIG_NO_GENERIC_PCI_IOPORT_MAP=y -CONFIG_GENERIC_PCI_IOMAP=y -CONFIG_GENERIC_IO=y -# CONFIG_CRC_CCITT is not set -# CONFIG_CRC16 is not set -# CONFIG_CRC_T10DIF is not set -# CONFIG_CRC_ITU_T is not set -CONFIG_CRC32=y -# CONFIG_CRC32_SELFTEST is not set -CONFIG_CRC32_SLICEBY8=y -# CONFIG_CRC32_SLICEBY4 is not set -# CONFIG_CRC32_SARWATE is not set -# CONFIG_CRC32_BIT is not set -# CONFIG_CRC7 is not set -# CONFIG_LIBCRC32C is not set -# CONFIG_CRC8 is not set -# CONFIG_XZ_DEC is not set -# CONFIG_XZ_DEC_BCJ is not set -CONFIG_HAS_IOMEM=y -CONFIG_HAS_IOPORT=y -CONFIG_HAS_DMA=y -CONFIG_DQL=y -CONFIG_NLATTR=y -# CONFIG_AVERAGE is not set -# CONFIG_CORDIC is not set diff --git a/target/mips/sys-available/broadcom-bcm47xx b/target/mips/sys-available/broadcom-bcm47xx index 532df8046..77bb28c63 100644 --- a/target/mips/sys-available/broadcom-bcm47xx +++ b/target/mips/sys-available/broadcom-bcm47xx @@ -3,7 +3,6 @@ config ADK_TARGET_SYSTEM_BROADCOM_BCM47XX select ADK_mips select ADK_little select ADK_broadcom_bcm47xx - select ADK_KERNEL_BCM47XX select ADK_TARGET_WITH_MTD select ADK_TARGET_WITH_SSB select ADK_TARGET_WITH_WATCHDOG diff --git a/target/mips/sys-available/fon-fon2100 b/target/mips/sys-available/fon-fon2100 index b0de9abe7..e1e0990b4 100644 --- a/target/mips/sys-available/fon-fon2100 +++ b/target/mips/sys-available/fon-fon2100 @@ -3,7 +3,6 @@ config ADK_TARGET_SYSTEM_FON_FON2100 select ADK_mips select ADK_big select ADK_fon_fon2100 - select ADK_KERNEL_ATHEROS_AR231X select ADK_TARGET_WITH_MTD select ADK_TARGET_WITH_AHB select ADK_TARGET_KERNEL_VMLINUZ diff --git a/target/mips/sys-available/lemote-yeelong b/target/mips/sys-available/lemote-yeelong index 62eeb88ee..0a6fd9c32 100644 --- a/target/mips/sys-available/lemote-yeelong +++ b/target/mips/sys-available/lemote-yeelong @@ -12,8 +12,8 @@ config ADK_TARGET_SYSTEM_LEMOTE_YEELONG select ADK_TARGET_WITH_RTC select ADK_TARGET_WITH_HDD select ADK_TARGET_WITH_PCI + select ADK_TARGET_WITH_ROOT_RW select ADK_TARGET_KERNEL_VMLINUZ - select ADK_USE_KERNEL_MINICONFIG help System profile for Lemote Yeelong laptop. diff --git a/target/mips/sys-available/linksys-ag241 b/target/mips/sys-available/linksys-ag241 index 2bec0b522..a7465d951 100644 --- a/target/mips/sys-available/linksys-ag241 +++ b/target/mips/sys-available/linksys-ag241 @@ -3,8 +3,6 @@ config ADK_TARGET_SYSTEM_LINKSYS_AG241 select ADK_mips select ADK_little select ADK_linksys_ag241 - select ADK_KERNEL_AR7 - select ADK_KERNEL_KERNEL_LZMA select ADK_TARGET_WITH_DSL select ADK_TARGET_WITH_WATCHDOG select ADK_TARGET_WITH_MTD diff --git a/target/mips/sys-available/mikrotik-rb4xx b/target/mips/sys-available/mikrotik-rb4xx index 2894fda87..0d68df59a 100644 --- a/target/mips/sys-available/mikrotik-rb4xx +++ b/target/mips/sys-available/mikrotik-rb4xx @@ -3,10 +3,6 @@ config ADK_TARGET_SYSTEM_MIKROTIK_RB4XX select ADK_mips select ADK_big select ADK_mikrotik_rb4xx - select ADK_KERNEL_ATHEROS_AR71XX - select ADK_KERNEL_AR71XX_MACH_RB4XX - select ADK_KERNEL_SPI_RB4XX - select ADK_KERNEL_SPI_RB4XX_CPLD select ADK_TARGET_WITH_MINIPCI select ADK_TARGET_WITH_WATCHDOG select ADK_TARGET_WITH_NAND diff --git a/target/mips/sys-available/mikrotik-rb532 b/target/mips/sys-available/mikrotik-rb532 index bdea0dfb8..96ca4d46d 100644 --- a/target/mips/sys-available/mikrotik-rb532 +++ b/target/mips/sys-available/mikrotik-rb532 @@ -5,10 +5,8 @@ config ADK_TARGET_SYSTEM_MIKROTIK_RB532 select ADK_mikrotik_rb532 select ADK_TARGET_WITH_MINIPCI select ADK_TARGET_WITH_WATCHDOG - select ADK_TARGET_WITH_CF select ADK_TARGET_WITH_NAND select ADK_TARGET_WITH_LEDS - select ADK_KERNEL_MIKROTIK_RB532 depends on ADK_BROKEN help Support for Mikrotik RB532. diff --git a/target/mips/sys-available/qemu-mips b/target/mips/sys-available/qemu-mips index c7f642dfa..d3ea99011 100644 --- a/target/mips/sys-available/qemu-mips +++ b/target/mips/sys-available/qemu-mips @@ -1,18 +1,10 @@ config ADK_TARGET_SYSTEM_QEMU_MIPS - bool "Qemu Emulator (big endian)" + bool "Qemu Emulator (mips32 big endian)" select ADK_mips select ADK_big select ADK_qemu_mips - select ADK_KERNEL_MIPS_MALTA - select ADK_KERNEL_CPU_BIG_ENDIAN - select ADK_KERNEL_PAGE_SIZE_4KB select ADK_HARDWARE_QEMU - select ADK_TARGET_WITH_VGA - select ADK_TARGET_WITH_INPUT - select ADK_TARGET_WITH_PCI - select ADK_TARGET_WITH_HDD select ADK_TARGET_KERNEL_VMLINUZ - select ADK_USE_KERNEL_MINICONFIG help - Qemu support for mips big endian architecture. + Qemu support for mips32 big endian architecture. diff --git a/target/mips/sys-available/qemu-mips64 b/target/mips/sys-available/qemu-mips64 index 924c70bc4..ce9c5b0fa 100644 --- a/target/mips/sys-available/qemu-mips64 +++ b/target/mips/sys-available/qemu-mips64 @@ -1,13 +1,13 @@ config ADK_TARGET_SYSTEM_QEMU_MIPS64 - bool "Qemu Emulator (mips64 big endian)" + bool "Qemu Emulator (mips64 big endian o32 abi)" select ADK_mips select ADK_big + select ADK_o32 select ADK_qemu_mips64 select ADK_CPU_MIPS64 select ADK_LINUX_64 select ADK_HARDWARE_QEMU select ADK_TARGET_KERNEL_VMLINUZ - select ADK_USE_KERNEL_MINICONFIG help - Qemu support for mips64 big endian architecture. + Qemu support for mips64 big endian architecture with o32 abi. diff --git a/target/mips/sys-available/qemu-mips64el b/target/mips/sys-available/qemu-mips64el index 14b548632..067d0d6ed 100644 --- a/target/mips/sys-available/qemu-mips64el +++ b/target/mips/sys-available/qemu-mips64el @@ -1,12 +1,12 @@ config ADK_TARGET_SYSTEM_QEMU_MIPS64EL - bool "Qemu Emulator (mips64 little endian)" + bool "Qemu Emulator (mips64 little endian o32 abi)" select ADK_mips select ADK_little + select ADK_o32 select ADK_qemu_mips64el select ADK_CPU_MIPS64 select ADK_LINUX_64 select ADK_HARDWARE_QEMU select ADK_TARGET_KERNEL_VMLINUZ - select ADK_USE_KERNEL_MINICONFIG help - Qemu support for mips64 little endian architecture. + Qemu support for mips64 little endian architecture with o32 abi. diff --git a/target/mips/sys-available/qemu-mips64eln32 b/target/mips/sys-available/qemu-mips64eln32 new file mode 100644 index 000000000..31c93b75c --- /dev/null +++ b/target/mips/sys-available/qemu-mips64eln32 @@ -0,0 +1,12 @@ +config ADK_TARGET_SYSTEM_QEMU_MIPS64ELN32 + bool "Qemu Emulator (mips64 little endian n32 abi)" + select ADK_mips + select ADK_little + select ADK_n32 + select ADK_qemu_mips64el + select ADK_CPU_MIPS64 + select ADK_LINUX_64 + select ADK_HARDWARE_QEMU + select ADK_TARGET_KERNEL_VMLINUZ + help + Qemu support for mips64 little endian architecture with n32 abi. diff --git a/target/mips/sys-available/qemu-mips64eln64 b/target/mips/sys-available/qemu-mips64eln64 new file mode 100644 index 000000000..0f0697602 --- /dev/null +++ b/target/mips/sys-available/qemu-mips64eln64 @@ -0,0 +1,12 @@ +config ADK_TARGET_SYSTEM_QEMU_MIPS64ELN64 + bool "Qemu Emulator (mips64 little endian n64 abi)" + select ADK_mips + select ADK_little + select ADK_n64 + select ADK_qemu_mips64el + select ADK_CPU_MIPS64 + select ADK_LINUX_64 + select ADK_HARDWARE_QEMU + select ADK_TARGET_KERNEL_VMLINUZ + help + Qemu support for mips64 little endian architecture with n64 abi. diff --git a/target/mips/sys-available/qemu-mips64n32 b/target/mips/sys-available/qemu-mips64n32 new file mode 100644 index 000000000..614edde0b --- /dev/null +++ b/target/mips/sys-available/qemu-mips64n32 @@ -0,0 +1,13 @@ +config ADK_TARGET_SYSTEM_QEMU_MIPS64N32 + bool "Qemu Emulator (mips64 big endian n32 abi)" + select ADK_mips + select ADK_big + select ADK_n32 + select ADK_qemu_mips64 + select ADK_CPU_MIPS64 + select ADK_LINUX_64 + select ADK_HARDWARE_QEMU + select ADK_TARGET_KERNEL_VMLINUZ + help + Qemu support for mips64 big endian architecture with n32 abi. + diff --git a/target/mips/sys-available/qemu-mips64n64 b/target/mips/sys-available/qemu-mips64n64 new file mode 100644 index 000000000..49ad7bba8 --- /dev/null +++ b/target/mips/sys-available/qemu-mips64n64 @@ -0,0 +1,13 @@ +config ADK_TARGET_SYSTEM_QEMU_MIPS64N64 + bool "Qemu Emulator (mips64 big endian n64 abi)" + select ADK_mips + select ADK_big + select ADK_n64 + select ADK_qemu_mips64 + select ADK_CPU_MIPS64 + select ADK_LINUX_64 + select ADK_HARDWARE_QEMU + select ADK_TARGET_KERNEL_VMLINUZ + help + Qemu support for mips64 big endian architecture with n64 abi. + diff --git a/target/mips/sys-available/qemu-mipsel b/target/mips/sys-available/qemu-mipsel index 869f0677a..688471d6d 100644 --- a/target/mips/sys-available/qemu-mipsel +++ b/target/mips/sys-available/qemu-mipsel @@ -1,18 +1,10 @@ config ADK_TARGET_SYSTEM_QEMU_MIPSEL - bool "Qemu Emulator (little endian)" + bool "Qemu Emulator (mips32 little endian)" select ADK_mips select ADK_qemu_mipsel select ADK_little - select ADK_KERNEL_MIPS_MALTA - select ADK_KERNEL_PAGE_SIZE_4KB - select ADK_KERNEL_CPU_LITTLE_ENDIAN select ADK_HARDWARE_QEMU - select ADK_TARGET_WITH_VGA - select ADK_TARGET_WITH_INPUT - select ADK_TARGET_WITH_PCI - select ADK_TARGET_WITH_HDD select ADK_TARGET_KERNEL_VMLINUZ - select ADK_USE_KERNEL_MINICONFIG help - Qemu support for mips little endian architecture. + Qemu support for mips32 little endian architecture. diff --git a/target/mips/sys-available/toolchain-mips b/target/mips/sys-available/toolchain-mips index 9e93cfdcd..7c7e1c142 100644 --- a/target/mips/sys-available/toolchain-mips +++ b/target/mips/sys-available/toolchain-mips @@ -1,10 +1,10 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS - bool "Toolchain only (big endian)" + bool "Toolchain only (mips32 big endian)" select ADK_mips select ADK_big select ADK_toolchain_mips select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help - MIPS toolchain. + MIPS32 big endian toolchain. diff --git a/target/mips/sys-available/toolchain-mips64 b/target/mips/sys-available/toolchain-mips64 index e9ea69170..f1cc555a2 100644 --- a/target/mips/sys-available/toolchain-mips64 +++ b/target/mips/sys-available/toolchain-mips64 @@ -7,6 +7,6 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64 select ADK_CPU_MIPS64 select ADK_LINUX_64 select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help MIPS64 big endian o32 ABI toolchain. diff --git a/target/mips/sys-available/toolchain-mips64el b/target/mips/sys-available/toolchain-mips64el index 0d54692ee..7aa82f05d 100644 --- a/target/mips/sys-available/toolchain-mips64el +++ b/target/mips/sys-available/toolchain-mips64el @@ -7,6 +7,6 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64EL select ADK_CPU_MIPS64 select ADK_LINUX_64 select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help MIPS64 little endian o32 ABI toolchain. diff --git a/target/mips/sys-available/toolchain-mips64eln32 b/target/mips/sys-available/toolchain-mips64eln32 index 9c0f44381..96f409ba6 100644 --- a/target/mips/sys-available/toolchain-mips64eln32 +++ b/target/mips/sys-available/toolchain-mips64eln32 @@ -7,6 +7,6 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64ELN32 select ADK_CPU_MIPS64 select ADK_LINUX_64 select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help MIPS64 little endian n32 ABI toolchain. diff --git a/target/mips/sys-available/toolchain-mips64eln64 b/target/mips/sys-available/toolchain-mips64eln64 index 2795598d8..f28b14997 100644 --- a/target/mips/sys-available/toolchain-mips64eln64 +++ b/target/mips/sys-available/toolchain-mips64eln64 @@ -7,6 +7,6 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64ELN64 select ADK_CPU_MIPS64 select ADK_LINUX_64 select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help MIPS64 little endian n64 ABI toolchain. diff --git a/target/mips/sys-available/toolchain-mips64n32 b/target/mips/sys-available/toolchain-mips64n32 index e2acd59b3..1337d3e37 100644 --- a/target/mips/sys-available/toolchain-mips64n32 +++ b/target/mips/sys-available/toolchain-mips64n32 @@ -7,6 +7,6 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64N32 select ADK_CPU_MIPS64 select ADK_LINUX_64 select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help MIPS64 big endian n64 ABI toolchain. diff --git a/target/mips/sys-available/toolchain-mips64n64 b/target/mips/sys-available/toolchain-mips64n64 index e544008f4..4cb4939e5 100644 --- a/target/mips/sys-available/toolchain-mips64n64 +++ b/target/mips/sys-available/toolchain-mips64n64 @@ -7,6 +7,6 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPS64N64 select ADK_CPU_MIPS64 select ADK_LINUX_64 select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help MIPS64 big endian n64 ABI toolchain. diff --git a/target/mips/sys-available/toolchain-mipsel b/target/mips/sys-available/toolchain-mipsel index 4c197b808..4032f9d94 100644 --- a/target/mips/sys-available/toolchain-mipsel +++ b/target/mips/sys-available/toolchain-mipsel @@ -1,10 +1,10 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_MIPSEL - bool "Toolchain only (little endian)" + bool "Toolchain only (mips32 little endian)" select ADK_mips select ADK_little select ADK_toolchain_mipsel select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help - MIPS toolchain. + MIPS32 little endian toolchain. diff --git a/target/mips/target.mk b/target/mips/target.mk index f4864d2cc..8b13be890 100644 --- a/target/mips/target.mk +++ b/target/mips/target.mk @@ -1,5 +1,4 @@ include $(TOPDIR)/mk/kernel-ver.mk ARCH:= mips CPU_ARCH:= $(ADK_TARGET_CPU_ARCH) -TARGET_OPTIMIZATION:= -Os -pipe TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS) diff --git a/target/native/Makefile b/target/native/Makefile deleted file mode 100644 index 3112b2a6a..000000000 --- a/target/native/Makefile +++ /dev/null @@ -1,37 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk -include $(TOPDIR)/mk/vars.mk -include $(TOPDIR)/mk/kernel.mk -include $(TOPDIR)/mk/modules.mk -include $(TOPDIR)/mk/kernel-build.mk -include $(TOPDIR)/mk/image.mk - -ifeq ($(CPU_ARCH),i686) -KERNEL:=$(LINUX_DIR)/arch/x86/boot/bzImage -else -KERNEL:=$(LINUX_DIR)/vmlinuz -endif - -ifeq ($(ADK_TARGET_FS),initramfs) -imageinstall: $(FW_DIR)/$(INITRAMFS) - @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) - @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' - @echo 'The initramfs image is: ${FW_DIR}/${INITRAMFS}' -endif -ifeq ($(ADK_TARGET_FS),initramfs-piggyback) -imageinstall: createinitramfs - @cp $(KERNEL) $(FW_DIR)/${TARGET_KERNEL} - @echo 'The kernel+initramfs file is: ${FW_DIR}/${TARGET_KERNEL}' -endif -ifeq ($(ADK_TARGET_FS),archive) -imageinstall: $(FW_DIR)/$(ROOTFSTARBALL) - @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSTARBALL)" -endif -ifeq ($(ADK_TARGET_FS),nfsroot) -imageinstall: $(FW_DIR)/$(ROOTFSUSERTARBALL) - @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) - @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' - @echo 'The nfs root tarball is: ${FW_DIR}/${ROOTFSUSERTARBALL}' -endif diff --git a/target/native/kernel.config.x86 b/target/native/kernel.config.x86 deleted file mode 100644 index ad87e5e3f..000000000 --- a/target/native/kernel.config.x86 +++ /dev/null @@ -1,946 +0,0 @@ -# -# Automatically generated make config: don't edit -# Linux kernel version: 2.6.29 -# Sat Mar 28 12:28:20 2009 -# -# CONFIG_64BIT is not set -CONFIG_X86_32=y -# CONFIG_X86_64 is not set -CONFIG_X86=y -CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig" -CONFIG_GENERIC_TIME=y -CONFIG_GENERIC_CMOS_UPDATE=y -CONFIG_CLOCKSOURCE_WATCHDOG=y -CONFIG_GENERIC_CLOCKEVENTS=y -CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y -CONFIG_LOCKDEP_SUPPORT=y -CONFIG_STACKTRACE_SUPPORT=y -CONFIG_HAVE_LATENCYTOP_SUPPORT=y -CONFIG_FAST_CMPXCHG_LOCAL=y -CONFIG_MMU=y -CONFIG_ZONE_DMA=y -CONFIG_GENERIC_ISA_DMA=y -CONFIG_GENERIC_IOMAP=y -CONFIG_GENERIC_BUG=y -CONFIG_GENERIC_HWEIGHT=y -CONFIG_ARCH_MAY_HAVE_PC_FDC=y -# CONFIG_RWSEM_GENERIC_SPINLOCK is not set -CONFIG_RWSEM_XCHGADD_ALGORITHM=y -CONFIG_ARCH_HAS_CPU_IDLE_WAIT=y -CONFIG_GENERIC_CALIBRATE_DELAY=y -# CONFIG_GENERIC_TIME_VSYSCALL is not set -CONFIG_ARCH_HAS_CPU_RELAX=y -CONFIG_ARCH_HAS_DEFAULT_IDLE=y -CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y -# CONFIG_HAVE_SETUP_PER_CPU_AREA is not set -# CONFIG_HAVE_CPUMASK_OF_CPU_MAP is not set -CONFIG_ARCH_HIBERNATION_POSSIBLE=y -CONFIG_ARCH_SUSPEND_POSSIBLE=y -# CONFIG_ZONE_DMA32 is not set -CONFIG_ARCH_POPULATES_NODE_MAP=y -# CONFIG_AUDIT_ARCH is not set -CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y -CONFIG_GENERIC_HARDIRQS=y -CONFIG_GENERIC_IRQ_PROBE=y -CONFIG_X86_BIOS_REBOOT=y -CONFIG_KTIME_SCALAR=y -CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" - -# -# General setup -# -CONFIG_EXPERIMENTAL=y -CONFIG_BROKEN_ON_SMP=y -CONFIG_LOCK_KERNEL=y -CONFIG_INIT_ENV_ARG_LIMIT=32 -CONFIG_LOCALVERSION="" -# CONFIG_LOCALVERSION_AUTO is not set -CONFIG_SWAP=y -CONFIG_SYSVIPC=y -CONFIG_SYSVIPC_SYSCTL=y -CONFIG_POSIX_MQUEUE=y -# CONFIG_BSD_PROCESS_ACCT is not set -# CONFIG_TASKSTATS is not set -# CONFIG_AUDIT is not set - -# -# RCU Subsystem -# -CONFIG_CLASSIC_RCU=y -# CONFIG_TREE_RCU is not set -# CONFIG_PREEMPT_RCU is not set -# CONFIG_TREE_RCU_TRACE is not set -# CONFIG_PREEMPT_RCU_TRACE is not set -CONFIG_IKCONFIG=y -CONFIG_IKCONFIG_PROC=y -CONFIG_LOG_BUF_SHIFT=15 -CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y -# CONFIG_GROUP_SCHED is not set -# CONFIG_CGROUPS is not set -# CONFIG_SYSFS_DEPRECATED_V2 is not set -# CONFIG_RELAY is not set -# CONFIG_NAMESPACES is not set -CONFIG_BLK_DEV_INITRD=y -CONFIG_INITRAMFS_SOURCE="" -# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set -CONFIG_SYSCTL=y -CONFIG_ANON_INODES=y -CONFIG_EMBEDDED=y -CONFIG_UID16=y -CONFIG_SYSCTL_SYSCALL=y -# CONFIG_KALLSYMS is not set -CONFIG_HOTPLUG=y -CONFIG_PRINTK=y -CONFIG_BUG=y -# CONFIG_ELF_CORE is not set -# CONFIG_PCSPKR_PLATFORM is not set -CONFIG_BASE_FULL=y -CONFIG_FUTEX=y -CONFIG_EPOLL=y -CONFIG_SIGNALFD=y -CONFIG_TIMERFD=y -CONFIG_EVENTFD=y -CONFIG_SHMEM=y -CONFIG_AIO=y -# CONFIG_VM_EVENT_COUNTERS is not set -CONFIG_PCI_QUIRKS=y -# CONFIG_COMPAT_BRK is not set -CONFIG_SLAB=y -# CONFIG_SLUB is not set -# CONFIG_SLOB is not set -# CONFIG_PROFILING is not set -CONFIG_HAVE_OPROFILE=y -CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y -CONFIG_HAVE_IOREMAP_PROT=y -CONFIG_HAVE_KPROBES=y -CONFIG_HAVE_KRETPROBES=y -CONFIG_HAVE_ARCH_TRACEHOOK=y -CONFIG_HAVE_GENERIC_DMA_COHERENT=y -CONFIG_SLABINFO=y -CONFIG_RT_MUTEXES=y -CONFIG_BASE_SMALL=0 -CONFIG_MODULES=y -# CONFIG_MODULE_FORCE_LOAD is not set -# CONFIG_MODULE_UNLOAD is not set -# CONFIG_MODVERSIONS is not set -# CONFIG_MODULE_SRCVERSION_ALL is not set -CONFIG_BLOCK=y -CONFIG_LBD=y -# CONFIG_BLK_DEV_IO_TRACE is not set -# CONFIG_BLK_DEV_BSG is not set -# CONFIG_BLK_DEV_INTEGRITY is not set - -# -# IO Schedulers -# -CONFIG_IOSCHED_NOOP=y -CONFIG_IOSCHED_AS=y -# CONFIG_IOSCHED_DEADLINE is not set -# CONFIG_IOSCHED_CFQ is not set -CONFIG_DEFAULT_AS=y -# CONFIG_DEFAULT_DEADLINE is not set -# CONFIG_DEFAULT_CFQ is not set -# CONFIG_DEFAULT_NOOP is not set -CONFIG_DEFAULT_IOSCHED="anticipatory" -# CONFIG_FREEZER is not set - -# -# Processor type and features -# -CONFIG_TICK_ONESHOT=y -CONFIG_NO_HZ=y -# CONFIG_HIGH_RES_TIMERS is not set -CONFIG_GENERIC_CLOCKEVENTS_BUILD=y -# CONFIG_SMP is not set -# CONFIG_SPARSE_IRQ is not set -CONFIG_X86_FIND_SMP_CONFIG=y -CONFIG_X86_MPPARSE=y -CONFIG_X86_PC=y -# CONFIG_X86_ELAN is not set -# CONFIG_X86_VOYAGER is not set -# CONFIG_X86_GENERICARCH is not set -# CONFIG_X86_VSMP is not set -# CONFIG_X86_RDC321X is not set -CONFIG_SCHED_OMIT_FRAME_POINTER=y -# CONFIG_PARAVIRT_GUEST is not set -# CONFIG_MEMTEST is not set -# CONFIG_M386 is not set -# CONFIG_M486 is not set -# CONFIG_M586 is not set -# CONFIG_M586TSC is not set -# CONFIG_M586MMX is not set -# CONFIG_M686 is not set -# CONFIG_MPENTIUMII is not set -# CONFIG_MPENTIUMIII is not set -CONFIG_MPENTIUMM=y -# CONFIG_MPENTIUM4 is not set -# CONFIG_MK6 is not set -# CONFIG_MK7 is not set -# CONFIG_MK8 is not set -# CONFIG_MCRUSOE is not set -# CONFIG_MEFFICEON is not set -# CONFIG_MWINCHIPC6 is not set -# CONFIG_MWINCHIP3D is not set -# CONFIG_MGEODEGX1 is not set -# CONFIG_MGEODE_LX is not set -# CONFIG_MCYRIXIII is not set -# CONFIG_MVIAC3_2 is not set -# CONFIG_MVIAC7 is not set -# CONFIG_MPSC is not set -# CONFIG_MCORE2 is not set -# CONFIG_GENERIC_CPU is not set -CONFIG_X86_GENERIC=y -CONFIG_X86_CPU=y -CONFIG_X86_CMPXCHG=y -CONFIG_X86_L1_CACHE_SHIFT=7 -CONFIG_X86_XADD=y -CONFIG_X86_WP_WORKS_OK=y -CONFIG_X86_INVLPG=y -CONFIG_X86_BSWAP=y -CONFIG_X86_POPAD_OK=y -CONFIG_X86_INTEL_USERCOPY=y -CONFIG_X86_USE_PPRO_CHECKSUM=y -CONFIG_X86_TSC=y -CONFIG_X86_CMOV=y -CONFIG_X86_MINIMUM_CPU_FAMILY=4 -CONFIG_X86_DEBUGCTLMSR=y -# CONFIG_PROCESSOR_SELECT is not set -CONFIG_CPU_SUP_INTEL=y -CONFIG_CPU_SUP_CYRIX_32=y -CONFIG_CPU_SUP_AMD=y -CONFIG_CPU_SUP_CENTAUR_32=y -CONFIG_CPU_SUP_TRANSMETA_32=y -CONFIG_CPU_SUP_UMC_32=y -# CONFIG_X86_DS is not set -# CONFIG_X86_PTRACE_BTS is not set -CONFIG_HPET_TIMER=y -CONFIG_HPET_EMULATE_RTC=y -CONFIG_DMI=y -# CONFIG_IOMMU_HELPER is not set -# CONFIG_IOMMU_API is not set -CONFIG_NR_CPUS=1 -# CONFIG_PREEMPT_NONE is not set -# CONFIG_PREEMPT_VOLUNTARY is not set -CONFIG_PREEMPT=y -CONFIG_X86_UP_APIC=y -CONFIG_X86_UP_IOAPIC=y -CONFIG_X86_LOCAL_APIC=y -CONFIG_X86_IO_APIC=y -# CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS is not set -CONFIG_X86_MCE=y -# CONFIG_X86_MCE_NONFATAL is not set -# CONFIG_X86_MCE_P4THERMAL is not set -# CONFIG_VM86 is not set -# CONFIG_TOSHIBA is not set -# CONFIG_I8K is not set -# CONFIG_X86_REBOOTFIXUPS is not set -# CONFIG_MICROCODE is not set -# CONFIG_X86_MSR is not set -# CONFIG_X86_CPUID is not set -# CONFIG_NOHIGHMEM is not set -CONFIG_HIGHMEM4G=y -# CONFIG_HIGHMEM64G is not set -CONFIG_VMSPLIT_3G=y -# CONFIG_VMSPLIT_3G_OPT is not set -# CONFIG_VMSPLIT_2G is not set -# CONFIG_VMSPLIT_2G_OPT is not set -# CONFIG_VMSPLIT_1G is not set -CONFIG_PAGE_OFFSET=0xC0000000 -CONFIG_HIGHMEM=y -# CONFIG_ARCH_PHYS_ADDR_T_64BIT is not set -CONFIG_ARCH_FLATMEM_ENABLE=y -CONFIG_ARCH_SPARSEMEM_ENABLE=y -CONFIG_ARCH_SELECT_MEMORY_MODEL=y -CONFIG_SELECT_MEMORY_MODEL=y -CONFIG_FLATMEM_MANUAL=y -# CONFIG_DISCONTIGMEM_MANUAL is not set -# CONFIG_SPARSEMEM_MANUAL is not set -CONFIG_FLATMEM=y -CONFIG_FLAT_NODE_MEM_MAP=y -CONFIG_SPARSEMEM_STATIC=y -CONFIG_PAGEFLAGS_EXTENDED=y -CONFIG_SPLIT_PTLOCK_CPUS=4 -# CONFIG_PHYS_ADDR_T_64BIT is not set -CONFIG_ZONE_DMA_FLAG=1 -CONFIG_BOUNCE=y -CONFIG_VIRT_TO_BUS=y -CONFIG_UNEVICTABLE_LRU=y -# CONFIG_HIGHPTE is not set -# CONFIG_X86_CHECK_BIOS_CORRUPTION is not set -CONFIG_X86_RESERVE_LOW_64K=y -# CONFIG_MATH_EMULATION is not set -CONFIG_MTRR=y -# CONFIG_MTRR_SANITIZER is not set -# CONFIG_X86_PAT is not set -# CONFIG_SECCOMP is not set -# CONFIG_HZ_100 is not set -CONFIG_HZ_250=y -# CONFIG_HZ_300 is not set -# CONFIG_HZ_1000 is not set -CONFIG_HZ=250 -# CONFIG_SCHED_HRTICK is not set -# CONFIG_KEXEC is not set -# CONFIG_CRASH_DUMP is not set -CONFIG_PHYSICAL_START=0x100000 -# CONFIG_RELOCATABLE is not set -CONFIG_PHYSICAL_ALIGN=0x100000 -# CONFIG_COMPAT_VDSO is not set -# CONFIG_CMDLINE_BOOL is not set -CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y - -# -# Power management and ACPI options -# -# CONFIG_PM is not set - -# -# CPU Frequency scaling -# -# CONFIG_CPU_FREQ is not set -# CONFIG_CPU_IDLE is not set - -# -# Bus options (PCI etc.) -# -CONFIG_PCI=y -# CONFIG_PCI_GOBIOS is not set -# CONFIG_PCI_GOMMCONFIG is not set -# CONFIG_PCI_GODIRECT is not set -# CONFIG_PCI_GOOLPC is not set -CONFIG_PCI_GOANY=y -CONFIG_PCI_BIOS=y -CONFIG_PCI_DIRECT=y -CONFIG_PCI_DOMAINS=y -# CONFIG_PCIEPORTBUS is not set -CONFIG_ARCH_SUPPORTS_MSI=y -CONFIG_PCI_MSI=y -# CONFIG_PCI_LEGACY is not set -# CONFIG_PCI_STUB is not set -# CONFIG_HT_IRQ is not set -CONFIG_ISA_DMA_API=y -# CONFIG_ISA is not set -# CONFIG_MCA is not set -# CONFIG_SCx200 is not set -# CONFIG_OLPC is not set -# CONFIG_PCCARD is not set -# CONFIG_HOTPLUG_PCI is not set - -# -# Executable file formats / Emulations -# -CONFIG_BINFMT_ELF=y -CONFIG_HAVE_AOUT=y -# CONFIG_BINFMT_AOUT is not set -# CONFIG_BINFMT_MISC is not set -CONFIG_HAVE_ATOMIC_IOMAP=y -CONFIG_NET=y - -# -# Networking options -# -CONFIG_COMPAT_NET_DEV_OPS=y -CONFIG_PACKET=y -CONFIG_PACKET_MMAP=y -CONFIG_UNIX=y -# CONFIG_NET_KEY is not set -CONFIG_INET=y -# CONFIG_IP_MULTICAST is not set -# CONFIG_IP_ADVANCED_ROUTER is not set -CONFIG_IP_FIB_HASH=y -# CONFIG_IP_PNP is not set -# CONFIG_NET_IPIP is not set -# CONFIG_NET_IPGRE is not set -# CONFIG_ARPD is not set -CONFIG_SYN_COOKIES=y -# CONFIG_INET_AH is not set -# CONFIG_INET_ESP is not set -# CONFIG_INET_IPCOMP is not set -# CONFIG_INET_XFRM_TUNNEL is not set -# CONFIG_INET_TUNNEL is not set -# CONFIG_INET_XFRM_MODE_TRANSPORT is not set -# CONFIG_INET_XFRM_MODE_TUNNEL is not set -# CONFIG_INET_XFRM_MODE_BEET is not set -# CONFIG_INET_LRO is not set -# CONFIG_INET_DIAG is not set -# CONFIG_TCP_CONG_ADVANCED is not set -CONFIG_TCP_CONG_CUBIC=y -CONFIG_DEFAULT_TCP_CONG="cubic" -# CONFIG_TCP_MD5SIG is not set -# CONFIG_IPV6 is not set -# CONFIG_NETWORK_SECMARK is not set -# CONFIG_NETFILTER is not set -# CONFIG_IP_DCCP is not set -# CONFIG_IP_SCTP is not set -# CONFIG_TIPC is not set -# CONFIG_ATM is not set -# CONFIG_BRIDGE is not set -# CONFIG_NET_DSA is not set -# CONFIG_VLAN_8021Q is not set -# CONFIG_DECNET is not set -# CONFIG_LLC2 is not set -# CONFIG_IPX is not set -# CONFIG_ATALK is not set -# CONFIG_X25 is not set -# CONFIG_LAPB is not set -# CONFIG_ECONET is not set -# CONFIG_WAN_ROUTER is not set -# CONFIG_NET_SCHED is not set -# CONFIG_DCB is not set - -# -# Network testing -# -# CONFIG_NET_PKTGEN is not set -# CONFIG_HAMRADIO is not set -# CONFIG_CAN is not set -# CONFIG_IRDA is not set -# CONFIG_BT is not set -# CONFIG_AF_RXRPC is not set -# CONFIG_PHONET is not set -CONFIG_WIRELESS=y -# CONFIG_CFG80211 is not set -CONFIG_WIRELESS_OLD_REGULATORY=y -# CONFIG_WIRELESS_EXT is not set -# CONFIG_LIB80211 is not set -# CONFIG_MAC80211 is not set -# CONFIG_WIMAX is not set -# CONFIG_RFKILL is not set -# CONFIG_NET_9P is not set - -# -# Device Drivers -# - -# -# Generic Driver Options -# -CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" -CONFIG_STANDALONE=y -CONFIG_PREVENT_FIRMWARE_BUILD=y -CONFIG_FW_LOADER=y -# CONFIG_FIRMWARE_IN_KERNEL is not set -CONFIG_EXTRA_FIRMWARE="" -# CONFIG_SYS_HYPERVISOR is not set -# CONFIG_CONNECTOR is not set -# CONFIG_MTD is not set -# CONFIG_PARPORT is not set -# CONFIG_BLK_DEV is not set -# CONFIG_MISC_DEVICES is not set -CONFIG_HAVE_IDE=y -# CONFIG_IDE is not set - -# -# SCSI device support -# -# CONFIG_RAID_ATTRS is not set -CONFIG_SCSI=y -CONFIG_SCSI_DMA=y -# CONFIG_SCSI_TGT is not set -# CONFIG_SCSI_NETLINK is not set -# CONFIG_SCSI_PROC_FS is not set - -# -# SCSI support type (disk, tape, CD-ROM) -# -CONFIG_BLK_DEV_SD=y -# CONFIG_CHR_DEV_ST is not set -# CONFIG_CHR_DEV_OSST is not set -# CONFIG_BLK_DEV_SR is not set -# CONFIG_CHR_DEV_SG is not set -# CONFIG_CHR_DEV_SCH is not set - -# -# Some SCSI devices (e.g. CD jukebox) support multiple LUNs -# -# CONFIG_SCSI_MULTI_LUN is not set -# CONFIG_SCSI_CONSTANTS is not set -# CONFIG_SCSI_LOGGING is not set -# CONFIG_SCSI_SCAN_ASYNC is not set -CONFIG_SCSI_WAIT_SCAN=m - -# -# SCSI Transports -# -# CONFIG_SCSI_SPI_ATTRS is not set -# CONFIG_SCSI_FC_ATTRS is not set -# CONFIG_SCSI_ISCSI_ATTRS is not set -# CONFIG_SCSI_SAS_LIBSAS is not set -# CONFIG_SCSI_SRP_ATTRS is not set -# CONFIG_SCSI_LOWLEVEL is not set -# CONFIG_SCSI_DH is not set -CONFIG_ATA=y -# CONFIG_ATA_NONSTANDARD is not set -# CONFIG_SATA_PMP is not set -# CONFIG_SATA_AHCI is not set -# CONFIG_SATA_SIL24 is not set -CONFIG_ATA_SFF=y -# CONFIG_SATA_SVW is not set -CONFIG_ATA_PIIX=y -# CONFIG_SATA_MV is not set -# CONFIG_SATA_NV is not set -# CONFIG_PDC_ADMA is not set -# CONFIG_SATA_QSTOR is not set -# CONFIG_SATA_PROMISE is not set -# CONFIG_SATA_SX4 is not set -# CONFIG_SATA_SIL is not set -# CONFIG_SATA_SIS is not set -# CONFIG_SATA_ULI is not set -# CONFIG_SATA_VIA is not set -# CONFIG_SATA_VITESSE is not set -# CONFIG_SATA_INIC162X is not set -# CONFIG_PATA_ALI is not set -# CONFIG_PATA_AMD is not set -# CONFIG_PATA_ARTOP is not set -# CONFIG_PATA_ATIIXP is not set -# CONFIG_PATA_CMD640_PCI is not set -# CONFIG_PATA_CMD64X is not set -# CONFIG_PATA_CS5520 is not set -# CONFIG_PATA_CS5530 is not set -# CONFIG_PATA_CS5535 is not set -# CONFIG_PATA_CS5536 is not set -# CONFIG_PATA_CYPRESS is not set -# CONFIG_PATA_EFAR is not set -# CONFIG_ATA_GENERIC is not set -# CONFIG_PATA_HPT366 is not set -# CONFIG_PATA_HPT37X is not set -# CONFIG_PATA_HPT3X2N is not set -# CONFIG_PATA_HPT3X3 is not set -# CONFIG_PATA_IT821X is not set -# CONFIG_PATA_IT8213 is not set -# CONFIG_PATA_JMICRON is not set -# CONFIG_PATA_TRIFLEX is not set -# CONFIG_PATA_MARVELL is not set -# CONFIG_PATA_MPIIX is not set -# CONFIG_PATA_OLDPIIX is not set -# CONFIG_PATA_NETCELL is not set -# CONFIG_PATA_NINJA32 is not set -# CONFIG_PATA_NS87410 is not set -# CONFIG_PATA_NS87415 is not set -# CONFIG_PATA_OPTI is not set -# CONFIG_PATA_OPTIDMA is not set -# CONFIG_PATA_PDC_OLD is not set -# CONFIG_PATA_RADISYS is not set -# CONFIG_PATA_RZ1000 is not set -# CONFIG_PATA_SC1200 is not set -# CONFIG_PATA_SERVERWORKS is not set -# CONFIG_PATA_PDC2027X is not set -# CONFIG_PATA_SIL680 is not set -# CONFIG_PATA_SIS is not set -# CONFIG_PATA_VIA is not set -# CONFIG_PATA_WINBOND is not set -# CONFIG_PATA_PLATFORM is not set -# CONFIG_PATA_SCH is not set -# CONFIG_MD is not set -# CONFIG_FUSION is not set - -# -# IEEE 1394 (FireWire) support -# - -# -# Enable only one of the two stacks, unless you know what you are doing -# -# CONFIG_FIREWIRE is not set -# CONFIG_IEEE1394 is not set -# CONFIG_I2O is not set -# CONFIG_MACINTOSH_DRIVERS is not set -CONFIG_NETDEVICES=y -# CONFIG_DUMMY is not set -# CONFIG_BONDING is not set -# CONFIG_MACVLAN is not set -# CONFIG_EQUALIZER is not set -# CONFIG_TUN is not set -# CONFIG_VETH is not set -# CONFIG_ARCNET is not set -# CONFIG_NET_ETHERNET is not set -# CONFIG_NETDEV_1000 is not set -# CONFIG_NETDEV_10000 is not set -# CONFIG_TR is not set - -# -# Wireless LAN -# -# CONFIG_WLAN_PRE80211 is not set -# CONFIG_WLAN_80211 is not set -# CONFIG_IWLWIFI_LEDS is not set - -# -# Enable WiMAX (Networking options) to see the WiMAX drivers -# -# CONFIG_WAN is not set -# CONFIG_FDDI is not set -# CONFIG_HIPPI is not set -# CONFIG_PPP is not set -# CONFIG_SLIP is not set -# CONFIG_NET_FC is not set -# CONFIG_NETCONSOLE is not set -# CONFIG_NETPOLL is not set -# CONFIG_NET_POLL_CONTROLLER is not set -# CONFIG_ISDN is not set -# CONFIG_PHONE is not set - -# -# Input device support -# -CONFIG_INPUT=y -# CONFIG_INPUT_FF_MEMLESS is not set -# CONFIG_INPUT_POLLDEV is not set - -# -# Userland interfaces -# -# CONFIG_INPUT_MOUSEDEV is not set -# CONFIG_INPUT_JOYDEV is not set -# CONFIG_INPUT_EVDEV is not set -# CONFIG_INPUT_EVBUG is not set - -# -# Input Device Drivers -# -# CONFIG_INPUT_KEYBOARD is not set -# CONFIG_INPUT_MOUSE is not set -# CONFIG_INPUT_JOYSTICK is not set -# CONFIG_INPUT_TABLET is not set -# CONFIG_INPUT_TOUCHSCREEN is not set -# CONFIG_INPUT_MISC is not set - -# -# Hardware I/O ports -# -CONFIG_SERIO=y -CONFIG_SERIO_I8042=y -# CONFIG_SERIO_SERPORT is not set -# CONFIG_SERIO_CT82C710 is not set -# CONFIG_SERIO_PCIPS2 is not set -CONFIG_SERIO_LIBPS2=y -# CONFIG_SERIO_RAW is not set -# CONFIG_GAMEPORT is not set - -# -# Character devices -# -CONFIG_VT=y -# CONFIG_CONSOLE_TRANSLATIONS is not set -CONFIG_VT_CONSOLE=y -CONFIG_HW_CONSOLE=y -# CONFIG_VT_HW_CONSOLE_BINDING is not set -CONFIG_DEVKMEM=y -# CONFIG_SERIAL_NONSTANDARD is not set -# CONFIG_NOZOMI is not set - -# -# Serial drivers -# -CONFIG_SERIAL_8250=y -CONFIG_SERIAL_8250_CONSOLE=y -CONFIG_FIX_EARLYCON_MEM=y -CONFIG_SERIAL_8250_PCI=y -CONFIG_SERIAL_8250_NR_UARTS=4 -CONFIG_SERIAL_8250_RUNTIME_UARTS=4 -# CONFIG_SERIAL_8250_EXTENDED is not set - -# -# Non-8250 serial port support -# -CONFIG_SERIAL_CORE=y -CONFIG_SERIAL_CORE_CONSOLE=y -# CONFIG_SERIAL_JSM is not set -CONFIG_UNIX98_PTYS=y -# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set -# CONFIG_LEGACY_PTYS is not set -# CONFIG_IPMI_HANDLER is not set -# CONFIG_HW_RANDOM is not set -# CONFIG_NVRAM is not set -# CONFIG_R3964 is not set -# CONFIG_APPLICOM is not set -# CONFIG_SONYPI is not set -# CONFIG_MWAVE is not set -# CONFIG_PC8736x_GPIO is not set -# CONFIG_NSC_GPIO is not set -# CONFIG_CS5535_GPIO is not set -# CONFIG_RAW_DRIVER is not set -# CONFIG_HANGCHECK_TIMER is not set -# CONFIG_TCG_TPM is not set -# CONFIG_TELCLOCK is not set -CONFIG_DEVPORT=y -# CONFIG_I2C is not set -# CONFIG_SPI is not set -CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y -# CONFIG_GPIOLIB is not set -# CONFIG_W1 is not set -# CONFIG_POWER_SUPPLY is not set -# CONFIG_HWMON is not set -# CONFIG_THERMAL is not set -# CONFIG_THERMAL_HWMON is not set -# CONFIG_WATCHDOG is not set -CONFIG_SSB_POSSIBLE=y - -# -# Sonics Silicon Backplane -# -# CONFIG_SSB is not set - -# -# Multifunction device drivers -# -# CONFIG_MFD_CORE is not set -# CONFIG_MFD_SM501 is not set -# CONFIG_HTC_PASIC3 is not set -# CONFIG_MFD_TMIO is not set -# CONFIG_REGULATOR is not set - -# -# Multimedia devices -# - -# -# Multimedia core support -# -# CONFIG_VIDEO_DEV is not set -# CONFIG_DVB_CORE is not set -# CONFIG_VIDEO_MEDIA is not set - -# -# Multimedia drivers -# -# CONFIG_DAB is not set - -# -# Graphics support -# -# CONFIG_AGP is not set -# CONFIG_DRM is not set -# CONFIG_VGASTATE is not set -# CONFIG_VIDEO_OUTPUT_CONTROL is not set -# CONFIG_FB is not set -# CONFIG_BACKLIGHT_LCD_SUPPORT is not set - -# -# Display device support -# -# CONFIG_DISPLAY_SUPPORT is not set - -# -# Console display driver support -# -CONFIG_VGA_CONSOLE=y -CONFIG_VGACON_SOFT_SCROLLBACK=y -CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=512 -CONFIG_DUMMY_CONSOLE=y -# CONFIG_SOUND is not set -# CONFIG_HID_SUPPORT is not set -# CONFIG_USB_SUPPORT is not set -# CONFIG_UWB is not set -# CONFIG_MMC is not set -# CONFIG_MEMSTICK is not set -# CONFIG_NEW_LEDS is not set -# CONFIG_ACCESSIBILITY is not set -# CONFIG_INFINIBAND is not set -# CONFIG_EDAC is not set -CONFIG_RTC_LIB=y -CONFIG_RTC_CLASS=y -CONFIG_RTC_HCTOSYS=y -CONFIG_RTC_HCTOSYS_DEVICE="rtc0" -# CONFIG_RTC_DEBUG is not set - -# -# RTC interfaces -# -CONFIG_RTC_INTF_SYSFS=y -CONFIG_RTC_INTF_PROC=y -CONFIG_RTC_INTF_DEV=y -# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set -# CONFIG_RTC_DRV_TEST is not set - -# -# SPI RTC drivers -# - -# -# Platform RTC drivers -# -CONFIG_RTC_DRV_CMOS=y -# CONFIG_RTC_DRV_DS1286 is not set -# CONFIG_RTC_DRV_DS1511 is not set -# CONFIG_RTC_DRV_DS1553 is not set -# CONFIG_RTC_DRV_DS1742 is not set -# CONFIG_RTC_DRV_STK17TA8 is not set -# CONFIG_RTC_DRV_M48T86 is not set -# CONFIG_RTC_DRV_M48T35 is not set -# CONFIG_RTC_DRV_M48T59 is not set -# CONFIG_RTC_DRV_BQ4802 is not set -# CONFIG_RTC_DRV_V3020 is not set - -# -# on-CPU RTC drivers -# -# CONFIG_DMADEVICES is not set -# CONFIG_UIO is not set -# CONFIG_STAGING is not set -CONFIG_X86_PLATFORM_DEVICES=y - -# -# Firmware Drivers -# -# CONFIG_EDD is not set -# CONFIG_FIRMWARE_MEMMAP is not set -# CONFIG_DELL_RBU is not set -# CONFIG_DCDBAS is not set -CONFIG_DMIID=y -# CONFIG_ISCSI_IBFT_FIND is not set - -# -# File systems -# -# CONFIG_EXT2_FS is not set -# CONFIG_EXT3_FS is not set -# CONFIG_EXT4_FS is not set -# CONFIG_REISERFS_FS is not set -# CONFIG_JFS_FS is not set -# CONFIG_FS_POSIX_ACL is not set -CONFIG_FILE_LOCKING=y -# CONFIG_XFS_FS is not set -# CONFIG_GFS2_FS is not set -# CONFIG_OCFS2_FS is not set -# CONFIG_BTRFS_FS is not set -# CONFIG_DNOTIFY is not set -# CONFIG_INOTIFY is not set -# CONFIG_QUOTA is not set -# CONFIG_AUTOFS_FS is not set -# CONFIG_AUTOFS4_FS is not set -# CONFIG_FUSE_FS is not set - -# -# CD-ROM/DVD Filesystems -# -# CONFIG_ISO9660_FS is not set -# CONFIG_UDF_FS is not set - -# -# DOS/FAT/NT Filesystems -# -# CONFIG_MSDOS_FS is not set -# CONFIG_VFAT_FS is not set -# CONFIG_NTFS_FS is not set - -# -# Pseudo filesystems -# -CONFIG_PROC_FS=y -# CONFIG_PROC_KCORE is not set -CONFIG_PROC_SYSCTL=y -# CONFIG_PROC_PAGE_MONITOR is not set -CONFIG_SYSFS=y -CONFIG_TMPFS=y -# CONFIG_TMPFS_POSIX_ACL is not set -# CONFIG_HUGETLBFS is not set -# CONFIG_HUGETLB_PAGE is not set -CONFIG_CONFIGFS_FS=y -CONFIG_MISC_FILESYSTEMS=y -# CONFIG_ADFS_FS is not set -# CONFIG_AFFS_FS is not set -# CONFIG_HFS_FS is not set -# CONFIG_HFSPLUS_FS is not set -# CONFIG_BEFS_FS is not set -# CONFIG_BFS_FS is not set -# CONFIG_EFS_FS is not set -# CONFIG_CRAMFS is not set -# CONFIG_SQUASHFS is not set -# CONFIG_VXFS_FS is not set -# CONFIG_MINIX_FS is not set -# CONFIG_OMFS_FS is not set -# CONFIG_HPFS_FS is not set -# CONFIG_QNX4FS_FS is not set -# CONFIG_ROMFS_FS is not set -# CONFIG_SYSV_FS is not set -# CONFIG_UFS_FS is not set -# CONFIG_NETWORK_FILESYSTEMS is not set - -# -# Partition Types -# -# CONFIG_PARTITION_ADVANCED is not set -CONFIG_MSDOS_PARTITION=y -# CONFIG_NLS is not set -# CONFIG_DLM is not set - -# -# Kernel hacking -# -CONFIG_TRACE_IRQFLAGS_SUPPORT=y -CONFIG_PRINTK_TIME=y -# CONFIG_ENABLE_WARN_DEPRECATED is not set -# CONFIG_ENABLE_MUST_CHECK is not set -CONFIG_FRAME_WARN=1024 -CONFIG_MAGIC_SYSRQ=y -# CONFIG_UNUSED_SYMBOLS is not set -# CONFIG_DEBUG_FS is not set -# CONFIG_HEADERS_CHECK is not set -# CONFIG_DEBUG_KERNEL is not set -# CONFIG_DEBUG_BUGVERBOSE is not set -# CONFIG_DEBUG_MEMORY_INIT is not set -CONFIG_ARCH_WANT_FRAME_POINTERS=y -CONFIG_FRAME_POINTER=y -# CONFIG_RCU_CPU_STALL_DETECTOR is not set -# CONFIG_LATENCYTOP is not set -# CONFIG_SYSCTL_SYSCALL_CHECK is not set -CONFIG_USER_STACKTRACE_SUPPORT=y -CONFIG_HAVE_FUNCTION_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y -CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y -CONFIG_HAVE_DYNAMIC_FTRACE=y -CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y - -# -# Tracers -# -# CONFIG_SYSPROF_TRACER is not set -# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set -# CONFIG_DYNAMIC_PRINTK_DEBUG is not set -# CONFIG_SAMPLES is not set -CONFIG_HAVE_ARCH_KGDB=y -# CONFIG_STRICT_DEVMEM is not set -# CONFIG_X86_VERBOSE_BOOTUP is not set -# CONFIG_EARLY_PRINTK is not set -# CONFIG_4KSTACKS is not set -# CONFIG_DOUBLEFAULT is not set -CONFIG_HAVE_MMIOTRACE_SUPPORT=y -CONFIG_IO_DELAY_TYPE_0X80=0 -CONFIG_IO_DELAY_TYPE_0XED=1 -CONFIG_IO_DELAY_TYPE_UDELAY=2 -CONFIG_IO_DELAY_TYPE_NONE=3 -CONFIG_IO_DELAY_0X80=y -# CONFIG_IO_DELAY_0XED is not set -# CONFIG_IO_DELAY_UDELAY is not set -# CONFIG_IO_DELAY_NONE is not set -CONFIG_DEFAULT_IO_DELAY_TYPE=0 -# CONFIG_OPTIMIZE_INLINING is not set - -# -# Security options -# -# CONFIG_KEYS is not set -# CONFIG_SECURITY is not set -# CONFIG_SECURITYFS is not set -# CONFIG_SECURITY_FILE_CAPABILITIES is not set -# CONFIG_CRYPTO is not set -CONFIG_HAVE_KVM=y -# CONFIG_VIRTUALIZATION is not set - -# -# Library routines -# -CONFIG_GENERIC_FIND_FIRST_BIT=y -CONFIG_GENERIC_FIND_NEXT_BIT=y -CONFIG_GENERIC_FIND_LAST_BIT=y -# CONFIG_CRC_CCITT is not set -# CONFIG_CRC16 is not set -# CONFIG_CRC_T10DIF is not set -# CONFIG_CRC_ITU_T is not set -# CONFIG_CRC32 is not set -# CONFIG_CRC7 is not set -# CONFIG_LIBCRC32C is not set -CONFIG_PLIST=y -CONFIG_HAS_IOMEM=y -CONFIG_HAS_IOPORT=y -CONFIG_HAS_DMA=y diff --git a/target/native/kernel.config.x86_64 b/target/native/kernel.config.x86_64 deleted file mode 100644 index ada69a344..000000000 --- a/target/native/kernel.config.x86_64 +++ /dev/null @@ -1,1043 +0,0 @@ -# -# Automatically generated make config: don't edit -# Linux kernel version: 2.6.29.1 -# Thu Jun 4 21:10:07 2009 -# -CONFIG_64BIT=y -# CONFIG_X86_32 is not set -CONFIG_X86_64=y -CONFIG_X86=y -CONFIG_ARCH_DEFCONFIG="arch/x86/configs/x86_64_defconfig" -CONFIG_GENERIC_TIME=y -CONFIG_GENERIC_CMOS_UPDATE=y -CONFIG_CLOCKSOURCE_WATCHDOG=y -CONFIG_GENERIC_CLOCKEVENTS=y -CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y -CONFIG_LOCKDEP_SUPPORT=y -CONFIG_STACKTRACE_SUPPORT=y -CONFIG_HAVE_LATENCYTOP_SUPPORT=y -CONFIG_FAST_CMPXCHG_LOCAL=y -CONFIG_MMU=y -CONFIG_ZONE_DMA=y -CONFIG_GENERIC_ISA_DMA=y -CONFIG_GENERIC_IOMAP=y -CONFIG_GENERIC_BUG=y -CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y -CONFIG_GENERIC_HWEIGHT=y -CONFIG_ARCH_MAY_HAVE_PC_FDC=y -CONFIG_RWSEM_GENERIC_SPINLOCK=y -# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set -CONFIG_ARCH_HAS_CPU_IDLE_WAIT=y -CONFIG_GENERIC_CALIBRATE_DELAY=y -CONFIG_GENERIC_TIME_VSYSCALL=y -CONFIG_ARCH_HAS_CPU_RELAX=y -CONFIG_ARCH_HAS_DEFAULT_IDLE=y -CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y -CONFIG_HAVE_SETUP_PER_CPU_AREA=y -CONFIG_HAVE_CPUMASK_OF_CPU_MAP=y -CONFIG_ARCH_HIBERNATION_POSSIBLE=y -CONFIG_ARCH_SUSPEND_POSSIBLE=y -CONFIG_ZONE_DMA32=y -CONFIG_ARCH_POPULATES_NODE_MAP=y -CONFIG_AUDIT_ARCH=y -CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y -CONFIG_GENERIC_HARDIRQS=y -CONFIG_GENERIC_IRQ_PROBE=y -CONFIG_GENERIC_PENDING_IRQ=y -CONFIG_X86_SMP=y -CONFIG_USE_GENERIC_SMP_HELPERS=y -CONFIG_X86_64_SMP=y -CONFIG_X86_HT=y -CONFIG_X86_BIOS_REBOOT=y -CONFIG_X86_TRAMPOLINE=y -# CONFIG_KTIME_SCALAR is not set -CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" - -# -# General setup -# -CONFIG_EXPERIMENTAL=y -CONFIG_LOCK_KERNEL=y -CONFIG_INIT_ENV_ARG_LIMIT=32 -CONFIG_LOCALVERSION="" -# CONFIG_LOCALVERSION_AUTO is not set -# CONFIG_SWAP is not set -CONFIG_SYSVIPC=y -CONFIG_SYSVIPC_SYSCTL=y -CONFIG_POSIX_MQUEUE=y -# CONFIG_BSD_PROCESS_ACCT is not set -# CONFIG_TASKSTATS is not set -# CONFIG_AUDIT is not set - -# -# RCU Subsystem -# -CONFIG_CLASSIC_RCU=y -# CONFIG_TREE_RCU is not set -# CONFIG_PREEMPT_RCU is not set -# CONFIG_TREE_RCU_TRACE is not set -# CONFIG_PREEMPT_RCU_TRACE is not set -CONFIG_IKCONFIG=y -CONFIG_IKCONFIG_PROC=y -CONFIG_LOG_BUF_SHIFT=15 -CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y -# CONFIG_GROUP_SCHED is not set -# CONFIG_CGROUPS is not set -# CONFIG_SYSFS_DEPRECATED_V2 is not set -# CONFIG_RELAY is not set -# CONFIG_NAMESPACES is not set -CONFIG_BLK_DEV_INITRD=y -CONFIG_INITRAMFS_SOURCE="" -# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set -CONFIG_SYSCTL=y -CONFIG_ANON_INODES=y -CONFIG_EMBEDDED=y -CONFIG_UID16=y -CONFIG_SYSCTL_SYSCALL=y -# CONFIG_KALLSYMS is not set -CONFIG_HOTPLUG=y -CONFIG_PRINTK=y -CONFIG_BUG=y -# CONFIG_ELF_CORE is not set -# CONFIG_PCSPKR_PLATFORM is not set -CONFIG_BASE_FULL=y -CONFIG_FUTEX=y -CONFIG_EPOLL=y -CONFIG_SIGNALFD=y -CONFIG_TIMERFD=y -CONFIG_EVENTFD=y -CONFIG_SHMEM=y -CONFIG_AIO=y -# CONFIG_VM_EVENT_COUNTERS is not set -CONFIG_PCI_QUIRKS=y -# CONFIG_COMPAT_BRK is not set -CONFIG_SLAB=y -# CONFIG_SLUB is not set -# CONFIG_SLOB is not set -# CONFIG_PROFILING is not set -CONFIG_HAVE_OPROFILE=y -CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y -CONFIG_HAVE_IOREMAP_PROT=y -CONFIG_HAVE_KPROBES=y -CONFIG_HAVE_KRETPROBES=y -CONFIG_HAVE_ARCH_TRACEHOOK=y -# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set -CONFIG_SLABINFO=y -CONFIG_RT_MUTEXES=y -CONFIG_BASE_SMALL=0 -CONFIG_MODULES=y -# CONFIG_MODULE_FORCE_LOAD is not set -# CONFIG_MODULE_UNLOAD is not set -# CONFIG_MODVERSIONS is not set -# CONFIG_MODULE_SRCVERSION_ALL is not set -CONFIG_BLOCK=y -# CONFIG_BLK_DEV_IO_TRACE is not set -# CONFIG_BLK_DEV_BSG is not set -# CONFIG_BLK_DEV_INTEGRITY is not set -CONFIG_BLOCK_COMPAT=y - -# -# IO Schedulers -# -CONFIG_IOSCHED_NOOP=y -# CONFIG_IOSCHED_AS is not set -# CONFIG_IOSCHED_DEADLINE is not set -# CONFIG_IOSCHED_CFQ is not set -# CONFIG_DEFAULT_AS is not set -# CONFIG_DEFAULT_DEADLINE is not set -# CONFIG_DEFAULT_CFQ is not set -CONFIG_DEFAULT_NOOP=y -CONFIG_DEFAULT_IOSCHED="noop" -# CONFIG_FREEZER is not set - -# -# Processor type and features -# -CONFIG_TICK_ONESHOT=y -CONFIG_NO_HZ=y -# CONFIG_HIGH_RES_TIMERS is not set -CONFIG_GENERIC_CLOCKEVENTS_BUILD=y -CONFIG_SMP=y -# CONFIG_SPARSE_IRQ is not set -CONFIG_X86_FIND_SMP_CONFIG=y -CONFIG_X86_MPPARSE=y -CONFIG_X86_PC=y -# CONFIG_X86_ELAN is not set -# CONFIG_X86_VOYAGER is not set -# CONFIG_X86_GENERICARCH is not set -# CONFIG_X86_VSMP is not set -CONFIG_SCHED_OMIT_FRAME_POINTER=y -# CONFIG_PARAVIRT_GUEST is not set -# CONFIG_MEMTEST is not set -# CONFIG_M386 is not set -# CONFIG_M486 is not set -# CONFIG_M586 is not set -# CONFIG_M586TSC is not set -# CONFIG_M586MMX is not set -# CONFIG_M686 is not set -# CONFIG_MPENTIUMII is not set -# CONFIG_MPENTIUMIII is not set -# CONFIG_MPENTIUMM is not set -# CONFIG_MPENTIUM4 is not set -# CONFIG_MK6 is not set -# CONFIG_MK7 is not set -# CONFIG_MK8 is not set -# CONFIG_MCRUSOE is not set -# CONFIG_MEFFICEON is not set -# CONFIG_MWINCHIPC6 is not set -# CONFIG_MWINCHIP3D is not set -# CONFIG_MGEODEGX1 is not set -# CONFIG_MGEODE_LX is not set -# CONFIG_MCYRIXIII is not set -# CONFIG_MVIAC3_2 is not set -# CONFIG_MVIAC7 is not set -# CONFIG_MPSC is not set -# CONFIG_MCORE2 is not set -CONFIG_GENERIC_CPU=y -CONFIG_X86_CPU=y -CONFIG_X86_L1_CACHE_BYTES=128 -CONFIG_X86_INTERNODE_CACHE_BYTES=128 -CONFIG_X86_CMPXCHG=y -CONFIG_X86_L1_CACHE_SHIFT=7 -CONFIG_X86_WP_WORKS_OK=y -CONFIG_X86_TSC=y -CONFIG_X86_CMPXCHG64=y -CONFIG_X86_CMOV=y -CONFIG_X86_MINIMUM_CPU_FAMILY=64 -CONFIG_X86_DEBUGCTLMSR=y -# CONFIG_PROCESSOR_SELECT is not set -CONFIG_CPU_SUP_INTEL=y -CONFIG_CPU_SUP_AMD=y -CONFIG_CPU_SUP_CENTAUR_64=y -# CONFIG_X86_DS is not set -# CONFIG_X86_PTRACE_BTS is not set -CONFIG_HPET_TIMER=y -CONFIG_HPET_EMULATE_RTC=y -CONFIG_DMI=y -CONFIG_GART_IOMMU=y -# CONFIG_CALGARY_IOMMU is not set -CONFIG_SWIOTLB=y -CONFIG_IOMMU_HELPER=y -# CONFIG_IOMMU_API is not set -CONFIG_NR_CPUS=8 -# CONFIG_SCHED_SMT is not set -CONFIG_SCHED_MC=y -CONFIG_PREEMPT_NONE=y -# CONFIG_PREEMPT_VOLUNTARY is not set -# CONFIG_PREEMPT is not set -CONFIG_X86_LOCAL_APIC=y -CONFIG_X86_IO_APIC=y -CONFIG_X86_REROUTE_FOR_BROKEN_BOOT_IRQS=y -CONFIG_X86_MCE=y -CONFIG_X86_MCE_INTEL=y -CONFIG_X86_MCE_AMD=y -# CONFIG_I8K is not set -# CONFIG_MICROCODE is not set -# CONFIG_X86_MSR is not set -# CONFIG_X86_CPUID is not set -CONFIG_ARCH_PHYS_ADDR_T_64BIT=y -CONFIG_DIRECT_GBPAGES=y -# CONFIG_NUMA is not set -CONFIG_ARCH_SPARSEMEM_DEFAULT=y -CONFIG_ARCH_SPARSEMEM_ENABLE=y -CONFIG_ARCH_SELECT_MEMORY_MODEL=y -CONFIG_SELECT_MEMORY_MODEL=y -# CONFIG_FLATMEM_MANUAL is not set -# CONFIG_DISCONTIGMEM_MANUAL is not set -CONFIG_SPARSEMEM_MANUAL=y -CONFIG_SPARSEMEM=y -CONFIG_HAVE_MEMORY_PRESENT=y -CONFIG_SPARSEMEM_EXTREME=y -CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y -CONFIG_SPARSEMEM_VMEMMAP=y -# CONFIG_MEMORY_HOTPLUG is not set -CONFIG_PAGEFLAGS_EXTENDED=y -CONFIG_SPLIT_PTLOCK_CPUS=4 -CONFIG_PHYS_ADDR_T_64BIT=y -CONFIG_ZONE_DMA_FLAG=1 -CONFIG_BOUNCE=y -CONFIG_VIRT_TO_BUS=y -CONFIG_UNEVICTABLE_LRU=y -# CONFIG_X86_CHECK_BIOS_CORRUPTION is not set -CONFIG_X86_RESERVE_LOW_64K=y -# CONFIG_MTRR is not set -# CONFIG_SECCOMP is not set -# CONFIG_HZ_100 is not set -CONFIG_HZ_250=y -# CONFIG_HZ_300 is not set -# CONFIG_HZ_1000 is not set -CONFIG_HZ=250 -# CONFIG_SCHED_HRTICK is not set -# CONFIG_KEXEC is not set -# CONFIG_CRASH_DUMP is not set -CONFIG_PHYSICAL_START=0x200000 -# CONFIG_RELOCATABLE is not set -CONFIG_PHYSICAL_ALIGN=0x200000 -# CONFIG_HOTPLUG_CPU is not set -# CONFIG_COMPAT_VDSO is not set -# CONFIG_CMDLINE_BOOL is not set -CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y - -# -# Power management and ACPI options -# -# CONFIG_PM is not set - -# -# CPU Frequency scaling -# -# CONFIG_CPU_FREQ is not set -# CONFIG_CPU_IDLE is not set - -# -# Memory power savings -# -# CONFIG_I7300_IDLE is not set - -# -# Bus options (PCI etc.) -# -CONFIG_PCI=y -CONFIG_PCI_DIRECT=y -CONFIG_PCI_DOMAINS=y -# CONFIG_PCIEPORTBUS is not set -CONFIG_ARCH_SUPPORTS_MSI=y -CONFIG_PCI_MSI=y -# CONFIG_PCI_LEGACY is not set -# CONFIG_PCI_STUB is not set -# CONFIG_HT_IRQ is not set -CONFIG_ISA_DMA_API=y -CONFIG_K8_NB=y -# CONFIG_PCCARD is not set -# CONFIG_HOTPLUG_PCI is not set - -# -# Executable file formats / Emulations -# -CONFIG_BINFMT_ELF=y -CONFIG_COMPAT_BINFMT_ELF=y -# CONFIG_HAVE_AOUT is not set -# CONFIG_BINFMT_MISC is not set -CONFIG_IA32_EMULATION=y -# CONFIG_IA32_AOUT is not set -CONFIG_COMPAT=y -CONFIG_COMPAT_FOR_U64_ALIGNMENT=y -CONFIG_SYSVIPC_COMPAT=y -CONFIG_NET=y - -# -# Networking options -# -CONFIG_COMPAT_NET_DEV_OPS=y -CONFIG_PACKET=y -CONFIG_PACKET_MMAP=y -CONFIG_UNIX=y -# CONFIG_NET_KEY is not set -CONFIG_INET=y -# CONFIG_IP_MULTICAST is not set -# CONFIG_IP_ADVANCED_ROUTER is not set -CONFIG_IP_FIB_HASH=y -# CONFIG_IP_PNP is not set -# CONFIG_NET_IPIP is not set -# CONFIG_NET_IPGRE is not set -# CONFIG_ARPD is not set -CONFIG_SYN_COOKIES=y -# CONFIG_INET_AH is not set -# CONFIG_INET_ESP is not set -# CONFIG_INET_IPCOMP is not set -# CONFIG_INET_XFRM_TUNNEL is not set -# CONFIG_INET_TUNNEL is not set -# CONFIG_INET_XFRM_MODE_TRANSPORT is not set -# CONFIG_INET_XFRM_MODE_TUNNEL is not set -# CONFIG_INET_XFRM_MODE_BEET is not set -# CONFIG_INET_LRO is not set -# CONFIG_INET_DIAG is not set -# CONFIG_TCP_CONG_ADVANCED is not set -CONFIG_TCP_CONG_CUBIC=y -CONFIG_DEFAULT_TCP_CONG="cubic" -# CONFIG_TCP_MD5SIG is not set -# CONFIG_IPV6 is not set -# CONFIG_NETWORK_SECMARK is not set -# CONFIG_NETFILTER is not set -# CONFIG_IP_DCCP is not set -# CONFIG_IP_SCTP is not set -# CONFIG_TIPC is not set -# CONFIG_ATM is not set -# CONFIG_BRIDGE is not set -# CONFIG_NET_DSA is not set -# CONFIG_VLAN_8021Q is not set -# CONFIG_DECNET is not set -# CONFIG_LLC2 is not set -# CONFIG_IPX is not set -# CONFIG_ATALK is not set -# CONFIG_X25 is not set -# CONFIG_LAPB is not set -# CONFIG_ECONET is not set -# CONFIG_WAN_ROUTER is not set -# CONFIG_NET_SCHED is not set -# CONFIG_DCB is not set - -# -# Network testing -# -# CONFIG_NET_PKTGEN is not set -# CONFIG_HAMRADIO is not set -# CONFIG_CAN is not set -# CONFIG_IRDA is not set -# CONFIG_BT is not set -# CONFIG_AF_RXRPC is not set -# CONFIG_PHONET is not set -# CONFIG_WIRELESS is not set -# CONFIG_WIMAX is not set -# CONFIG_RFKILL is not set -# CONFIG_NET_9P is not set - -# -# Device Drivers -# - -# -# Generic Driver Options -# -CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" -CONFIG_STANDALONE=y -CONFIG_PREVENT_FIRMWARE_BUILD=y -CONFIG_FW_LOADER=y -# CONFIG_FIRMWARE_IN_KERNEL is not set -CONFIG_EXTRA_FIRMWARE="" -# CONFIG_SYS_HYPERVISOR is not set -# CONFIG_CONNECTOR is not set -# CONFIG_MTD is not set -# CONFIG_PARPORT is not set -CONFIG_BLK_DEV=y -# CONFIG_BLK_DEV_FD is not set -# CONFIG_BLK_CPQ_DA is not set -# CONFIG_BLK_CPQ_CISS_DA is not set -# CONFIG_BLK_DEV_DAC960 is not set -# CONFIG_BLK_DEV_UMEM is not set -# CONFIG_BLK_DEV_COW_COMMON is not set -# CONFIG_BLK_DEV_LOOP is not set -# CONFIG_BLK_DEV_NBD is not set -# CONFIG_BLK_DEV_SX8 is not set -# CONFIG_BLK_DEV_RAM is not set -# CONFIG_CDROM_PKTCDVD is not set -# CONFIG_ATA_OVER_ETH is not set -# CONFIG_BLK_DEV_HD is not set -# CONFIG_MISC_DEVICES is not set -CONFIG_HAVE_IDE=y -# CONFIG_IDE is not set - -# -# SCSI device support -# -# CONFIG_RAID_ATTRS is not set -CONFIG_SCSI=y -CONFIG_SCSI_DMA=y -# CONFIG_SCSI_TGT is not set -# CONFIG_SCSI_NETLINK is not set -# CONFIG_SCSI_PROC_FS is not set - -# -# SCSI support type (disk, tape, CD-ROM) -# -# CONFIG_BLK_DEV_SD is not set -# CONFIG_CHR_DEV_ST is not set -# CONFIG_CHR_DEV_OSST is not set -# CONFIG_BLK_DEV_SR is not set -# CONFIG_CHR_DEV_SG is not set -# CONFIG_CHR_DEV_SCH is not set - -# -# Some SCSI devices (e.g. CD jukebox) support multiple LUNs -# -# CONFIG_SCSI_MULTI_LUN is not set -# CONFIG_SCSI_CONSTANTS is not set -# CONFIG_SCSI_LOGGING is not set -# CONFIG_SCSI_SCAN_ASYNC is not set -CONFIG_SCSI_WAIT_SCAN=m - -# -# SCSI Transports -# -# CONFIG_SCSI_SPI_ATTRS is not set -# CONFIG_SCSI_FC_ATTRS is not set -# CONFIG_SCSI_ISCSI_ATTRS is not set -# CONFIG_SCSI_SAS_LIBSAS is not set -# CONFIG_SCSI_SRP_ATTRS is not set -# CONFIG_SCSI_LOWLEVEL is not set -# CONFIG_SCSI_DH is not set -CONFIG_ATA=y -# CONFIG_ATA_NONSTANDARD is not set -# CONFIG_SATA_PMP is not set -# CONFIG_SATA_AHCI is not set -# CONFIG_SATA_SIL24 is not set -# CONFIG_ATA_SFF is not set -CONFIG_MD=y -# CONFIG_BLK_DEV_MD is not set -# CONFIG_BLK_DEV_DM is not set -# CONFIG_FUSION is not set - -# -# IEEE 1394 (FireWire) support -# - -# -# Enable only one of the two stacks, unless you know what you are doing -# -# CONFIG_FIREWIRE is not set -# CONFIG_IEEE1394 is not set -# CONFIG_I2O is not set -# CONFIG_MACINTOSH_DRIVERS is not set -CONFIG_NETDEVICES=y -# CONFIG_DUMMY is not set -# CONFIG_BONDING is not set -# CONFIG_MACVLAN is not set -# CONFIG_EQUALIZER is not set -# CONFIG_TUN is not set -# CONFIG_VETH is not set -# CONFIG_ARCNET is not set -# CONFIG_NET_ETHERNET is not set -# CONFIG_NETDEV_1000 is not set -# CONFIG_NETDEV_10000 is not set -# CONFIG_TR is not set - -# -# Wireless LAN -# -# CONFIG_WLAN_PRE80211 is not set -# CONFIG_WLAN_80211 is not set -# CONFIG_IWLWIFI_LEDS is not set - -# -# Enable WiMAX (Networking options) to see the WiMAX drivers -# -# CONFIG_WAN is not set -# CONFIG_FDDI is not set -# CONFIG_HIPPI is not set -# CONFIG_PPP is not set -# CONFIG_SLIP is not set -# CONFIG_NET_FC is not set -# CONFIG_NETCONSOLE is not set -# CONFIG_NETPOLL is not set -# CONFIG_NET_POLL_CONTROLLER is not set -# CONFIG_ISDN is not set -# CONFIG_PHONE is not set - -# -# Input device support -# -CONFIG_INPUT=y -# CONFIG_INPUT_FF_MEMLESS is not set -# CONFIG_INPUT_POLLDEV is not set - -# -# Userland interfaces -# -# CONFIG_INPUT_MOUSEDEV is not set -# CONFIG_INPUT_JOYDEV is not set -# CONFIG_INPUT_EVDEV is not set -# CONFIG_INPUT_EVBUG is not set - -# -# Input Device Drivers -# -CONFIG_INPUT_KEYBOARD=y -CONFIG_KEYBOARD_ATKBD=y -# CONFIG_KEYBOARD_SUNKBD is not set -# CONFIG_KEYBOARD_LKKBD is not set -# CONFIG_KEYBOARD_XTKBD is not set -# CONFIG_KEYBOARD_NEWTON is not set -# CONFIG_KEYBOARD_STOWAWAY is not set -CONFIG_INPUT_MOUSE=y -CONFIG_MOUSE_PS2=y -CONFIG_MOUSE_PS2_ALPS=y -CONFIG_MOUSE_PS2_LOGIPS2PP=y -CONFIG_MOUSE_PS2_SYNAPTICS=y -CONFIG_MOUSE_PS2_LIFEBOOK=y -CONFIG_MOUSE_PS2_TRACKPOINT=y -# CONFIG_MOUSE_PS2_ELANTECH is not set -# CONFIG_MOUSE_PS2_TOUCHKIT is not set -# CONFIG_MOUSE_SERIAL is not set -# CONFIG_MOUSE_APPLETOUCH is not set -# CONFIG_MOUSE_BCM5974 is not set -# CONFIG_MOUSE_VSXXXAA is not set -# CONFIG_INPUT_JOYSTICK is not set -# CONFIG_INPUT_TABLET is not set -# CONFIG_INPUT_TOUCHSCREEN is not set -# CONFIG_INPUT_MISC is not set - -# -# Hardware I/O ports -# -CONFIG_SERIO=y -CONFIG_SERIO_I8042=y -# CONFIG_SERIO_SERPORT is not set -# CONFIG_SERIO_CT82C710 is not set -# CONFIG_SERIO_PCIPS2 is not set -CONFIG_SERIO_LIBPS2=y -# CONFIG_SERIO_RAW is not set -# CONFIG_GAMEPORT is not set - -# -# Character devices -# -CONFIG_VT=y -# CONFIG_CONSOLE_TRANSLATIONS is not set -CONFIG_VT_CONSOLE=y -CONFIG_HW_CONSOLE=y -# CONFIG_VT_HW_CONSOLE_BINDING is not set -CONFIG_DEVKMEM=y -# CONFIG_SERIAL_NONSTANDARD is not set -# CONFIG_NOZOMI is not set - -# -# Serial drivers -# -CONFIG_SERIAL_8250=y -CONFIG_SERIAL_8250_CONSOLE=y -CONFIG_FIX_EARLYCON_MEM=y -CONFIG_SERIAL_8250_PCI=y -CONFIG_SERIAL_8250_NR_UARTS=4 -CONFIG_SERIAL_8250_RUNTIME_UARTS=4 -# CONFIG_SERIAL_8250_EXTENDED is not set - -# -# Non-8250 serial port support -# -CONFIG_SERIAL_CORE=y -CONFIG_SERIAL_CORE_CONSOLE=y -# CONFIG_SERIAL_JSM is not set -CONFIG_UNIX98_PTYS=y -# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set -# CONFIG_LEGACY_PTYS is not set -# CONFIG_IPMI_HANDLER is not set -# CONFIG_HW_RANDOM is not set -# CONFIG_NVRAM is not set -# CONFIG_R3964 is not set -# CONFIG_APPLICOM is not set -# CONFIG_MWAVE is not set -# CONFIG_PC8736x_GPIO is not set -# CONFIG_RAW_DRIVER is not set -# CONFIG_HANGCHECK_TIMER is not set -# CONFIG_TCG_TPM is not set -# CONFIG_TELCLOCK is not set -CONFIG_DEVPORT=y -# CONFIG_I2C is not set -# CONFIG_SPI is not set -CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y -# CONFIG_GPIOLIB is not set -# CONFIG_W1 is not set -# CONFIG_POWER_SUPPLY is not set -# CONFIG_HWMON is not set -# CONFIG_THERMAL is not set -# CONFIG_THERMAL_HWMON is not set -# CONFIG_WATCHDOG is not set -CONFIG_SSB_POSSIBLE=y - -# -# Sonics Silicon Backplane -# -# CONFIG_SSB is not set - -# -# Multifunction device drivers -# -# CONFIG_MFD_CORE is not set -# CONFIG_MFD_SM501 is not set -# CONFIG_HTC_PASIC3 is not set -# CONFIG_MFD_TMIO is not set -# CONFIG_REGULATOR is not set - -# -# Multimedia devices -# - -# -# Multimedia core support -# -# CONFIG_VIDEO_DEV is not set -# CONFIG_DVB_CORE is not set -# CONFIG_VIDEO_MEDIA is not set - -# -# Multimedia drivers -# -# CONFIG_DAB is not set - -# -# Graphics support -# -CONFIG_AGP=y -CONFIG_AGP_AMD64=y -# CONFIG_AGP_INTEL is not set -# CONFIG_AGP_SIS is not set -# CONFIG_AGP_VIA is not set -# CONFIG_DRM is not set -# CONFIG_VGASTATE is not set -# CONFIG_VIDEO_OUTPUT_CONTROL is not set -# CONFIG_FB is not set -# CONFIG_BACKLIGHT_LCD_SUPPORT is not set - -# -# Display device support -# -# CONFIG_DISPLAY_SUPPORT is not set - -# -# Console display driver support -# -CONFIG_VGA_CONSOLE=y -CONFIG_VGACON_SOFT_SCROLLBACK=y -CONFIG_VGACON_SOFT_SCROLLBACK_SIZE=512 -CONFIG_DUMMY_CONSOLE=y -# CONFIG_SOUND is not set -CONFIG_HID_SUPPORT=y -CONFIG_HID=y -# CONFIG_HID_DEBUG is not set -# CONFIG_HIDRAW is not set -# CONFIG_HID_PID is not set - -# -# Special HID drivers -# -CONFIG_HID_COMPAT=y -CONFIG_USB_SUPPORT=y -CONFIG_USB_ARCH_HAS_HCD=y -CONFIG_USB_ARCH_HAS_OHCI=y -CONFIG_USB_ARCH_HAS_EHCI=y -# CONFIG_USB is not set -# CONFIG_USB_OTG_WHITELIST is not set -# CONFIG_USB_OTG_BLACKLIST_HUB is not set - -# -# Enable Host or Gadget support to see Inventra options -# - -# -# NOTE: USB_STORAGE depends on SCSI but BLK_DEV_SD may also be needed; -# -# CONFIG_USB_GADGET is not set - -# -# OTG and related infrastructure -# -# CONFIG_UWB is not set -# CONFIG_MMC is not set -# CONFIG_MEMSTICK is not set -# CONFIG_NEW_LEDS is not set -# CONFIG_ACCESSIBILITY is not set -# CONFIG_INFINIBAND is not set -# CONFIG_EDAC is not set -CONFIG_RTC_LIB=y -CONFIG_RTC_CLASS=y -CONFIG_RTC_HCTOSYS=y -CONFIG_RTC_HCTOSYS_DEVICE="rtc0" -# CONFIG_RTC_DEBUG is not set - -# -# RTC interfaces -# -CONFIG_RTC_INTF_SYSFS=y -CONFIG_RTC_INTF_PROC=y -CONFIG_RTC_INTF_DEV=y -# CONFIG_RTC_INTF_DEV_UIE_EMUL is not set -# CONFIG_RTC_DRV_TEST is not set - -# -# SPI RTC drivers -# - -# -# Platform RTC drivers -# -CONFIG_RTC_DRV_CMOS=y -# CONFIG_RTC_DRV_DS1286 is not set -# CONFIG_RTC_DRV_DS1511 is not set -# CONFIG_RTC_DRV_DS1553 is not set -# CONFIG_RTC_DRV_DS1742 is not set -# CONFIG_RTC_DRV_STK17TA8 is not set -# CONFIG_RTC_DRV_M48T86 is not set -# CONFIG_RTC_DRV_M48T35 is not set -# CONFIG_RTC_DRV_M48T59 is not set -# CONFIG_RTC_DRV_BQ4802 is not set -# CONFIG_RTC_DRV_V3020 is not set - -# -# on-CPU RTC drivers -# -# CONFIG_DMADEVICES is not set -# CONFIG_UIO is not set -# CONFIG_STAGING is not set -CONFIG_X86_PLATFORM_DEVICES=y - -# -# Firmware Drivers -# -# CONFIG_EDD is not set -# CONFIG_FIRMWARE_MEMMAP is not set -# CONFIG_DELL_RBU is not set -# CONFIG_DCDBAS is not set -# CONFIG_DMIID is not set -# CONFIG_ISCSI_IBFT_FIND is not set - -# -# File systems -# -# CONFIG_EXT2_FS is not set -# CONFIG_EXT3_FS is not set -# CONFIG_EXT4_FS is not set -# CONFIG_REISERFS_FS is not set -# CONFIG_JFS_FS is not set -# CONFIG_FS_POSIX_ACL is not set -CONFIG_FILE_LOCKING=y -# CONFIG_XFS_FS is not set -# CONFIG_GFS2_FS is not set -# CONFIG_OCFS2_FS is not set -# CONFIG_BTRFS_FS is not set -# CONFIG_DNOTIFY is not set -# CONFIG_INOTIFY is not set -# CONFIG_QUOTA is not set -# CONFIG_AUTOFS_FS is not set -# CONFIG_AUTOFS4_FS is not set -# CONFIG_FUSE_FS is not set - -# -# CD-ROM/DVD Filesystems -# -# CONFIG_ISO9660_FS is not set -# CONFIG_UDF_FS is not set - -# -# DOS/FAT/NT Filesystems -# -# CONFIG_MSDOS_FS is not set -# CONFIG_VFAT_FS is not set -# CONFIG_NTFS_FS is not set - -# -# Pseudo filesystems -# -CONFIG_PROC_FS=y -# CONFIG_PROC_KCORE is not set -CONFIG_PROC_SYSCTL=y -# CONFIG_PROC_PAGE_MONITOR is not set -CONFIG_SYSFS=y -CONFIG_TMPFS=y -# CONFIG_TMPFS_POSIX_ACL is not set -# CONFIG_HUGETLBFS is not set -# CONFIG_HUGETLB_PAGE is not set -CONFIG_CONFIGFS_FS=y -CONFIG_MISC_FILESYSTEMS=y -# CONFIG_ADFS_FS is not set -# CONFIG_AFFS_FS is not set -# CONFIG_HFS_FS is not set -# CONFIG_HFSPLUS_FS is not set -# CONFIG_BEFS_FS is not set -# CONFIG_BFS_FS is not set -# CONFIG_EFS_FS is not set -# CONFIG_CRAMFS is not set -# CONFIG_SQUASHFS is not set -# CONFIG_VXFS_FS is not set -# CONFIG_MINIX_FS is not set -# CONFIG_OMFS_FS is not set -# CONFIG_HPFS_FS is not set -# CONFIG_QNX4FS_FS is not set -# CONFIG_ROMFS_FS is not set -# CONFIG_SYSV_FS is not set -# CONFIG_UFS_FS is not set -CONFIG_NETWORK_FILESYSTEMS=y -# CONFIG_NFS_FS is not set -# CONFIG_NFSD is not set -# CONFIG_SMB_FS is not set -# CONFIG_CIFS is not set -# CONFIG_NCP_FS is not set -# CONFIG_CODA_FS is not set -# CONFIG_AFS_FS is not set - -# -# Partition Types -# -# CONFIG_PARTITION_ADVANCED is not set -CONFIG_MSDOS_PARTITION=y -# CONFIG_NLS is not set -# CONFIG_DLM is not set - -# -# Kernel hacking -# -CONFIG_TRACE_IRQFLAGS_SUPPORT=y -CONFIG_PRINTK_TIME=y -# CONFIG_ENABLE_WARN_DEPRECATED is not set -# CONFIG_ENABLE_MUST_CHECK is not set -CONFIG_FRAME_WARN=1024 -CONFIG_MAGIC_SYSRQ=y -# CONFIG_UNUSED_SYMBOLS is not set -# CONFIG_DEBUG_FS is not set -# CONFIG_HEADERS_CHECK is not set -# CONFIG_DEBUG_KERNEL is not set -# CONFIG_DEBUG_BUGVERBOSE is not set -# CONFIG_DEBUG_MEMORY_INIT is not set -CONFIG_ARCH_WANT_FRAME_POINTERS=y -# CONFIG_FRAME_POINTER is not set -# CONFIG_RCU_CPU_STALL_DETECTOR is not set -# CONFIG_LATENCYTOP is not set -# CONFIG_SYSCTL_SYSCALL_CHECK is not set -CONFIG_USER_STACKTRACE_SUPPORT=y -CONFIG_HAVE_FUNCTION_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y -CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y -CONFIG_HAVE_DYNAMIC_FTRACE=y -CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y - -# -# Tracers -# -# CONFIG_SYSPROF_TRACER is not set -# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set -# CONFIG_DYNAMIC_PRINTK_DEBUG is not set -# CONFIG_SAMPLES is not set -CONFIG_HAVE_ARCH_KGDB=y -# CONFIG_STRICT_DEVMEM is not set -# CONFIG_X86_VERBOSE_BOOTUP is not set -# CONFIG_EARLY_PRINTK is not set -CONFIG_HAVE_MMIOTRACE_SUPPORT=y -CONFIG_IO_DELAY_TYPE_0X80=0 -CONFIG_IO_DELAY_TYPE_0XED=1 -CONFIG_IO_DELAY_TYPE_UDELAY=2 -CONFIG_IO_DELAY_TYPE_NONE=3 -CONFIG_IO_DELAY_0X80=y -# CONFIG_IO_DELAY_0XED is not set -# CONFIG_IO_DELAY_UDELAY is not set -# CONFIG_IO_DELAY_NONE is not set -CONFIG_DEFAULT_IO_DELAY_TYPE=0 -# CONFIG_OPTIMIZE_INLINING is not set - -# -# Security options -# -# CONFIG_KEYS is not set -# CONFIG_SECURITY is not set -# CONFIG_SECURITYFS is not set -# CONFIG_SECURITY_FILE_CAPABILITIES is not set -CONFIG_CRYPTO=y - -# -# Crypto core or helper -# -# CONFIG_CRYPTO_FIPS is not set -CONFIG_CRYPTO_ALGAPI=m -CONFIG_CRYPTO_ALGAPI2=m -CONFIG_CRYPTO_AEAD2=m -CONFIG_CRYPTO_BLKCIPHER=m -CONFIG_CRYPTO_BLKCIPHER2=m -CONFIG_CRYPTO_HASH=m -CONFIG_CRYPTO_HASH2=m -CONFIG_CRYPTO_RNG2=m -CONFIG_CRYPTO_MANAGER=m -CONFIG_CRYPTO_MANAGER2=m -# CONFIG_CRYPTO_GF128MUL is not set -# CONFIG_CRYPTO_NULL is not set -# CONFIG_CRYPTO_CRYPTD is not set -# CONFIG_CRYPTO_AUTHENC is not set -# CONFIG_CRYPTO_TEST is not set - -# -# Authenticated Encryption with Associated Data -# -# CONFIG_CRYPTO_CCM is not set -# CONFIG_CRYPTO_GCM is not set -# CONFIG_CRYPTO_SEQIV is not set - -# -# Block modes -# -CONFIG_CRYPTO_CBC=m -# CONFIG_CRYPTO_CTR is not set -# CONFIG_CRYPTO_CTS is not set -# CONFIG_CRYPTO_ECB is not set -# CONFIG_CRYPTO_LRW is not set -# CONFIG_CRYPTO_PCBC is not set -# CONFIG_CRYPTO_XTS is not set - -# -# Hash modes -# -# CONFIG_CRYPTO_HMAC is not set -# CONFIG_CRYPTO_XCBC is not set - -# -# Digest -# -# CONFIG_CRYPTO_CRC32C is not set -# CONFIG_CRYPTO_CRC32C_INTEL is not set -# CONFIG_CRYPTO_MD4 is not set -# CONFIG_CRYPTO_MD5 is not set -# CONFIG_CRYPTO_MICHAEL_MIC is not set -# CONFIG_CRYPTO_RMD128 is not set -# CONFIG_CRYPTO_RMD160 is not set -# CONFIG_CRYPTO_RMD256 is not set -# CONFIG_CRYPTO_RMD320 is not set -# CONFIG_CRYPTO_SHA1 is not set -CONFIG_CRYPTO_SHA256=m -# CONFIG_CRYPTO_SHA512 is not set -# CONFIG_CRYPTO_TGR192 is not set -# CONFIG_CRYPTO_WP512 is not set - -# -# Ciphers -# -CONFIG_CRYPTO_AES=m -# CONFIG_CRYPTO_AES_X86_64 is not set -# CONFIG_CRYPTO_ANUBIS is not set -# CONFIG_CRYPTO_ARC4 is not set -# CONFIG_CRYPTO_BLOWFISH is not set -# CONFIG_CRYPTO_CAMELLIA is not set -# CONFIG_CRYPTO_CAST5 is not set -# CONFIG_CRYPTO_CAST6 is not set -# CONFIG_CRYPTO_DES is not set -# CONFIG_CRYPTO_FCRYPT is not set -# CONFIG_CRYPTO_KHAZAD is not set -# CONFIG_CRYPTO_SALSA20 is not set -# CONFIG_CRYPTO_SALSA20_X86_64 is not set -# CONFIG_CRYPTO_SEED is not set -# CONFIG_CRYPTO_SERPENT is not set -# CONFIG_CRYPTO_TEA is not set -# CONFIG_CRYPTO_TWOFISH is not set -# CONFIG_CRYPTO_TWOFISH_X86_64 is not set - -# -# Compression -# -# CONFIG_CRYPTO_DEFLATE is not set -# CONFIG_CRYPTO_LZO is not set - -# -# Random Number Generation -# -# CONFIG_CRYPTO_ANSI_CPRNG is not set -# CONFIG_CRYPTO_HW is not set - -# -# OCF Configuration -# -# CONFIG_OCF_OCF is not set -CONFIG_HAVE_KVM=y -# CONFIG_VIRTUALIZATION is not set - -# -# Library routines -# -CONFIG_GENERIC_FIND_FIRST_BIT=y -CONFIG_GENERIC_FIND_NEXT_BIT=y -CONFIG_GENERIC_FIND_LAST_BIT=y -# CONFIG_CRC_CCITT is not set -# CONFIG_CRC16 is not set -# CONFIG_CRC_T10DIF is not set -# CONFIG_CRC_ITU_T is not set -# CONFIG_CRC32 is not set -# CONFIG_CRC7 is not set -# CONFIG_LIBCRC32C is not set -CONFIG_PLIST=y -CONFIG_HAS_IOMEM=y -CONFIG_HAS_IOPORT=y -CONFIG_HAS_DMA=y diff --git a/target/native/target.mk b/target/native/target.mk deleted file mode 100644 index 0d32eb1bd..000000000 --- a/target/native/target.mk +++ /dev/null @@ -1,14 +0,0 @@ -include $(TOPDIR)/mk/kernel-ver.mk -ARCH:= $(shell uname -m|sed -e "s/i.*86/x86/" -e "s/_\?64//") -CPU_ARCH:= $(shell gcc -dumpmachine | sed -e s'/-.*//' \ - -e 's/sparc.*/sparc/' \ - -e 's/arm.*/arm/g' \ - -e 's/m68k.*/m68k/' \ - -e 's/ppc/powerpc/g' \ - -e 's/sh[234]/sh/' \ - -e 's/mips-.*/mips/' \ - -e 's/mipsel-.*/mipsel/' \ - -e 's/i[3-9]86/i686/' \ - ) -TARGET_OPTIMIZATION:= -Os -pipe -TARGET_CFLAGS_ARCH:= -march=native diff --git a/target/native/uclibc.config b/target/native/uclibc.config deleted file mode 100644 index 23b587ba5..000000000 --- a/target/native/uclibc.config +++ /dev/null @@ -1,257 +0,0 @@ -# -# Automatically generated make config: don't edit -# Version: 0.9.32-rc1 -# Mon Dec 27 23:12:21 2010 -# -# TARGET_alpha is not set -# TARGET_arm is not set -# TARGET_avr32 is not set -# TARGET_bfin is not set -# TARGET_cris is not set -# TARGET_e1 is not set -# TARGET_frv is not set -# TARGET_h8300 is not set -# TARGET_hppa is not set -TARGET_i386=y -# TARGET_i960 is not set -# TARGET_ia64 is not set -# TARGET_m68k is not set -# TARGET_microblaze is not set -# TARGET_mips is not set -# TARGET_nios is not set -# TARGET_nios2 is not set -# TARGET_powerpc is not set -# TARGET_sh is not set -# TARGET_sh64 is not set -# TARGET_sparc is not set -# TARGET_v850 is not set -# TARGET_vax is not set -# TARGET_x86_64 is not set -# TARGET_xtensa is not set - -# -# Target Architecture Features and Options -# -TARGET_ARCH="i386" -FORCE_OPTIONS_FOR_ARCH=y -# CONFIG_GENERIC_386 is not set -# CONFIG_386 is not set -CONFIG_486=y -# CONFIG_586 is not set -# CONFIG_586MMX is not set -# CONFIG_686 is not set -# CONFIG_PENTIUMII is not set -# CONFIG_PENTIUMIII is not set -# CONFIG_PENTIUM4 is not set -# CONFIG_K6 is not set -# CONFIG_K7 is not set -# CONFIG_ELAN is not set -# CONFIG_CRUSOE is not set -# CONFIG_WINCHIPC6 is not set -# CONFIG_WINCHIP2 is not set -# CONFIG_CYRIXIII is not set -# CONFIG_NEHEMIAH is not set -TARGET_SUBARCH="i486" - -# -# Using ELF file format -# -ARCH_LITTLE_ENDIAN=y - -# -# Using Little Endian -# -ARCH_HAS_MMU=y -ARCH_USE_MMU=y -UCLIBC_HAS_FLOATS=y -UCLIBC_HAS_FPU=y -DO_C99_MATH=y -# DO_XSI_MATH is not set -UCLIBC_HAS_FENV=y -UCLIBC_HAS_LONG_DOUBLE_MATH=y -KERNEL_HEADERS="" -HAVE_DOT_CONFIG=y - -# -# General Library Settings -# -# HAVE_NO_PIC is not set -DOPIC=y -# ARCH_HAS_NO_SHARED is not set -# ARCH_HAS_NO_LDSO is not set -HAVE_SHARED=y -# FORCE_SHAREABLE_TEXT_SEGMENTS is not set -LDSO_LDD_SUPPORT=y -LDSO_CACHE_SUPPORT=y -# LDSO_PRELOAD_ENV_SUPPORT is not set -# LDSO_PRELOAD_FILE_SUPPORT is not set -LDSO_BASE_FILENAME="ld.so" -# UCLIBC_STATIC_LDCONFIG is not set -LDSO_RUNPATH=y -LDSO_SEARCH_INTERP_PATH=y -UCLIBC_CTOR_DTOR=y -# LDSO_GNU_HASH_SUPPORT is not set -# HAS_NO_THREADS is not set -# LINUXTHREADS_OLD is not set -# LINUXTHREADS_NEW is not set -UCLIBC_HAS_THREADS_NATIVE=y -UCLIBC_HAS_THREADS=y -UCLIBC_HAS_TLS=y -# PTHREADS_DEBUG_SUPPORT is not set -UCLIBC_HAS_SYSLOG=y -UCLIBC_HAS_LFS=y -# MALLOC is not set -# MALLOC_SIMPLE is not set -MALLOC_STANDARD=y -MALLOC_GLIBC_COMPAT=y -UCLIBC_DYNAMIC_ATEXIT=y -COMPAT_ATEXIT=y -UCLIBC_SUSV3_LEGACY=y -# UCLIBC_SUSV3_LEGACY_MACROS is not set -UCLIBC_SUSV4_LEGACY=y -# UCLIBC_HAS_STUBS is not set -UCLIBC_HAS_SHADOW=y -UCLIBC_HAS_PROGRAM_INVOCATION_NAME=y -UCLIBC_HAS___PROGNAME=y -UCLIBC_HAS_PTY=y -ASSUME_DEVPTS=y -UNIX98PTY_ONLY=y -UCLIBC_HAS_GETPT=y -UCLIBC_HAS_LIBUTIL=y -UCLIBC_HAS_TM_EXTENSIONS=y -UCLIBC_HAS_TZ_CACHING=y -UCLIBC_HAS_TZ_FILE=y -UCLIBC_HAS_TZ_FILE_READ_MANY=y -UCLIBC_TZ_FILE_PATH="/etc/TZ" -UCLIBC_FALLBACK_TO_ETC_LOCALTIME=y - -# -# Advanced Library Settings -# -UCLIBC_PWD_BUFFER_SIZE=256 -UCLIBC_GRP_BUFFER_SIZE=256 - -# -# Support various families of functions -# -# UCLIBC_LINUX_MODULE_24 is not set -UCLIBC_LINUX_SPECIFIC=y -UCLIBC_HAS_GNU_ERROR=y -UCLIBC_BSD_SPECIFIC=y -UCLIBC_HAS_BSD_ERR=y -# UCLIBC_HAS_OBSOLETE_BSD_SIGNAL is not set -# UCLIBC_HAS_OBSOLETE_SYSV_SIGNAL is not set -# UCLIBC_NTP_LEGACY is not set -# UCLIBC_SV4_DEPRECATED is not set -UCLIBC_HAS_REALTIME=y -# UCLIBC_HAS_ADVANCED_REALTIME is not set -UCLIBC_HAS_EPOLL=y -# UCLIBC_HAS_XATTR is not set -# UCLIBC_HAS_PROFILING is not set -UCLIBC_HAS_CRYPT_IMPL=y -UCLIBC_HAS_CRYPT=y -UCLIBC_HAS_NETWORK_SUPPORT=y -UCLIBC_HAS_SOCKET=y -UCLIBC_HAS_IPV4=y -UCLIBC_HAS_IPV6=y -UCLIBC_HAS_RPC=y -UCLIBC_HAS_FULL_RPC=y -UCLIBC_HAS_REENTRANT_RPC=y -UCLIBC_USE_NETLINK=y -UCLIBC_SUPPORT_AI_ADDRCONFIG=y -UCLIBC_HAS_BSD_RES_CLOSE=y -UCLIBC_HAS_COMPAT_RES_STATE=y -# UCLIBC_HAS_EXTRA_COMPAT_RES_STATE is not set -UCLIBC_HAS_LIBRESOLV_STUB=y -UCLIBC_HAS_LIBNSL_STUB=y - -# -# String and Stdio Support -# -UCLIBC_HAS_STRING_GENERIC_OPT=y -UCLIBC_HAS_STRING_ARCH_OPT=y -UCLIBC_HAS_CTYPE_TABLES=y -UCLIBC_HAS_CTYPE_SIGNED=y -# UCLIBC_HAS_CTYPE_UNSAFE is not set -UCLIBC_HAS_CTYPE_CHECKED=y -# UCLIBC_HAS_CTYPE_ENFORCED is not set -UCLIBC_HAS_WCHAR=y -# UCLIBC_HAS_LOCALE is not set -UCLIBC_HAS_HEXADECIMAL_FLOATS=y -UCLIBC_HAS_GLIBC_CUSTOM_PRINTF=y -UCLIBC_PRINTF_SCANF_POSITIONAL_ARGS=9 -UCLIBC_HAS_SCANF_GLIBC_A_FLAG=y -# UCLIBC_HAS_STDIO_BUFSIZ_NONE is not set -# UCLIBC_HAS_STDIO_BUFSIZ_256 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_512 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_1024 is not set -# UCLIBC_HAS_STDIO_BUFSIZ_2048 is not set -UCLIBC_HAS_STDIO_BUFSIZ_4096=y -# UCLIBC_HAS_STDIO_BUFSIZ_8192 is not set -UCLIBC_HAS_STDIO_BUILTIN_BUFFER_NONE=y -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_4 is not set -# UCLIBC_HAS_STDIO_BUILTIN_BUFFER_8 is not set -# UCLIBC_HAS_STDIO_SHUTDOWN_ON_ABORT is not set -UCLIBC_HAS_STDIO_GETC_MACRO=y -UCLIBC_HAS_STDIO_PUTC_MACRO=y -UCLIBC_HAS_STDIO_AUTO_RW_TRANSITION=y -# UCLIBC_HAS_FOPEN_LARGEFILE_MODE is not set -UCLIBC_HAS_FOPEN_EXCLUSIVE_MODE=y -UCLIBC_HAS_GLIBC_CUSTOM_STREAMS=y -UCLIBC_HAS_PRINTF_M_SPEC=y -UCLIBC_HAS_ERRNO_MESSAGES=y -# UCLIBC_HAS_SYS_ERRLIST is not set -UCLIBC_HAS_SIGNUM_MESSAGES=y -# UCLIBC_HAS_SYS_SIGLIST is not set -UCLIBC_HAS_GNU_GETOPT=y -UCLIBC_HAS_STDIO_FUTEXES=y -UCLIBC_HAS_GNU_GETSUBOPT=y - -# -# Big and Tall -# -UCLIBC_HAS_REGEX=y -# UCLIBC_HAS_REGEX_OLD is not set -UCLIBC_HAS_FNMATCH=y -# UCLIBC_HAS_FNMATCH_OLD is not set -UCLIBC_HAS_WORDEXP=y -UCLIBC_HAS_NFTW=y -UCLIBC_HAS_FTW=y -UCLIBC_HAS_GLOB=y -UCLIBC_HAS_GNU_GLOB=y -# UCLIBC_HAS_UTMPX is not set - -# -# Library Installation Options -# -RUNTIME_PREFIX="/" -DEVEL_PREFIX="/usr/" -MULTILIB_DIR="lib" -HARDWIRED_ABSPATH=y - -# -# Security options -# -# UCLIBC_BUILD_PIE is not set -UCLIBC_HAS_ARC4RANDOM=y -# HAVE_NO_SSP is not set -# UCLIBC_HAS_SSP is not set -UCLIBC_BUILD_RELRO=y -# UCLIBC_BUILD_NOW is not set -UCLIBC_BUILD_NOEXECSTACK=y - -# -# uClibc development/debugging options -# -CROSS_COMPILER_PREFIX="" -UCLIBC_EXTRA_CFLAGS="" -# DODEBUG is not set -DOSTRIP=y -# DOASSERTS is not set -# SUPPORT_LD_DEBUG is not set -# SUPPORT_LD_DEBUG_EARLY is not set -# UCLIBC_MALLOC_DEBUGGING is not set -WARNINGS="-Wall" -EXTRA_WARNINGS=y -# DOMULTI is not set -# UCLIBC_MJN3_ONLY is not set diff --git a/target/packages/pkg-available/development b/target/packages/pkg-available/development index 8ac207205..6a883ebf2 100644 --- a/target/packages/pkg-available/development +++ b/target/packages/pkg-available/development @@ -34,7 +34,7 @@ config ADK_PKG_DEVELOPMENT select ADK_PACKAGE_GDB select ADK_PACKAGE_PARTED select ADK_PACKAGE_SFDISK - select ADK_APCKAGE_MKE2FS + select ADK_PACKAGE_MKE2FS select ADK_PACKAGE_DOSFSTOOLS help After bootstrapping a Linux system you might want to diff --git a/target/packages/pkg-available/mpdbox b/target/packages/pkg-available/mpdbox index b1edc40e1..eab49bc8a 100644 --- a/target/packages/pkg-available/mpdbox +++ b/target/packages/pkg-available/mpdbox @@ -3,8 +3,9 @@ config ADK_PKG_MPDBOX default n select ADK_PACKAGE_MPDBOX select ADK_PACKAGE_CIFS_UTILS - select ADK_PACKAGE_NFS_UTILS if ADK_TARGET_LIB_GLIBC - select ADK_PACKAGE_NFS_UTILS_CLIENT if ADK_TARGET_LIB_GLIBC + select ADK_PACKAGE_NFS_UTILS + select ADK_PACKAGE_NFS_UTILS_CLIENT + select ADK_PACKAGE_NTFS_3G select ADK_PACKAGE_LIBMPDCLIENT select ADK_PACKAGE_MPC select ADK_PACKAGE_MPD @@ -22,7 +23,6 @@ config ADK_PKG_MPDBOX select ADK_PACKAGE_MPD_WITH_CURL select ADK_PACKAGE_MPD_WITH_SAMPLERATE select ADK_PACKAGE_MPD_WITH_HTTPD - select ADK_PACKAGE_CPUFREQUTILS select ADK_PACKAGE_FILE select ADK_PACKAGE_HTOP select ADK_PACKAGE_DROPBEAR diff --git a/target/packages/pkg-available/test b/target/packages/pkg-available/test index 6560dc8a1..5ffe80949 100644 --- a/target/packages/pkg-available/test +++ b/target/packages/pkg-available/test @@ -1,10 +1,17 @@ config ADK_PKG_TEST bool "Compile a ADK test framework system" - default n select ADK_PACKAGE_ADK_TEST_TOOLS select ADK_PACKAGE_STRACE select ADK_PACKAGE_SOCAT select ADK_PACKAGE_MAKE + select ADK_PACKAGE_FILE + select ADK_KERNEL_BLK_DEV_INITRD + select ADK_KERNEL_COMP_XZ + select ADK_KERNEL_INITRAMFS_COMPRESSION_XZ + select ADK_SIMPLE_NETWORK_CONFIG + select ADK_KPACKAGE_KMOD_IPV6 + select ADK_TARGET_PACKAGE_TXZ + default n help Package collection used to build adk-test-framework root filesystem. diff --git a/target/ppc/Makefile b/target/ppc/Makefile index 3085e98cc..aae63f1c0 100644 --- a/target/ppc/Makefile +++ b/target/ppc/Makefile @@ -22,6 +22,12 @@ ifeq ($(ADK_HARDWARE_QEMU),y) @echo 'qemu-system-ppc -M mac99 -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${CPU_ARCH}.img' endif endif +ifeq ($(ADK_TARGET_FS),initramfsarchive) +imageinstall: $(FW_DIR)/$(ROOTFSUSERTARBALL) + @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)" +endif ifeq ($(ADK_TARGET_FS),initramfs) imageinstall: $(FW_DIR)/$(INITRAMFS) @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) diff --git a/target/ppc/kernel/qemu-ppc b/target/ppc/kernel/qemu-ppc index 08dd506b5..f45511601 100644 --- a/target/ppc/kernel/qemu-ppc +++ b/target/ppc/kernel/qemu-ppc @@ -26,21 +26,10 @@ CONFIG_PCI_DOMAINS=y CONFIG_PCI_SYSCALL=y CONFIG_DTC=y CONFIG_OF=y -CONFIG_SCSI=y -CONFIG_SCSI_DMA=y -CONFIG_BLK_DEV_SD=y -CONFIG_ATA=y -CONFIG_SATA_PMP=y -CONFIG_ATA_SFF=y -CONFIG_ATA_BMDMA=y -CONFIG_PATA_MACIO=y CONFIG_MACINTOSH_DRIVERS=y CONFIG_ADB=y CONFIG_ADB_CUDA=y CONFIG_INPUT_ADBHID=y -CONFIG_NETDEVICES=y -CONFIG_NET_CORE=y -CONFIG_ETHERNET=y CONFIG_NET_VENDOR_NATSEMI=y CONFIG_NET_VENDOR_8390=y CONFIG_NE2K_PCI=y diff --git a/target/ppc/sys-available/qemu-ppc b/target/ppc/sys-available/qemu-ppc index daf1fedfa..223e0213b 100644 --- a/target/ppc/sys-available/qemu-ppc +++ b/target/ppc/sys-available/qemu-ppc @@ -4,9 +4,6 @@ config ADK_TARGET_SYSTEM_QEMU_PPC select ADK_qemu_ppc select ADK_CPU_PPC select ADK_HARDWARE_QEMU - select ADK_TARGET_WITH_VGA - select ADK_TARGET_WITH_INPUT - select ADK_USE_KERNEL_MINICONFIG help Support for Qemu Emulator (PPC). diff --git a/target/ppc/sys-available/toolchain-ppc b/target/ppc/sys-available/toolchain-ppc index 54e35e6a5..dd432ecda 100644 --- a/target/ppc/sys-available/toolchain-ppc +++ b/target/ppc/sys-available/toolchain-ppc @@ -4,7 +4,7 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_PPC select ADK_toolchain_ppc select ADK_CPU_PPC select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help Build a ppc toolchain. diff --git a/target/ppc/target.mk b/target/ppc/target.mk index bd6624fe7..47ae3121f 100644 --- a/target/ppc/target.mk +++ b/target/ppc/target.mk @@ -1,5 +1,4 @@ include $(TOPDIR)/mk/kernel-ver.mk ARCH:= powerpc CPU_ARCH:= ppc -TARGET_OPTIMIZATION:= -Os -pipe TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS) -Wl,--secure-plt diff --git a/target/ppc64/Makefile b/target/ppc64/Makefile index 2bc6e66cb..6ee949a09 100644 --- a/target/ppc64/Makefile +++ b/target/ppc64/Makefile @@ -22,6 +22,12 @@ ifeq ($(ADK_HARDWARE_QEMU),y) @echo 'qemu-system-ppc64 -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${CPU_ARCH}.img' endif endif +ifeq ($(ADK_TARGET_FS),initramfsarchive) +imageinstall: $(FW_DIR)/$(ROOTFSUSERTARBALL) + @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)" +endif ifeq ($(ADK_TARGET_FS),initramfs) imageinstall: $(FW_DIR)/$(INITRAMFS) @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) diff --git a/target/ppc64/kernel/qemu-ppc64 b/target/ppc64/kernel/qemu-ppc64 index a9e1abecb..ebf952146 100644 --- a/target/ppc64/kernel/qemu-ppc64 +++ b/target/ppc64/kernel/qemu-ppc64 @@ -8,7 +8,6 @@ CONFIG_PPC_FPU=y CONFIG_PPC_STD_MMU=y CONFIG_PPC_STD_MMU_64=y CONFIG_PPC_DOORBELL=y -CONFIG_64BIT=y CONFIG_PPC_OF=y CONFIG_PPC_UDBG_16550=y CONFIG_PPC_PSERIES=y @@ -28,17 +27,8 @@ CONFIG_PCI_SYSCALL=y CONFIG_PCI_MSI=y CONFIG_DTC=y CONFIG_OF=y -CONFIG_BLOCK=y -CONFIG_SCSI=y -CONFIG_SCSI_LOWLEVEL=y -CONFIG_SCSI_DMA=y -CONFIG_BLK_DEV_SD=y -CONFIG_SCSI_IBMVSCSI=y -CONFIG_NETDEVICES=y -CONFIG_ETHERNET=y CONFIG_NET_VENDOR_IBM=y CONFIG_IBMVETH=y -CONFIG_NET_CORE=y CONFIG_HVC_DRIVER=y CONFIG_HVC_IRQ=y CONFIG_HVC_CONSOLE=y diff --git a/target/ppc64/sys-available/qemu-ppc64 b/target/ppc64/sys-available/qemu-ppc64 index 4dbd4cabd..ffc77a388 100644 --- a/target/ppc64/sys-available/qemu-ppc64 +++ b/target/ppc64/sys-available/qemu-ppc64 @@ -3,10 +3,8 @@ config ADK_TARGET_SYSTEM_QEMU_PPC64 select ADK_ppc64 select ADK_qemu_ppc64 select ADK_CPU_PPC64 + select ADK_LINUX_64 select ADK_HARDWARE_QEMU - select ADK_TARGET_WITH_VGA - select ADK_TARGET_WITH_INPUT - select ADK_USE_KERNEL_MINICONFIG help Support for Qemu Emulator (PPC64). diff --git a/target/ppc64/sys-available/toolchain-ppc64 b/target/ppc64/sys-available/toolchain-ppc64 index 3615aab85..dce18a3a3 100644 --- a/target/ppc64/sys-available/toolchain-ppc64 +++ b/target/ppc64/sys-available/toolchain-ppc64 @@ -3,8 +3,9 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_PPC64 select ADK_ppc64 select ADK_toolchain_ppc64 select ADK_CPU_PPC64 + select ADK_LINUX_64 select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help Build a ppc64 toolchain. diff --git a/target/ppc64/target.mk b/target/ppc64/target.mk index 7ccf65b9c..5a0ecc30f 100644 --- a/target/ppc64/target.mk +++ b/target/ppc64/target.mk @@ -1,5 +1,4 @@ include $(TOPDIR)/mk/kernel-ver.mk ARCH:= powerpc CPU_ARCH:= ppc64 -TARGET_OPTIMIZATION:= -Os -pipe TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS) diff --git a/target/sh/Makefile b/target/sh/Makefile index 3cf65f614..0d5706eb3 100644 --- a/target/sh/Makefile +++ b/target/sh/Makefile @@ -22,6 +22,12 @@ ifneq ($(ADK_HARDWARE_QEMU),) @echo 'qemu-system-${CPU_ARCH} ${QEMU_ARGS} -M r2d -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${CPU_ARCH}.img' endif endif +ifeq ($(ADK_TARGET_FS),initramfsarchive) +imageinstall: $(FW_DIR)/$(ROOTFSUSERTARBALL) + @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)" +endif ifeq ($(ADK_TARGET_FS),initramfs) imageinstall: $(FW_DIR)/$(INITRAMFS) @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) diff --git a/target/sh/kernel/qemu-sh b/target/sh/kernel/qemu-sh index 5c38a01fb..c8d6e347c 100644 --- a/target/sh/kernel/qemu-sh +++ b/target/sh/kernel/qemu-sh @@ -16,22 +16,9 @@ CONFIG_SH_INTC=y CONFIG_CMDLINE_OVERWRITE=y CONFIG_PCI=y CONFIG_PCI_DOMAINS=y -CONFIG_SCSI=y -CONFIG_SCSI_DMA=y -CONFIG_BLK_DEV_SD=y -CONFIG_ATA=y -CONFIG_SATA_PMP=y -CONFIG_ATA_SFF=y -CONFIG_ATA_BMDMA=y -CONFIG_PATA_PLATFORM=y -CONFIG_NETDEVICES=y -CONFIG_NET_CORE=y CONFIG_MII=y -CONFIG_ETHERNET=y CONFIG_NET_VENDOR_REALTEK=y CONFIG_8139CP=y CONFIG_SERIAL_SH_SCI=y CONFIG_SERIAL_SH_SCI_NR_UARTS=2 CONFIG_SERIAL_SH_SCI_CONSOLE=y -CONFIG_SERIAL_CORE=y -CONFIG_SERIAL_CORE_CONSOLE=y diff --git a/target/sh/sys-available/qemu-sh4 b/target/sh/sys-available/qemu-sh4 index 83a645d65..5ebd224be 100644 --- a/target/sh/sys-available/qemu-sh4 +++ b/target/sh/sys-available/qemu-sh4 @@ -4,10 +4,7 @@ config ADK_TARGET_SYSTEM_QEMU_SH4 select ADK_little select ADK_qemu_sh4 select ADK_CPU_SH4 - select ADK_KERNEL_CPU_LITTLE_ENDIAN select ADK_HARDWARE_QEMU - select ADK_TARGET_WITH_USB - select ADK_USE_KERNEL_MINICONFIG select ADK_TARGET_KERNEL_ZIMAGE help Support for Qemu Emulator (superh). diff --git a/target/sh/sys-available/qemu-sh4eb b/target/sh/sys-available/qemu-sh4eb index 80389775e..f50f96b3e 100644 --- a/target/sh/sys-available/qemu-sh4eb +++ b/target/sh/sys-available/qemu-sh4eb @@ -4,10 +4,7 @@ config ADK_TARGET_SYSTEM_QEMU_SH4EB select ADK_big select ADK_qemu_sh4 select ADK_CPU_SH4 - select ADK_KERNEL_CPU_BIG_ENDIAN select ADK_HARDWARE_QEMU - select ADK_TARGET_WITH_USB - select ADK_USE_KERNEL_MINICONFIG select ADK_TARGET_KERNEL_ZIMAGE help Support for Qemu Emulator (superh). diff --git a/target/sh/sys-available/toolchain-sh b/target/sh/sys-available/toolchain-sh index 287401079..b9dedcfd2 100644 --- a/target/sh/sys-available/toolchain-sh +++ b/target/sh/sys-available/toolchain-sh @@ -5,7 +5,7 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_SH select ADK_toolchain_sh select ADK_CPU_SH4 select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help Build a superh toolchain (sh4). diff --git a/target/sh/sys-available/toolchain-sheb b/target/sh/sys-available/toolchain-sheb index 236d4e486..f61547d24 100644 --- a/target/sh/sys-available/toolchain-sheb +++ b/target/sh/sys-available/toolchain-sheb @@ -5,7 +5,7 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_SHEB select ADK_toolchain_sheb select ADK_CPU_SH4 select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help Build a superh toolchain (sh4 big endian). diff --git a/target/sh/target.mk b/target/sh/target.mk index b5630cced..408dd12c5 100644 --- a/target/sh/target.mk +++ b/target/sh/target.mk @@ -1,5 +1,4 @@ include $(TOPDIR)/mk/kernel-ver.mk ARCH:= sh CPU_ARCH:= $(ADK_TARGET_CPU_ARCH) -TARGET_OPTIMIZATION:= -Os -pipe TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS) diff --git a/target/sparc/Makefile b/target/sparc/Makefile index 6960aed4c..1e15ee7f0 100644 --- a/target/sparc/Makefile +++ b/target/sparc/Makefile @@ -21,6 +21,12 @@ ifeq ($(ADK_TARGET_SYSTEM_QEMU_SPARC),y) @echo 'qemu-system-sparc -M SS-5 -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${CPU_ARCH}.img -append "root=/dev/sda1"' endif endif +ifeq ($(ADK_TARGET_FS),initramfsarchive) +imageinstall: $(FW_DIR)/$(ROOTFSUSERTARBALL) + @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)" +endif ifeq ($(ADK_TARGET_FS),initramfs) imageinstall: $(FW_DIR)/$(INITRAMFS) @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) diff --git a/target/sparc/kernel/qemu-sparc b/target/sparc/kernel/qemu-sparc index 26bd9a29e..f58df04b4 100644 --- a/target/sparc/kernel/qemu-sparc +++ b/target/sparc/kernel/qemu-sparc @@ -6,14 +6,6 @@ CONFIG_PCI=y CONFIG_PCI_SYSCALL=y CONFIG_PCIC_PCI=y CONFIG_OF=y -CONFIG_SCSI=y -CONFIG_SCSI_DMA=y -CONFIG_BLK_DEV_SD=y -CONFIG_SCSI_LOWLEVEL=y -CONFIG_SCSI_SUNESP=y -CONFIG_NETDEVICES=y -CONFIG_NET_CORE=y -CONFIG_ETHERNET=y CONFIG_NET_VENDOR_AMD=y CONFIG_SUNLANCE=y CONFIG_SERIAL_CONSOLE=y diff --git a/target/sparc/sys-available/qemu-sparc b/target/sparc/sys-available/qemu-sparc index 0eefd2df7..26866628f 100644 --- a/target/sparc/sys-available/qemu-sparc +++ b/target/sparc/sys-available/qemu-sparc @@ -4,10 +4,7 @@ config ADK_TARGET_SYSTEM_QEMU_SPARC select ADK_qemu_sparc select ADK_CPU_SPARC_V8 select ADK_HARDWARE_QEMU - select ADK_TARGET_WITH_VGA - select ADK_TARGET_WITH_INPUT select ADK_TARGET_KERNEL_ZIMAGE - select ADK_USE_KERNEL_MINICONFIG help Support for Qemu Emulator (SPARC). diff --git a/target/sparc/sys-available/toolchain-sparc b/target/sparc/sys-available/toolchain-sparc index e668592e2..e7f5aafc4 100644 --- a/target/sparc/sys-available/toolchain-sparc +++ b/target/sparc/sys-available/toolchain-sparc @@ -4,7 +4,7 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_SPARC select ADK_toolchain_sparc select ADK_CPU_SPARC_V8 select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help Build a sparc toolchain. diff --git a/target/sparc/target.mk b/target/sparc/target.mk index 4de28f960..960a7cf19 100644 --- a/target/sparc/target.mk +++ b/target/sparc/target.mk @@ -1,5 +1,4 @@ include $(TOPDIR)/mk/kernel-ver.mk ARCH:= sparc CPU_ARCH:= sparc -TARGET_OPTIMIZATION:= -Os -pipe TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS) diff --git a/target/sparc64/Makefile b/target/sparc64/Makefile index 8fe5ebbcc..882189284 100644 --- a/target/sparc64/Makefile +++ b/target/sparc64/Makefile @@ -9,6 +9,17 @@ include $(TOPDIR)/mk/image.mk KERNEL:=$(LINUX_DIR)/vmlinux +QEMU_ARGS:=-M sun4u +ifeq ($(ADK_TARGET_QEMU_WITH_GRAPHICS),) +QEMU_ARGS+=-nographic +endif +ifeq ($(ADK_TARGET_QEMU_WITH_VIRTIO),y) +QEMU_ARGS+=-net nic,model=virtio -net user +ifeq ($(ADK_TARGET_FS),archive) +QEMU_ARGS+=-drive file=qemu-${CPU_ARCH}.img,if=virtio,index=0 +endif +endif + ifeq ($(ADK_TARGET_FS),archive) imageinstall: $(FW_DIR)/$(ROOTFSTARBALL) @cp $(KERNEL) $(FW_DIR)/${TARGET_KERNEL} @@ -18,12 +29,14 @@ ifeq ($(ADK_TARGET_SYSTEM_QEMU_SPARC64),y) @echo "Use following command to create a QEMU Image:" @echo "./scripts/create.sh +g qemu-${CPU_ARCH}.img $(FW_DIR)/$(ROOTFSTARBALL)" @echo "Start qemu with following command line:" -ifeq ($(ADK_TARGET_QEMU_WITH_VIRTIO),y) - @echo 'qemu-system-sparc64 -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL) -drive file=qemu-${CPU_ARCH}.img,if=virtio,index=0 -net nic,model=virtio -net user' -else - @echo 'qemu-system-sparc64 -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${CPU_ARCH}.img' + @echo 'qemu-system-sparc64 $(QEMU_ARGS) -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${CPU_ARCH}.img' endif endif +ifeq ($(ADK_TARGET_FS),initramfsarchive) +imageinstall: $(FW_DIR)/$(ROOTFSUSERTARBALL) + @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)" endif ifeq ($(ADK_TARGET_FS),initramfs) imageinstall: $(FW_DIR)/$(INITRAMFS) @@ -32,7 +45,7 @@ imageinstall: $(FW_DIR)/$(INITRAMFS) @echo 'The initramfs image is: ${FW_DIR}/${INITRAMFS}' ifeq ($(ADK_TARGET_SYSTEM_QEMU_SPARC64),y) @echo "Start qemu with following command line:" - @echo 'qemu-system-sparc64 -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL) -initrd ${FW_DIR}/${INITRAMFS}' + @echo 'qemu-system-sparc64 $(QEMU_ARGS) -kernel $(FW_DIR)/$(TARGET_KERNEL) -initrd ${FW_DIR}/${INITRAMFS}' endif endif ifeq ($(ADK_TARGET_FS),initramfs-piggyback) @@ -41,6 +54,6 @@ imageinstall: createinitramfs @echo 'The kernel+initramfs file is: $(FW_DIR)/${TARGET_KERNEL}' ifeq ($(ADK_TARGET_SYSTEM_QEMU_SPARC64),y) @echo "Start qemu with following command line:" - @echo 'qemu-system-sparc64 -nographic -kernel $(FW_DIR)/$(TARGET_KERNEL)' + @echo 'qemu-system-sparc64 $(QEMU_ARGS) -kernel $(FW_DIR)/$(TARGET_KERNEL)' endif endif diff --git a/target/sparc64/kernel/qemu-sparc64 b/target/sparc64/kernel/qemu-sparc64 index 5119f1225..e3cd03068 100644 --- a/target/sparc64/kernel/qemu-sparc64 +++ b/target/sparc64/kernel/qemu-sparc64 @@ -1,4 +1,3 @@ -CONFIG_64BIT=y CONFIG_SPARC=y CONFIG_SPARC64=y CONFIG_PCI=y @@ -12,16 +11,6 @@ CONFIG_OF_NET=y CONFIG_OF_PCI=y CONFIG_IOMMU_SUPPORT=y CONFIG_OF_IOMMU=y -CONFIG_SCSI=y -CONFIG_SCSI_DMA=y -CONFIG_BLK_DEV_SD=y -CONFIG_SCSI_LOWLEVEL=y -CONFIG_NETDEVICES=y -CONFIG_NET_CORE=y -CONFIG_ETHERNET=y -CONFIG_NET_VENDOR_NATSEMI=y -CONFIG_NET_VENDOR_8390=y -CONFIG_NE2K_PCI=y CONFIG_SERIAL_CONSOLE=y CONFIG_SERIAL_SUNCORE=y CONFIG_SERIAL_SUNSU=y diff --git a/target/sparc64/sys-available/qemu-sparc64 b/target/sparc64/sys-available/qemu-sparc64 index 5b88fe09a..d750ea1e4 100644 --- a/target/sparc64/sys-available/qemu-sparc64 +++ b/target/sparc64/sys-available/qemu-sparc64 @@ -2,12 +2,9 @@ config ADK_TARGET_SYSTEM_QEMU_SPARC64 bool "Qemu Emulator" select ADK_sparc64 select ADK_qemu_sparc64 + select ADK_LINUX_64 select ADK_CPU_SPARC_V9 select ADK_HARDWARE_QEMU - select ADK_TARGET_WITH_VGA - select ADK_TARGET_WITH_INPUT select ADK_TARGET_KERNEL_ZIMAGE - select ADK_USE_KERNEL_MINICONFIG help Support for Qemu Emulator (SPARC64). - diff --git a/target/sparc64/sys-available/toolchain-sparc64 b/target/sparc64/sys-available/toolchain-sparc64 index 15eaca575..a83ecd198 100644 --- a/target/sparc64/sys-available/toolchain-sparc64 +++ b/target/sparc64/sys-available/toolchain-sparc64 @@ -3,8 +3,9 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_SPARC64 select ADK_sparc64 select ADK_toolchain_sparc64 select ADK_CPU_SPARC_V9 + select ADK_LINUX_64 select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help Build a sparc64 toolchain. diff --git a/target/sparc64/target.mk b/target/sparc64/target.mk index 663e42d23..dda789e55 100644 --- a/target/sparc64/target.mk +++ b/target/sparc64/target.mk @@ -1,5 +1,4 @@ include $(TOPDIR)/mk/kernel-ver.mk ARCH:= sparc CPU_ARCH:= sparc64 -TARGET_OPTIMIZATION:= -Os -pipe TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS) diff --git a/target/tarch.lst b/target/tarch.lst index e7251f8d2..60e064398 100644 --- a/target/tarch.lst +++ b/target/tarch.lst @@ -1,14 +1,22 @@ arm +armhf m68k microblaze microblazeel mips mipsel mips64 +mips64n32 +mips64n64 mips64el +mips64eln32 +mips64eln64 ppc ppc64 +sh4 +sh4eb sparc sparc64 x86 x86_64 +x86_64_x32 diff --git a/target/x86/Makefile b/target/x86/Makefile index 91c9cef17..15d980d7c 100644 --- a/target/x86/Makefile +++ b/target/x86/Makefile @@ -14,7 +14,6 @@ imageinstall: $(FW_DIR)/$(ROOTFSTARBALL) @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSTARBALL)" @echo "To install everything to CompactFlash use scripts/genext2.sh" endif - ifeq ($(ADK_TARGET_FS),cf) imageinstall: $(FW_DIR)/$(ROOTFSTARBALL) @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSTARBALL)" @@ -42,6 +41,12 @@ ifeq ($(ADK_HARDWARE_VBOX),y) @echo "./scripts/create.sh -T vdi vbox-${CPU_ARCH}.img $(FW_DIR)/$(ROOTFSTARBALL)" endif endif +ifeq ($(ADK_TARGET_FS),initramfsarchive) +imageinstall: $(FW_DIR)/$(ROOTFSUSERTARBALL) + @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)" +endif ifeq ($(ADK_TARGET_FS),usb) imageinstall: $(FW_DIR)/$(ROOTFSTARBALL) @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSTARBALL)" diff --git a/target/x86/kernel.config b/target/x86/kernel.config deleted file mode 100644 index 00f9ffe7d..000000000 --- a/target/x86/kernel.config +++ /dev/null @@ -1,1193 +0,0 @@ -# -# Automatically generated file; DO NOT EDIT. -# Linux/x86 3.9.8 Kernel Configuration -# -# CONFIG_64BIT is not set -CONFIG_X86_32=y -CONFIG_X86=y -CONFIG_INSTRUCTION_DECODER=y -CONFIG_OUTPUT_FORMAT="elf32-i386" -CONFIG_ARCH_DEFCONFIG="arch/x86/configs/i386_defconfig" -CONFIG_LOCKDEP_SUPPORT=y -CONFIG_STACKTRACE_SUPPORT=y -CONFIG_HAVE_LATENCYTOP_SUPPORT=y -CONFIG_MMU=y -CONFIG_NEED_SG_DMA_LENGTH=y -CONFIG_GENERIC_ISA_DMA=y -CONFIG_GENERIC_HWEIGHT=y -CONFIG_ARCH_MAY_HAVE_PC_FDC=y -CONFIG_RWSEM_XCHGADD_ALGORITHM=y -CONFIG_GENERIC_CALIBRATE_DELAY=y -CONFIG_ARCH_HAS_CPU_RELAX=y -CONFIG_ARCH_HAS_DEFAULT_IDLE=y -CONFIG_ARCH_HAS_CACHE_LINE_SIZE=y -CONFIG_ARCH_HAS_CPU_AUTOPROBE=y -CONFIG_HAVE_SETUP_PER_CPU_AREA=y -CONFIG_NEED_PER_CPU_EMBED_FIRST_CHUNK=y -CONFIG_NEED_PER_CPU_PAGE_FIRST_CHUNK=y -CONFIG_ARCH_HIBERNATION_POSSIBLE=y -CONFIG_ARCH_SUSPEND_POSSIBLE=y -# CONFIG_ZONE_DMA32 is not set -# CONFIG_AUDIT_ARCH is not set -CONFIG_ARCH_SUPPORTS_OPTIMIZED_INLINING=y -CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y -CONFIG_X86_32_LAZY_GS=y -CONFIG_ARCH_HWEIGHT_CFLAGS="-fcall-saved-ecx -fcall-saved-edx" -CONFIG_ARCH_SUPPORTS_UPROBES=y -CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" -CONFIG_IRQ_WORK=y -CONFIG_BUILDTIME_EXTABLE_SORT=y - -# -# General setup -# -CONFIG_BROKEN_ON_SMP=y -CONFIG_INIT_ENV_ARG_LIMIT=32 -CONFIG_CROSS_COMPILE="" -CONFIG_LOCALVERSION="" -# CONFIG_LOCALVERSION_AUTO is not set -CONFIG_HAVE_KERNEL_GZIP=y -CONFIG_HAVE_KERNEL_BZIP2=y -CONFIG_HAVE_KERNEL_LZMA=y -CONFIG_HAVE_KERNEL_XZ=y -CONFIG_HAVE_KERNEL_LZO=y -# CONFIG_KERNEL_GZIP is not set -# CONFIG_KERNEL_BZIP2 is not set -# CONFIG_KERNEL_LZMA is not set -CONFIG_KERNEL_XZ=y -# CONFIG_KERNEL_LZO is not set -CONFIG_DEFAULT_HOSTNAME="openadk" -# CONFIG_SWAP is not set -CONFIG_SYSVIPC=y -CONFIG_SYSVIPC_SYSCTL=y -CONFIG_POSIX_MQUEUE=y -CONFIG_POSIX_MQUEUE_SYSCTL=y -# CONFIG_FHANDLE is not set -# CONFIG_AUDIT is not set -CONFIG_HAVE_GENERIC_HARDIRQS=y - -# -# IRQ subsystem -# -CONFIG_GENERIC_HARDIRQS=y -CONFIG_GENERIC_IRQ_PROBE=y -CONFIG_GENERIC_IRQ_SHOW=y -CONFIG_IRQ_FORCED_THREADING=y -CONFIG_SPARSE_IRQ=y -CONFIG_CLOCKSOURCE_WATCHDOG=y -CONFIG_KTIME_SCALAR=y -CONFIG_GENERIC_CLOCKEVENTS=y -CONFIG_GENERIC_CLOCKEVENTS_BUILD=y -CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y -CONFIG_GENERIC_CMOS_UPDATE=y - -# -# Timers subsystem -# -CONFIG_TICK_ONESHOT=y -CONFIG_NO_HZ=y -# CONFIG_HIGH_RES_TIMERS is not set - -# -# CPU/Task time and stats accounting -# -CONFIG_TICK_CPU_ACCOUNTING=y -# CONFIG_IRQ_TIME_ACCOUNTING is not set -# CONFIG_BSD_PROCESS_ACCT is not set -# CONFIG_TASKSTATS is not set - -# -# RCU Subsystem -# -CONFIG_TINY_RCU=y -# CONFIG_PREEMPT_RCU is not set -# CONFIG_RCU_STALL_COMMON is not set -# CONFIG_TREE_RCU_TRACE is not set -# CONFIG_IKCONFIG is not set -CONFIG_LOG_BUF_SHIFT=15 -CONFIG_HAVE_UNSTABLE_SCHED_CLOCK=y -CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y -CONFIG_ARCH_WANTS_PROT_NUMA_PROT_NONE=y -# CONFIG_CGROUPS is not set -# CONFIG_CHECKPOINT_RESTORE is not set -# CONFIG_NAMESPACES is not set -CONFIG_UIDGID_CONVERTED=y -# CONFIG_UIDGID_STRICT_TYPE_CHECKS is not set -# CONFIG_SCHED_AUTOGROUP is not set -# CONFIG_SYSFS_DEPRECATED is not set -# CONFIG_RELAY is not set -# CONFIG_BLK_DEV_INITRD is not set -CONFIG_CC_OPTIMIZE_FOR_SIZE=y -CONFIG_SYSCTL=y -CONFIG_ANON_INODES=y -CONFIG_EXPERT=y -CONFIG_HAVE_UID16=y -CONFIG_UID16=y -CONFIG_SYSCTL_SYSCALL=y -CONFIG_SYSCTL_EXCEPTION_TRACE=y -# CONFIG_KALLSYMS is not set -CONFIG_HOTPLUG=y -CONFIG_PRINTK=y -# CONFIG_BUG is not set -# CONFIG_ELF_CORE is not set -# CONFIG_PCSPKR_PLATFORM is not set -CONFIG_HAVE_PCSPKR_PLATFORM=y -# CONFIG_BASE_FULL is not set -CONFIG_FUTEX=y -CONFIG_EPOLL=y -CONFIG_SIGNALFD=y -CONFIG_TIMERFD=y -CONFIG_EVENTFD=y -CONFIG_SHMEM=y -CONFIG_AIO=y -CONFIG_EMBEDDED=y -CONFIG_HAVE_PERF_EVENTS=y - -# -# Kernel Performance Events And Counters -# -CONFIG_PERF_EVENTS=y -# CONFIG_DEBUG_PERF_USE_VMALLOC is not set -# CONFIG_VM_EVENT_COUNTERS is not set -CONFIG_PCI_QUIRKS=y -# CONFIG_COMPAT_BRK is not set -CONFIG_SLAB=y -# CONFIG_SLUB is not set -# CONFIG_SLOB is not set -# CONFIG_PROFILING is not set -CONFIG_HAVE_OPROFILE=y -CONFIG_OPROFILE_NMI_TIMER=y -# CONFIG_KPROBES is not set -# CONFIG_JUMP_LABEL is not set -# CONFIG_HAVE_64BIT_ALIGNED_ACCESS is not set -CONFIG_HAVE_EFFICIENT_UNALIGNED_ACCESS=y -CONFIG_ARCH_USE_BUILTIN_BSWAP=y -CONFIG_HAVE_IOREMAP_PROT=y -CONFIG_HAVE_KPROBES=y -CONFIG_HAVE_KRETPROBES=y -CONFIG_HAVE_OPTPROBES=y -CONFIG_HAVE_KPROBES_ON_FTRACE=y -CONFIG_HAVE_ARCH_TRACEHOOK=y -CONFIG_HAVE_DMA_ATTRS=y -CONFIG_HAVE_DMA_CONTIGUOUS=y -CONFIG_GENERIC_SMP_IDLE_THREAD=y -CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y -CONFIG_HAVE_DMA_API_DEBUG=y -CONFIG_HAVE_HW_BREAKPOINT=y -CONFIG_HAVE_MIXED_BREAKPOINTS_REGS=y -CONFIG_HAVE_USER_RETURN_NOTIFIER=y -CONFIG_HAVE_PERF_EVENTS_NMI=y -CONFIG_HAVE_PERF_REGS=y -CONFIG_HAVE_PERF_USER_STACK_DUMP=y -CONFIG_HAVE_ARCH_JUMP_LABEL=y -CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y -CONFIG_HAVE_CMPXCHG_LOCAL=y -CONFIG_HAVE_CMPXCHG_DOUBLE=y -CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y -CONFIG_HAVE_ARCH_SECCOMP_FILTER=y -CONFIG_HAVE_IRQ_TIME_ACCOUNTING=y -CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y -CONFIG_MODULES_USE_ELF_REL=y -CONFIG_CLONE_BACKWARDS=y -CONFIG_OLD_SIGSUSPEND3=y -CONFIG_OLD_SIGACTION=y - -# -# GCOV-based kernel profiling -# -CONFIG_HAVE_GENERIC_DMA_COHERENT=y -CONFIG_SLABINFO=y -CONFIG_RT_MUTEXES=y -CONFIG_BASE_SMALL=1 -CONFIG_MODULES=y -# CONFIG_MODULE_FORCE_LOAD is not set -CONFIG_MODULE_UNLOAD=y -CONFIG_MODULE_FORCE_UNLOAD=y -# CONFIG_MODVERSIONS is not set -# CONFIG_MODULE_SRCVERSION_ALL is not set -# CONFIG_MODULE_SIG is not set -CONFIG_BLOCK=y -# CONFIG_LBDAF is not set -# CONFIG_BLK_DEV_BSG is not set -# CONFIG_BLK_DEV_BSGLIB is not set -# CONFIG_BLK_DEV_INTEGRITY is not set - -# -# Partition Types -# -# CONFIG_PARTITION_ADVANCED is not set -CONFIG_MSDOS_PARTITION=y -CONFIG_EFI_PARTITION=y - -# -# IO Schedulers -# -CONFIG_IOSCHED_NOOP=y -# CONFIG_IOSCHED_DEADLINE is not set -CONFIG_IOSCHED_CFQ=y -CONFIG_DEFAULT_CFQ=y -# CONFIG_DEFAULT_NOOP is not set -CONFIG_DEFAULT_IOSCHED="cfq" -CONFIG_INLINE_SPIN_UNLOCK_IRQ=y -CONFIG_INLINE_READ_UNLOCK=y -CONFIG_INLINE_READ_UNLOCK_IRQ=y -CONFIG_INLINE_WRITE_UNLOCK=y -CONFIG_INLINE_WRITE_UNLOCK_IRQ=y -# CONFIG_FREEZER is not set - -# -# Processor type and features -# -CONFIG_ZONE_DMA=y -# CONFIG_SMP is not set -# CONFIG_X86_EXTENDED_PLATFORM is not set -# CONFIG_X86_GOLDFISH is not set -# CONFIG_X86_32_IRIS is not set -CONFIG_SCHED_OMIT_FRAME_POINTER=y -# CONFIG_PARAVIRT_GUEST is not set -CONFIG_NO_BOOTMEM=y -# CONFIG_MEMTEST is not set -CONFIG_M486=y -# CONFIG_M586 is not set -# CONFIG_M586TSC is not set -# CONFIG_M586MMX is not set -# CONFIG_M686 is not set -# CONFIG_MPENTIUMII is not set -# CONFIG_MPENTIUMIII is not set -# CONFIG_MPENTIUMM is not set -# CONFIG_MPENTIUM4 is not set -# CONFIG_MK6 is not set -# CONFIG_MK7 is not set -# CONFIG_MK8 is not set -# CONFIG_MCRUSOE is not set -# CONFIG_MEFFICEON is not set -# CONFIG_MWINCHIPC6 is not set -# CONFIG_MWINCHIP3D is not set -# CONFIG_MELAN is not set -# CONFIG_MGEODEGX1 is not set -# CONFIG_MGEODE_LX is not set -# CONFIG_MCYRIXIII is not set -# CONFIG_MVIAC3_2 is not set -# CONFIG_MVIAC7 is not set -# CONFIG_MCORE2 is not set -# CONFIG_MATOM is not set -CONFIG_X86_GENERIC=y -CONFIG_X86_INTERNODE_CACHE_SHIFT=6 -CONFIG_X86_L1_CACHE_SHIFT=6 -# CONFIG_X86_PPRO_FENCE is not set -CONFIG_X86_F00F_BUG=y -CONFIG_X86_INVD_BUG=y -CONFIG_X86_ALIGNMENT_16=y -CONFIG_X86_INTEL_USERCOPY=y -CONFIG_X86_MINIMUM_CPU_FAMILY=4 -# CONFIG_PROCESSOR_SELECT is not set -CONFIG_CPU_SUP_INTEL=y -CONFIG_CPU_SUP_CYRIX_32=y -CONFIG_CPU_SUP_AMD=y -CONFIG_CPU_SUP_CENTAUR=y -CONFIG_CPU_SUP_TRANSMETA_32=y -CONFIG_CPU_SUP_UMC_32=y -# CONFIG_HPET_TIMER is not set -# CONFIG_DMI is not set -CONFIG_NR_CPUS=1 -CONFIG_PREEMPT_NONE=y -# CONFIG_PREEMPT_VOLUNTARY is not set -# CONFIG_PREEMPT is not set -# CONFIG_X86_UP_APIC is not set -# CONFIG_X86_MCE is not set -CONFIG_VM86=y -# CONFIG_TOSHIBA is not set -# CONFIG_I8K is not set -CONFIG_X86_REBOOTFIXUPS=y -# CONFIG_MICROCODE is not set -# CONFIG_X86_MSR is not set -# CONFIG_X86_CPUID is not set -# CONFIG_NOHIGHMEM is not set -CONFIG_HIGHMEM4G=y -CONFIG_VMSPLIT_3G=y -# CONFIG_VMSPLIT_3G_OPT is not set -# CONFIG_VMSPLIT_2G is not set -# CONFIG_VMSPLIT_2G_OPT is not set -# CONFIG_VMSPLIT_1G is not set -CONFIG_PAGE_OFFSET=0xC0000000 -CONFIG_HIGHMEM=y -CONFIG_NEED_NODE_MEMMAP_SIZE=y -CONFIG_ARCH_FLATMEM_ENABLE=y -CONFIG_ARCH_SPARSEMEM_ENABLE=y -CONFIG_ARCH_SELECT_MEMORY_MODEL=y -CONFIG_ILLEGAL_POINTER_VALUE=0 -CONFIG_SELECT_MEMORY_MODEL=y -# CONFIG_FLATMEM_MANUAL is not set -CONFIG_SPARSEMEM_MANUAL=y -CONFIG_SPARSEMEM=y -CONFIG_HAVE_MEMORY_PRESENT=y -CONFIG_SPARSEMEM_STATIC=y -CONFIG_HAVE_MEMBLOCK=y -CONFIG_HAVE_MEMBLOCK_NODE_MAP=y -CONFIG_ARCH_DISCARD_MEMBLOCK=y -# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set -# CONFIG_MEMORY_HOTPLUG is not set -CONFIG_SPLIT_PTLOCK_CPUS=4 -# CONFIG_COMPACTION is not set -# CONFIG_PHYS_ADDR_T_64BIT is not set -CONFIG_ZONE_DMA_FLAG=1 -CONFIG_BOUNCE=y -CONFIG_VIRT_TO_BUS=y -# CONFIG_KSM is not set -CONFIG_DEFAULT_MMAP_MIN_ADDR=4096 -# CONFIG_TRANSPARENT_HUGEPAGE is not set -# CONFIG_CROSS_MEMORY_ATTACH is not set -CONFIG_NEED_PER_CPU_KM=y -# CONFIG_CLEANCACHE is not set -# CONFIG_HIGHPTE is not set -# CONFIG_X86_CHECK_BIOS_CORRUPTION is not set -CONFIG_X86_RESERVE_LOW=64 -# CONFIG_MATH_EMULATION is not set -# CONFIG_MTRR is not set -CONFIG_ARCH_RANDOM=y -# CONFIG_X86_SMAP is not set -# CONFIG_SECCOMP is not set -# CONFIG_CC_STACKPROTECTOR is not set -# CONFIG_HZ_100 is not set -CONFIG_HZ_250=y -# CONFIG_HZ_300 is not set -# CONFIG_HZ_1000 is not set -CONFIG_HZ=250 -# CONFIG_SCHED_HRTICK is not set -# CONFIG_KEXEC is not set -# CONFIG_CRASH_DUMP is not set -CONFIG_PHYSICAL_START=0x200000 -# CONFIG_RELOCATABLE is not set -CONFIG_PHYSICAL_ALIGN=0x200000 -# CONFIG_COMPAT_VDSO is not set -CONFIG_CMDLINE_BOOL=y -CONFIG_CMDLINE="" -# CONFIG_CMDLINE_OVERRIDE is not set -CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y - -# -# Power management and ACPI options -# -# CONFIG_SUSPEND is not set -# CONFIG_PM_RUNTIME is not set -# CONFIG_ACPI is not set -# CONFIG_SFI is not set - -# -# CPU Frequency scaling -# -# CONFIG_CPU_FREQ is not set -# CONFIG_CPU_IDLE is not set -# CONFIG_ARCH_NEEDS_CPU_IDLE_COUPLED is not set - -# -# Bus options (PCI etc.) -# -CONFIG_PCI=y -# CONFIG_PCI_GOBIOS is not set -# CONFIG_PCI_GOMMCONFIG is not set -# CONFIG_PCI_GODIRECT is not set -CONFIG_PCI_GOANY=y -CONFIG_PCI_BIOS=y -CONFIG_PCI_DIRECT=y -CONFIG_PCI_DOMAINS=y -# CONFIG_PCI_CNB20LE_QUIRK is not set -# CONFIG_PCIEPORTBUS is not set -# CONFIG_PCI_DEBUG is not set -# CONFIG_PCI_REALLOC_ENABLE_AUTO is not set -# CONFIG_PCI_STUB is not set -# CONFIG_PCI_IOV is not set -# CONFIG_PCI_PRI is not set -# CONFIG_PCI_PASID is not set -CONFIG_ISA_DMA_API=y -# CONFIG_ISA is not set -# CONFIG_SCx200 is not set -# CONFIG_OLPC is not set -# CONFIG_ALIX is not set -# CONFIG_NET5501 is not set -CONFIG_AMD_NB=y -# CONFIG_PCCARD is not set -# CONFIG_HOTPLUG_PCI is not set -# CONFIG_RAPIDIO is not set - -# -# Executable file formats / Emulations -# -CONFIG_BINFMT_ELF=y -CONFIG_ARCH_BINFMT_ELF_RANDOMIZE_PIE=y -CONFIG_HAVE_AOUT=y -# CONFIG_BINFMT_AOUT is not set -# CONFIG_BINFMT_MISC is not set -CONFIG_COREDUMP=y -CONFIG_HAVE_ATOMIC_IOMAP=y -CONFIG_HAVE_TEXT_POKE_SMP=y -CONFIG_NET=y - -# -# Networking options -# -CONFIG_PACKET=y -# CONFIG_PACKET_DIAG is not set -CONFIG_UNIX=y -# CONFIG_UNIX_DIAG is not set -# CONFIG_XFRM_USER is not set -# CONFIG_NET_KEY is not set -CONFIG_INET=y -# CONFIG_IP_MULTICAST is not set -# CONFIG_IP_ADVANCED_ROUTER is not set -# CONFIG_IP_PNP is not set -# CONFIG_NET_IPIP is not set -# CONFIG_NET_IPGRE_DEMUX is not set -# CONFIG_ARPD is not set -# CONFIG_SYN_COOKIES is not set -# CONFIG_INET_AH is not set -# CONFIG_INET_ESP is not set -# CONFIG_INET_IPCOMP is not set -# CONFIG_INET_XFRM_TUNNEL is not set -# CONFIG_INET_TUNNEL is not set -# CONFIG_INET_XFRM_MODE_TRANSPORT is not set -# CONFIG_INET_XFRM_MODE_TUNNEL is not set -# CONFIG_INET_XFRM_MODE_BEET is not set -# CONFIG_INET_LRO is not set -# CONFIG_INET_DIAG is not set -# CONFIG_TCP_CONG_ADVANCED is not set -CONFIG_TCP_CONG_CUBIC=y -CONFIG_DEFAULT_TCP_CONG="cubic" -# CONFIG_TCP_MD5SIG is not set -# CONFIG_IPV6 is not set -# CONFIG_NETWORK_SECMARK is not set -# CONFIG_NETWORK_PHY_TIMESTAMPING is not set -# CONFIG_NETFILTER is not set -# CONFIG_IP_DCCP is not set -# CONFIG_IP_SCTP is not set -# CONFIG_RDS is not set -# CONFIG_TIPC is not set -# CONFIG_ATM is not set -# CONFIG_L2TP is not set -# CONFIG_BRIDGE is not set -# CONFIG_VLAN_8021Q is not set -# CONFIG_DECNET is not set -# CONFIG_LLC2 is not set -# CONFIG_IPX is not set -# CONFIG_ATALK is not set -# CONFIG_X25 is not set -# CONFIG_LAPB is not set -# CONFIG_PHONET is not set -# CONFIG_IEEE802154 is not set -# CONFIG_NET_SCHED is not set -# CONFIG_DCB is not set -# CONFIG_BATMAN_ADV is not set -# CONFIG_OPENVSWITCH is not set -# CONFIG_VSOCKETS is not set -CONFIG_BQL=y - -# -# Network testing -# -# CONFIG_NET_PKTGEN is not set -# CONFIG_HAMRADIO is not set -# CONFIG_CAN is not set -# CONFIG_IRDA is not set -# CONFIG_BT is not set -# CONFIG_AF_RXRPC is not set -# CONFIG_WIRELESS is not set -# CONFIG_WIMAX is not set -# CONFIG_RFKILL is not set -# CONFIG_NET_9P is not set -# CONFIG_CAIF is not set -# CONFIG_CEPH_LIB is not set -# CONFIG_NFC is not set - -# -# Device Drivers -# - -# -# Generic Driver Options -# -CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug" -CONFIG_DEVTMPFS=y -CONFIG_DEVTMPFS_MOUNT=y -# CONFIG_STANDALONE is not set -# CONFIG_PREVENT_FIRMWARE_BUILD is not set -# CONFIG_FW_LOADER is not set -# CONFIG_DEBUG_DRIVER is not set -# CONFIG_DEBUG_DEVRES is not set -# CONFIG_SYS_HYPERVISOR is not set -# CONFIG_GENERIC_CPU_DEVICES is not set -# CONFIG_DMA_SHARED_BUFFER is not set -# CONFIG_CMA is not set - -# -# Bus devices -# -# CONFIG_CONNECTOR is not set -# CONFIG_MTD is not set -# CONFIG_PARPORT is not set -# CONFIG_BLK_DEV is not set - -# -# Misc devices -# -# CONFIG_PHANTOM is not set -# CONFIG_INTEL_MID_PTI is not set -# CONFIG_SGI_IOC4 is not set -# CONFIG_TIFM_CORE is not set -# CONFIG_ATMEL_SSC is not set -# CONFIG_ENCLOSURE_SERVICES is not set -# CONFIG_HP_ILO is not set -# CONFIG_VMWARE_BALLOON is not set -# CONFIG_PCH_PHUB is not set -# CONFIG_C2PORT is not set - -# -# EEPROM support -# -# CONFIG_EEPROM_93CX6 is not set -# CONFIG_CB710_CORE is not set - -# -# Texas Instruments shared transport line discipline -# - -# -# Altera FPGA firmware download module -# -# CONFIG_VMWARE_VMCI is not set -CONFIG_HAVE_IDE=y -# CONFIG_IDE is not set - -# -# SCSI device support -# -CONFIG_SCSI_MOD=y -# CONFIG_RAID_ATTRS is not set -# CONFIG_SCSI is not set -# CONFIG_SCSI_DMA is not set -# CONFIG_SCSI_NETLINK is not set -# CONFIG_ATA is not set -# CONFIG_MD is not set -# CONFIG_FUSION is not set - -# -# IEEE 1394 (FireWire) support -# -# CONFIG_FIREWIRE is not set -# CONFIG_FIREWIRE_NOSY is not set -# CONFIG_I2O is not set -# CONFIG_MACINTOSH_DRIVERS is not set -# CONFIG_NETDEVICES is not set - -# -# Input device support -# -# CONFIG_INPUT is not set - -# -# Hardware I/O ports -# -# CONFIG_SERIO is not set -# CONFIG_GAMEPORT is not set - -# -# Character devices -# -CONFIG_TTY=y -# CONFIG_VT is not set -CONFIG_UNIX98_PTYS=y -# CONFIG_DEVPTS_MULTIPLE_INSTANCES is not set -# CONFIG_LEGACY_PTYS is not set -# CONFIG_SERIAL_NONSTANDARD is not set -# CONFIG_NOZOMI is not set -# CONFIG_N_GSM is not set -# CONFIG_TRACE_SINK is not set -# CONFIG_DEVKMEM is not set - -# -# Serial drivers -# -CONFIG_SERIAL_8250=y -CONFIG_SERIAL_8250_DEPRECATED_OPTIONS=y -CONFIG_SERIAL_8250_CONSOLE=y -CONFIG_FIX_EARLYCON_MEM=y -# CONFIG_SERIAL_8250_PCI is not set -CONFIG_SERIAL_8250_NR_UARTS=4 -CONFIG_SERIAL_8250_RUNTIME_UARTS=4 -# CONFIG_SERIAL_8250_EXTENDED is not set -# CONFIG_SERIAL_8250_DW is not set - -# -# Non-8250 serial port support -# -# CONFIG_SERIAL_MFD_HSU is not set -CONFIG_SERIAL_CORE=y -CONFIG_SERIAL_CORE_CONSOLE=y -# CONFIG_SERIAL_JSM is not set -# CONFIG_SERIAL_SCCNXP is not set -# CONFIG_SERIAL_TIMBERDALE is not set -# CONFIG_SERIAL_ALTERA_JTAGUART is not set -# CONFIG_SERIAL_ALTERA_UART is not set -# CONFIG_SERIAL_PCH_UART is not set -# CONFIG_SERIAL_ARC is not set -# CONFIG_SERIAL_RP2 is not set -# CONFIG_TTY_PRINTK is not set -# CONFIG_IPMI_HANDLER is not set -# CONFIG_HW_RANDOM is not set -# CONFIG_NVRAM is not set -# CONFIG_RTC is not set -# CONFIG_GEN_RTC is not set -# CONFIG_R3964 is not set -# CONFIG_APPLICOM is not set -# CONFIG_MWAVE is not set -# CONFIG_PC8736x_GPIO is not set -# CONFIG_NSC_GPIO is not set -# CONFIG_RAW_DRIVER is not set -# CONFIG_HANGCHECK_TIMER is not set -# CONFIG_TCG_TPM is not set -# CONFIG_TELCLOCK is not set -CONFIG_DEVPORT=y -# CONFIG_I2C is not set -# CONFIG_SPI is not set -# CONFIG_HSI is not set - -# -# PPS support -# -# CONFIG_PPS is not set - -# -# PPS generators support -# - -# -# PTP clock support -# -# CONFIG_PTP_1588_CLOCK is not set - -# -# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. -# -# CONFIG_PTP_1588_CLOCK_PCH is not set -CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y -CONFIG_GPIO_DEVRES=y -# CONFIG_GPIOLIB is not set -# CONFIG_W1 is not set -# CONFIG_POWER_SUPPLY is not set -# CONFIG_POWER_AVS is not set -# CONFIG_HWMON is not set -# CONFIG_THERMAL is not set -# CONFIG_WATCHDOG is not set -CONFIG_SSB_POSSIBLE=y - -# -# Sonics Silicon Backplane -# -# CONFIG_SSB is not set -CONFIG_BCMA_POSSIBLE=y - -# -# Broadcom specific AMBA -# -# CONFIG_BCMA is not set - -# -# Multifunction device drivers -# -# CONFIG_MFD_CORE is not set -# CONFIG_MFD_SM501 is not set -# CONFIG_MFD_RTSX_PCI is not set -# CONFIG_MFD_TI_AM335X_TSCADC is not set -# CONFIG_HTC_PASIC3 is not set -# CONFIG_MFD_TMIO is not set -# CONFIG_ABX500_CORE is not set -# CONFIG_MFD_CS5535 is not set -# CONFIG_LPC_SCH is not set -# CONFIG_LPC_ICH is not set -# CONFIG_MFD_RDC321X is not set -# CONFIG_MFD_JANZ_CMODIO is not set -# CONFIG_MFD_VX855 is not set -# CONFIG_REGULATOR is not set -CONFIG_MEDIA_SUPPORT=y - -# -# Multimedia core support -# -# CONFIG_MEDIA_CAMERA_SUPPORT is not set -# CONFIG_MEDIA_ANALOG_TV_SUPPORT is not set -# CONFIG_MEDIA_DIGITAL_TV_SUPPORT is not set -# CONFIG_MEDIA_RADIO_SUPPORT is not set -# CONFIG_VIDEO_ADV_DEBUG is not set -# CONFIG_VIDEO_FIXED_MINOR_RANGES is not set - -# -# Media drivers -# -# CONFIG_MEDIA_PCI_SUPPORT is not set - -# -# Supported MMC/SDIO adapters -# - -# -# Media ancillary drivers (tuners, sensors, i2c, frontends) -# - -# -# Customise DVB Frontends -# - -# -# Tools to develop new frontends -# -# CONFIG_DVB_DUMMY_FE is not set - -# -# Graphics support -# -# CONFIG_AGP is not set -# CONFIG_VGA_ARB is not set -# CONFIG_DRM is not set -# CONFIG_VGASTATE is not set -# CONFIG_VIDEO_OUTPUT_CONTROL is not set -# CONFIG_FB is not set -# CONFIG_EXYNOS_VIDEO is not set -# CONFIG_BACKLIGHT_LCD_SUPPORT is not set -# CONFIG_SOUND is not set -CONFIG_USB_ARCH_HAS_OHCI=y -CONFIG_USB_ARCH_HAS_EHCI=y -CONFIG_USB_ARCH_HAS_XHCI=y -# CONFIG_USB_SUPPORT is not set -# CONFIG_UWB is not set -# CONFIG_MMC is not set -# CONFIG_MEMSTICK is not set -# CONFIG_NEW_LEDS is not set -# CONFIG_ACCESSIBILITY is not set -# CONFIG_INFINIBAND is not set -# CONFIG_EDAC is not set -# CONFIG_RTC_CLASS is not set -# CONFIG_DMADEVICES is not set -# CONFIG_AUXDISPLAY is not set -# CONFIG_UIO is not set - -# -# Virtio drivers -# -# CONFIG_VIRTIO_PCI is not set -# CONFIG_VIRTIO_MMIO is not set - -# -# Microsoft Hyper-V guest support -# -# CONFIG_STAGING is not set -# CONFIG_X86_PLATFORM_DEVICES is not set - -# -# Hardware Spinlock drivers -# -CONFIG_CLKSRC_I8253=y -CONFIG_CLKEVT_I8253=y -CONFIG_CLKBLD_I8253=y -# CONFIG_MAILBOX is not set -CONFIG_IOMMU_SUPPORT=y - -# -# Remoteproc drivers -# -# CONFIG_STE_MODEM_RPROC is not set - -# -# Rpmsg drivers -# -# CONFIG_VIRT_DRIVERS is not set -# CONFIG_PM_DEVFREQ is not set -# CONFIG_EXTCON is not set -# CONFIG_MEMORY is not set -# CONFIG_IIO is not set -# CONFIG_VME_BUS is not set -# CONFIG_PWM is not set -# CONFIG_IPACK_BUS is not set - -# -# Firmware Drivers -# -# CONFIG_EDD is not set -# CONFIG_FIRMWARE_MEMMAP is not set -# CONFIG_DELL_RBU is not set -# CONFIG_DCDBAS is not set -# CONFIG_ISCSI_IBFT_FIND is not set -# CONFIG_GOOGLE_FIRMWARE is not set - -# -# File systems -# -CONFIG_DCACHE_WORD_ACCESS=y -# CONFIG_EXT2_FS is not set -# CONFIG_EXT3_FS is not set -# CONFIG_EXT4_FS is not set -# CONFIG_REISERFS_FS is not set -# CONFIG_JFS_FS is not set -# CONFIG_XFS_FS is not set -# CONFIG_BTRFS_FS is not set -# CONFIG_NILFS2_FS is not set -# CONFIG_FS_POSIX_ACL is not set -CONFIG_FILE_LOCKING=y -# CONFIG_FSNOTIFY is not set -# CONFIG_DNOTIFY is not set -# CONFIG_INOTIFY_USER is not set -# CONFIG_FANOTIFY is not set -# CONFIG_QUOTA is not set -# CONFIG_QUOTACTL is not set -# CONFIG_AUTOFS4_FS is not set -# CONFIG_FUSE_FS is not set - -# -# Caches -# -# CONFIG_FSCACHE is not set - -# -# CD-ROM/DVD Filesystems -# -# CONFIG_ISO9660_FS is not set -# CONFIG_UDF_FS is not set - -# -# DOS/FAT/NT Filesystems -# -# CONFIG_MSDOS_FS is not set -# CONFIG_VFAT_FS is not set -# CONFIG_NTFS_FS is not set - -# -# Pseudo filesystems -# -CONFIG_PROC_FS=y -# CONFIG_PROC_KCORE is not set -CONFIG_PROC_SYSCTL=y -# CONFIG_PROC_PAGE_MONITOR is not set -CONFIG_SYSFS=y -CONFIG_TMPFS=y -# CONFIG_TMPFS_POSIX_ACL is not set -# CONFIG_TMPFS_XATTR is not set -# CONFIG_HUGETLBFS is not set -# CONFIG_HUGETLB_PAGE is not set -# CONFIG_CONFIGFS_FS is not set -# CONFIG_MISC_FILESYSTEMS is not set -# CONFIG_NETWORK_FILESYSTEMS is not set -CONFIG_NLS=y -CONFIG_NLS_DEFAULT="iso8859-1" -# CONFIG_NLS_CODEPAGE_437 is not set -# CONFIG_NLS_CODEPAGE_737 is not set -# CONFIG_NLS_CODEPAGE_775 is not set -# CONFIG_NLS_CODEPAGE_850 is not set -# CONFIG_NLS_CODEPAGE_852 is not set -# CONFIG_NLS_CODEPAGE_855 is not set -# CONFIG_NLS_CODEPAGE_857 is not set -# CONFIG_NLS_CODEPAGE_860 is not set -# CONFIG_NLS_CODEPAGE_861 is not set -# CONFIG_NLS_CODEPAGE_862 is not set -# CONFIG_NLS_CODEPAGE_863 is not set -# CONFIG_NLS_CODEPAGE_864 is not set -# CONFIG_NLS_CODEPAGE_865 is not set -# CONFIG_NLS_CODEPAGE_866 is not set -# CONFIG_NLS_CODEPAGE_869 is not set -# CONFIG_NLS_CODEPAGE_936 is not set -# CONFIG_NLS_CODEPAGE_950 is not set -# CONFIG_NLS_CODEPAGE_932 is not set -# CONFIG_NLS_CODEPAGE_949 is not set -# CONFIG_NLS_CODEPAGE_874 is not set -# CONFIG_NLS_ISO8859_8 is not set -# CONFIG_NLS_CODEPAGE_1250 is not set -# CONFIG_NLS_CODEPAGE_1251 is not set -# CONFIG_NLS_ASCII is not set -# CONFIG_NLS_ISO8859_1 is not set -# CONFIG_NLS_ISO8859_2 is not set -# CONFIG_NLS_ISO8859_3 is not set -# CONFIG_NLS_ISO8859_4 is not set -# CONFIG_NLS_ISO8859_5 is not set -# CONFIG_NLS_ISO8859_6 is not set -# CONFIG_NLS_ISO8859_7 is not set -# CONFIG_NLS_ISO8859_9 is not set -# CONFIG_NLS_ISO8859_13 is not set -# CONFIG_NLS_ISO8859_14 is not set -# CONFIG_NLS_ISO8859_15 is not set -# CONFIG_NLS_KOI8_R is not set -# CONFIG_NLS_KOI8_U is not set -# CONFIG_NLS_MAC_ROMAN is not set -# CONFIG_NLS_MAC_CELTIC is not set -# CONFIG_NLS_MAC_CENTEURO is not set -# CONFIG_NLS_MAC_CROATIAN is not set -# CONFIG_NLS_MAC_CYRILLIC is not set -# CONFIG_NLS_MAC_GAELIC is not set -# CONFIG_NLS_MAC_GREEK is not set -# CONFIG_NLS_MAC_ICELAND is not set -# CONFIG_NLS_MAC_INUIT is not set -# CONFIG_NLS_MAC_ROMANIAN is not set -# CONFIG_NLS_MAC_TURKISH is not set -# CONFIG_NLS_UTF8 is not set - -# -# Kernel hacking -# -CONFIG_TRACE_IRQFLAGS_SUPPORT=y -CONFIG_PRINTK_TIME=y -CONFIG_DEFAULT_MESSAGE_LOGLEVEL=4 -# CONFIG_ENABLE_WARN_DEPRECATED is not set -# CONFIG_ENABLE_MUST_CHECK is not set -CONFIG_FRAME_WARN=1024 -# CONFIG_MAGIC_SYSRQ is not set -# CONFIG_STRIP_ASM_SYMS is not set -# CONFIG_READABLE_ASM is not set -# CONFIG_UNUSED_SYMBOLS is not set -# CONFIG_DEBUG_FS is not set -# CONFIG_HEADERS_CHECK is not set -# CONFIG_DEBUG_SECTION_MISMATCH is not set -CONFIG_DEBUG_KERNEL=y -# CONFIG_DEBUG_SHIRQ is not set -# CONFIG_LOCKUP_DETECTOR is not set -# CONFIG_PANIC_ON_OOPS is not set -CONFIG_PANIC_ON_OOPS_VALUE=0 -# CONFIG_DETECT_HUNG_TASK is not set -# CONFIG_SCHED_DEBUG is not set -# CONFIG_SCHEDSTATS is not set -# CONFIG_TIMER_STATS is not set -# CONFIG_DEBUG_OBJECTS is not set -# CONFIG_DEBUG_SLAB is not set -CONFIG_HAVE_DEBUG_KMEMLEAK=y -# CONFIG_DEBUG_KMEMLEAK is not set -# CONFIG_DEBUG_RT_MUTEXES is not set -# CONFIG_RT_MUTEX_TESTER is not set -# CONFIG_DEBUG_SPINLOCK is not set -# CONFIG_DEBUG_MUTEXES is not set -# CONFIG_DEBUG_LOCK_ALLOC is not set -# CONFIG_PROVE_LOCKING is not set -# CONFIG_LOCK_STAT is not set -# CONFIG_DEBUG_ATOMIC_SLEEP is not set -# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set -# CONFIG_DEBUG_STACK_USAGE is not set -# CONFIG_DEBUG_KOBJECT is not set -# CONFIG_DEBUG_HIGHMEM is not set -# CONFIG_DEBUG_INFO is not set -# CONFIG_DEBUG_VM is not set -# CONFIG_DEBUG_VIRTUAL is not set -# CONFIG_DEBUG_WRITECOUNT is not set -# CONFIG_DEBUG_MEMORY_INIT is not set -# CONFIG_DEBUG_LIST is not set -# CONFIG_TEST_LIST_SORT is not set -# CONFIG_DEBUG_SG is not set -# CONFIG_DEBUG_NOTIFIERS is not set -# CONFIG_DEBUG_CREDENTIALS is not set -CONFIG_ARCH_WANT_FRAME_POINTERS=y -# CONFIG_FRAME_POINTER is not set -# CONFIG_BOOT_PRINTK_DELAY is not set - -# -# RCU Debugging -# -# CONFIG_SPARSE_RCU_POINTER is not set -# CONFIG_RCU_TORTURE_TEST is not set -# CONFIG_RCU_TRACE is not set -# CONFIG_BACKTRACE_SELF_TEST is not set -# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set -# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set -# CONFIG_NOTIFIER_ERROR_INJECTION is not set -# CONFIG_FAULT_INJECTION is not set -# CONFIG_LATENCYTOP is not set -# CONFIG_DEBUG_PAGEALLOC is not set -CONFIG_USER_STACKTRACE_SUPPORT=y -CONFIG_HAVE_FUNCTION_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y -CONFIG_HAVE_FUNCTION_GRAPH_FP_TEST=y -CONFIG_HAVE_FUNCTION_TRACE_MCOUNT_TEST=y -CONFIG_HAVE_DYNAMIC_FTRACE=y -CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y -CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y -CONFIG_HAVE_SYSCALL_TRACEPOINTS=y -CONFIG_HAVE_C_RECORDMCOUNT=y -CONFIG_TRACING_SUPPORT=y -# CONFIG_FTRACE is not set -# CONFIG_RBTREE_TEST is not set -# CONFIG_INTERVAL_TREE_TEST is not set -# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set -# CONFIG_DMA_API_DEBUG is not set -# CONFIG_ATOMIC64_SELFTEST is not set -# CONFIG_SAMPLES is not set -CONFIG_HAVE_ARCH_KGDB=y -# CONFIG_KGDB is not set -CONFIG_HAVE_ARCH_KMEMCHECK=y -# CONFIG_TEST_KSTRTOX is not set -# CONFIG_STRICT_DEVMEM is not set -# CONFIG_X86_VERBOSE_BOOTUP is not set -CONFIG_EARLY_PRINTK=y -# CONFIG_EARLY_PRINTK_DBGP is not set -# CONFIG_DEBUG_STACKOVERFLOW is not set -# CONFIG_X86_PTDUMP is not set -# CONFIG_DEBUG_RODATA is not set -# CONFIG_DEBUG_SET_MODULE_RONX is not set -# CONFIG_DEBUG_NX_TEST is not set -# CONFIG_DOUBLEFAULT is not set -# CONFIG_IOMMU_STRESS is not set -CONFIG_HAVE_MMIOTRACE_SUPPORT=y -CONFIG_IO_DELAY_TYPE_0X80=0 -CONFIG_IO_DELAY_TYPE_0XED=1 -CONFIG_IO_DELAY_TYPE_UDELAY=2 -CONFIG_IO_DELAY_TYPE_NONE=3 -CONFIG_IO_DELAY_0X80=y -# CONFIG_IO_DELAY_0XED is not set -# CONFIG_IO_DELAY_UDELAY is not set -# CONFIG_IO_DELAY_NONE is not set -CONFIG_DEFAULT_IO_DELAY_TYPE=0 -# CONFIG_CPA_DEBUG is not set -# CONFIG_OPTIMIZE_INLINING is not set -# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set - -# -# Security options -# -# CONFIG_KEYS is not set -# CONFIG_SECURITY_DMESG_RESTRICT is not set -# CONFIG_SECURITY is not set -# CONFIG_SECURITYFS is not set -CONFIG_DEFAULT_SECURITY_DAC=y -CONFIG_DEFAULT_SECURITY="" -CONFIG_CRYPTO=y - -# -# Crypto core or helper -# -CONFIG_CRYPTO_ALGAPI=y -CONFIG_CRYPTO_ALGAPI2=y -# CONFIG_CRYPTO_MANAGER is not set -# CONFIG_CRYPTO_MANAGER2 is not set -# CONFIG_CRYPTO_USER is not set -# CONFIG_CRYPTO_GF128MUL is not set -# CONFIG_CRYPTO_NULL is not set -# CONFIG_CRYPTO_CRYPTD is not set -# CONFIG_CRYPTO_AUTHENC is not set -# CONFIG_CRYPTO_TEST is not set - -# -# Authenticated Encryption with Associated Data -# -# CONFIG_CRYPTO_CCM is not set -# CONFIG_CRYPTO_GCM is not set -# CONFIG_CRYPTO_SEQIV is not set - -# -# Block modes -# -# CONFIG_CRYPTO_CBC is not set -# CONFIG_CRYPTO_CTR is not set -# CONFIG_CRYPTO_CTS is not set -# CONFIG_CRYPTO_ECB is not set -# CONFIG_CRYPTO_LRW is not set -# CONFIG_CRYPTO_PCBC is not set -# CONFIG_CRYPTO_XTS is not set - -# -# Hash modes -# -# CONFIG_CRYPTO_HMAC is not set -# CONFIG_CRYPTO_XCBC is not set -# CONFIG_CRYPTO_VMAC is not set - -# -# Digest -# -# CONFIG_CRYPTO_CRC32C is not set -# CONFIG_CRYPTO_CRC32C_INTEL is not set -# CONFIG_CRYPTO_CRC32 is not set -# CONFIG_CRYPTO_CRC32_PCLMUL is not set -# CONFIG_CRYPTO_GHASH is not set -# CONFIG_CRYPTO_MD4 is not set -# CONFIG_CRYPTO_MD5 is not set -# CONFIG_CRYPTO_MICHAEL_MIC is not set -# CONFIG_CRYPTO_RMD128 is not set -# CONFIG_CRYPTO_RMD160 is not set -# CONFIG_CRYPTO_RMD256 is not set -# CONFIG_CRYPTO_RMD320 is not set -# CONFIG_CRYPTO_SHA1 is not set -# CONFIG_CRYPTO_SHA256 is not set -# CONFIG_CRYPTO_SHA512 is not set -# CONFIG_CRYPTO_TGR192 is not set -# CONFIG_CRYPTO_WP512 is not set - -# -# Ciphers -# -CONFIG_CRYPTO_AES=y -# CONFIG_CRYPTO_AES_586 is not set -# CONFIG_CRYPTO_AES_NI_INTEL is not set -# CONFIG_CRYPTO_ANUBIS is not set -# CONFIG_CRYPTO_ARC4 is not set -# CONFIG_CRYPTO_BLOWFISH is not set -# CONFIG_CRYPTO_CAMELLIA is not set -# CONFIG_CRYPTO_CAST5 is not set -# CONFIG_CRYPTO_CAST6 is not set -# CONFIG_CRYPTO_DES is not set -# CONFIG_CRYPTO_FCRYPT is not set -# CONFIG_CRYPTO_KHAZAD is not set -# CONFIG_CRYPTO_SALSA20 is not set -# CONFIG_CRYPTO_SALSA20_586 is not set -# CONFIG_CRYPTO_SEED is not set -# CONFIG_CRYPTO_SERPENT is not set -# CONFIG_CRYPTO_SERPENT_SSE2_586 is not set -# CONFIG_CRYPTO_TEA is not set -# CONFIG_CRYPTO_TWOFISH is not set -# CONFIG_CRYPTO_TWOFISH_586 is not set - -# -# Compression -# -# CONFIG_CRYPTO_DEFLATE is not set -# CONFIG_CRYPTO_ZLIB is not set -# CONFIG_CRYPTO_LZO is not set - -# -# Random Number Generation -# -# CONFIG_CRYPTO_ANSI_CPRNG is not set -# CONFIG_CRYPTO_USER_API_HASH is not set -# CONFIG_CRYPTO_USER_API_SKCIPHER is not set -CONFIG_CRYPTO_HW=y -# CONFIG_CRYPTO_DEV_PADLOCK is not set -# CONFIG_CRYPTO_DEV_GEODE is not set -# CONFIG_CRYPTO_DEV_HIFN_795X is not set -CONFIG_HAVE_KVM=y -# CONFIG_VIRTUALIZATION is not set -# CONFIG_BINARY_PRINTF is not set - -# -# Library routines -# -CONFIG_BITREVERSE=y -CONFIG_GENERIC_STRNCPY_FROM_USER=y -CONFIG_GENERIC_STRNLEN_USER=y -CONFIG_GENERIC_FIND_FIRST_BIT=y -CONFIG_GENERIC_PCI_IOMAP=y -CONFIG_GENERIC_IOMAP=y -CONFIG_GENERIC_IO=y -# CONFIG_CRC_CCITT is not set -# CONFIG_CRC16 is not set -# CONFIG_CRC_T10DIF is not set -# CONFIG_CRC_ITU_T is not set -CONFIG_CRC32=y -# CONFIG_CRC32_SELFTEST is not set -CONFIG_CRC32_SLICEBY8=y -# CONFIG_CRC32_SLICEBY4 is not set -# CONFIG_CRC32_SARWATE is not set -# CONFIG_CRC32_BIT is not set -# CONFIG_CRC7 is not set -# CONFIG_LIBCRC32C is not set -# CONFIG_CRC8 is not set -# CONFIG_XZ_DEC is not set -# CONFIG_XZ_DEC_BCJ is not set -CONFIG_HAS_IOMEM=y -CONFIG_HAS_IOPORT=y -CONFIG_HAS_DMA=y -CONFIG_DQL=y -CONFIG_NLATTR=y -CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y -# CONFIG_AVERAGE is not set -# CONFIG_CORDIC is not set -# CONFIG_DDR is not set diff --git a/target/x86/kernel/ibm-x40 b/target/x86/kernel/ibm-x40 new file mode 100644 index 000000000..0d57d810a --- /dev/null +++ b/target/x86/kernel/ibm-x40 @@ -0,0 +1,27 @@ +CONFIG_X86_32=y +CONFIG_X86=y +CONFIG_MPENTIUMM=y +CONFIG_CPU_SUP_INTEL=y +CONFIG_NR_CPUS=1 +CONFIG_VM86=y +CONFIG_X86_REBOOTFIXUPS=y +CONFIG_PCI=y +CONFIG_PCI_GOANY=y +CONFIG_PCI_BIOS=y +CONFIG_PCI_DIRECT=y +CONFIG_PCI_DOMAINS=y +CONFIG_SCSI=y +CONFIG_SCSI_DMA=y +CONFIG_BLK_DEV_SD=y +CONFIG_ATA=y +CONFIG_SATA_PMP=y +CONFIG_ATA_SFF=y +CONFIG_ATA_BMDMA=y +CONFIG_ATA_PIIX=y +CONFIG_NET_VENDOR_INTEL=y +CONFIG_E1000=y +CONFIG_SERIAL_8250=y +CONFIG_SERIAL_8250_CONSOLE=y +CONFIG_FIX_EARLYCON_MEM=y +CONFIG_SERIAL_8250_NR_UARTS=2 +CONFIG_SERIAL_8250_RUNTIME_UARTS=2 diff --git a/target/x86/kernel/qemu-i686 b/target/x86/kernel/qemu-i686 index 802de7cca..7eb708745 100644 --- a/target/x86/kernel/qemu-i686 +++ b/target/x86/kernel/qemu-i686 @@ -5,21 +5,7 @@ CONFIG_PCI_GOANY=y CONFIG_PCI_BIOS=y CONFIG_PCI_DIRECT=y CONFIG_PCI_DOMAINS=y -CONFIG_SCSI=y -CONFIG_SCSI_DMA=y -CONFIG_BLK_DEV_SD=y -CONFIG_ATA=y -CONFIG_SATA_PMP=y -CONFIG_ATA_SFF=y -CONFIG_ATA_BMDMA=y -CONFIG_ATA_PIIX=y -CONFIG_NETDEVICES=y -CONFIG_NET_CORE=y -CONFIG_ETHERNET=y CONFIG_NET_VENDOR_INTEL=y CONFIG_E1000=y CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y -CONFIG_FIX_EARLYCON_MEM=y -CONFIG_SERIAL_8250_NR_UARTS=4 -CONFIG_SERIAL_8250_RUNTIME_UARTS=4 diff --git a/target/x86/sys-available/ibm-x40 b/target/x86/sys-available/ibm-x40 index 7dc75ebf4..80c5bf531 100644 --- a/target/x86/sys-available/ibm-x40 +++ b/target/x86/sys-available/ibm-x40 @@ -3,7 +3,6 @@ config ADK_TARGET_SYSTEM_IBM_X40 select ADK_x86 select ADK_ibm_x40 select ADK_CPU_PENTIUM_M - select ADK_KERNEL_MPENTIUMM select ADK_TARGET_CPU_WITH_MMX select ADK_TARGET_CPU_WITH_SSE select ADK_TARGET_CPU_WITH_SSE2 @@ -14,14 +13,14 @@ config ADK_TARGET_SYSTEM_IBM_X40 select ADK_TARGET_WITH_VGA select ADK_TARGET_WITH_INPUT select ADK_TARGET_WITH_RTC - select ADK_TARGET_WITH_CF select ADK_TARGET_WITH_MINIPCI select ADK_TARGET_WITH_HDD select ADK_TARGET_WITH_PCI select ADK_TARGET_WITH_ACPI # with docking station select ADK_TARGET_WITH_PP + select ADK_TARGET_WITH_ROOT_RW select ADK_TARGET_KERNEL_BZIMAGE + select ADK_PACKAGE_GRUB_BIN help System profile for IBM X40 laptop. - diff --git a/target/x86/sys-available/pcengines-alix1c b/target/x86/sys-available/pcengines-alix1c index b45be89a4..484439328 100644 --- a/target/x86/sys-available/pcengines-alix1c +++ b/target/x86/sys-available/pcengines-alix1c @@ -3,9 +3,6 @@ config ADK_TARGET_SYSTEM_PCENGINES_ALIX1C select ADK_x86 select ADK_pcengines_alix1c select ADK_CPU_GEODE - select ADK_KERNEL_MGEODE_LX - select ADK_KERNEL_PM - select ADK_KERNEL_ACPI select ADK_TARGET_CPU_WITH_3DNOW select ADK_TARGET_CPU_WITH_3DNOWEXT select ADK_TARGET_CPU_WITH_MMX @@ -17,7 +14,6 @@ config ADK_TARGET_SYSTEM_PCENGINES_ALIX1C select ADK_TARGET_WITH_VGA select ADK_TARGET_WITH_INPUT select ADK_TARGET_WITH_RTC - select ADK_TARGET_WITH_CF select ADK_TARGET_WITH_WATCHDOG select ADK_TARGET_WITH_USB_BOOT select ADK_TARGET_KERNEL_BZIMAGE diff --git a/target/x86/sys-available/pcengines-alix2d13 b/target/x86/sys-available/pcengines-alix2d13 index d0843cc4d..33e939348 100644 --- a/target/x86/sys-available/pcengines-alix2d13 +++ b/target/x86/sys-available/pcengines-alix2d13 @@ -3,7 +3,6 @@ config ADK_TARGET_SYSTEM_PCENGINES_ALIX2D13 select ADK_x86 select ADK_pcengines_alix2d13 select ADK_CPU_GEODE - select ADK_KERNEL_MGEODE_LX select ADK_TARGET_CPU_WITH_3DNOW select ADK_TARGET_CPU_WITH_3DNOWEXT select ADK_TARGET_CPU_WITH_MMX @@ -13,7 +12,6 @@ config ADK_TARGET_SYSTEM_PCENGINES_ALIX2D13 select ADK_TARGET_WITH_RTC select ADK_TARGET_WITH_LEDS select ADK_TARGET_WITH_WATCHDOG - select ADK_TARGET_WITH_CF select ADK_TARGET_KERNEL_BZIMAGE depends on ADK_BROKEN help diff --git a/target/x86/sys-available/pcengines-alix2d2 b/target/x86/sys-available/pcengines-alix2d2 index fd83a700a..a48bec2cc 100644 --- a/target/x86/sys-available/pcengines-alix2d2 +++ b/target/x86/sys-available/pcengines-alix2d2 @@ -12,7 +12,6 @@ config ADK_TARGET_SYSTEM_PCENGINES_ALIX2D2 select ADK_TARGET_WITH_USB select ADK_TARGET_WITH_LEDS select ADK_TARGET_WITH_WATCHDOG - select ADK_TARGET_WITH_CF select ADK_TARGET_KERNEL_BZIMAGE depends on ADK_BROKEN help diff --git a/target/x86/sys-available/pcengines-wrap b/target/x86/sys-available/pcengines-wrap index 2fa4e13c4..50db08ccf 100644 --- a/target/x86/sys-available/pcengines-wrap +++ b/target/x86/sys-available/pcengines-wrap @@ -4,7 +4,6 @@ config ADK_TARGET_SYSTEM_PCENGINES_WRAP select ADK_pcengines_wrap select ADK_CPU_I486 select ADK_KERNEL_I486 - select ADK_TARGET_WITH_CF select ADK_TARGET_WITH_MINIPCI select ADK_TARGET_WITH_WATCHDOG select ADK_TARGET_KERNEL_BZIMAGE diff --git a/target/x86/sys-available/qemu-i686 b/target/x86/sys-available/qemu-i686 index 42f818a14..b047bc482 100644 --- a/target/x86/sys-available/qemu-i686 +++ b/target/x86/sys-available/qemu-i686 @@ -5,7 +5,6 @@ config ADK_TARGET_SYSTEM_QEMU_I686 select ADK_CPU_I686 select ADK_HARDWARE_QEMU select ADK_TARGET_KERNEL_BZIMAGE - select ADK_USE_KERNEL_MINICONFIG help Support for Qemu Emulator (i686). diff --git a/target/x86/sys-available/toolchain-i686 b/target/x86/sys-available/toolchain-i686 index bec515fca..b7c3be238 100644 --- a/target/x86/sys-available/toolchain-i686 +++ b/target/x86/sys-available/toolchain-i686 @@ -4,7 +4,7 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_X86 select ADK_toolchain_x86 select ADK_CPU_I686 select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help Build a x86 toolchain (i686 optimized). diff --git a/target/x86/target.mk b/target/x86/target.mk index 30e558283..ecb811221 100644 --- a/target/x86/target.mk +++ b/target/x86/target.mk @@ -1,5 +1,4 @@ include $(TOPDIR)/mk/kernel-ver.mk ARCH:= x86 CPU_ARCH:= $(strip $(subst ",, $(ADK_TARGET_CPU_ARCH))) -TARGET_OPTIMIZATION:= -Os -pipe TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS) diff --git a/target/x86_64/Makefile b/target/x86_64/Makefile index 596f2923f..c94c3a1a6 100644 --- a/target/x86_64/Makefile +++ b/target/x86_64/Makefile @@ -20,6 +20,12 @@ ifeq ($(ADK_TARGET_SYSTEM_QEMU_X86_64),y) @echo 'qemu-system-x86_64 ${ADK_QEMU_ARGS} -net user -net nic,model=e1000 -kernel $(FW_DIR)/$(TARGET_KERNEL) qemu-${CPU_ARCH}.img' endif endif +ifeq ($(ADK_TARGET_FS),initramfsarchive) +imageinstall: $(FW_DIR)/$(ROOTFSUSERTARBALL) + @cp $(KERNEL) $(FW_DIR)/$(TARGET_KERNEL) + @echo 'The kernel file is: $(FW_DIR)/${TARGET_KERNEL}' + @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSUSERTARBALL)" +endif ifeq ($(ADK_TARGET_FS),usb) imageinstall: $(FW_DIR)/$(ROOTFSTARBALL) @echo "The RootFS tarball is: $(FW_DIR)/$(ROOTFSTARBALL)" diff --git a/target/x86_64/kernel/qemu-x86_64 b/target/x86_64/kernel/qemu-x86_64 index fa22835b8..baad58c81 100644 --- a/target/x86_64/kernel/qemu-x86_64 +++ b/target/x86_64/kernel/qemu-x86_64 @@ -1,5 +1,4 @@ CONFIG_X86=y -CONFIG_64BIT=y CONFIG_X86_64=y CONFIG_GENERIC_CPU=y CONFIG_PROCESSOR_SELECT=y @@ -19,22 +18,8 @@ CONFIG_ISA_DMA_API=y CONFIG_AMD_NB=y CONFIG_IA32_EMULATION=y CONFIG_X86_X32=y -CONFIG_SCSI=y -CONFIG_SCSI_DMA=y -CONFIG_BLK_DEV_SD=y -CONFIG_ATA=y -CONFIG_SATA_PMP=y -CONFIG_ATA_SFF=y -CONFIG_ATA_BMDMA=y -CONFIG_ATA_PIIX=y -CONFIG_NETDEVICES=y -CONFIG_NET_CORE=y -CONFIG_ETHERNET=y CONFIG_NET_VENDOR_INTEL=y CONFIG_E1000=y CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_PNP=y CONFIG_SERIAL_8250_CONSOLE=y -CONFIG_FIX_EARLYCON_MEM=y -CONFIG_SERIAL_8250_NR_UARTS=4 -CONFIG_SERIAL_8250_RUNTIME_UARTS=4 diff --git a/target/x86_64/sys-available/qemu-x86_64 b/target/x86_64/sys-available/qemu-x86_64 index 36e3d34b4..5067a8ecf 100644 --- a/target/x86_64/sys-available/qemu-x86_64 +++ b/target/x86_64/sys-available/qemu-x86_64 @@ -2,12 +2,11 @@ config ADK_TARGET_SYSTEM_QEMU_X86_64 bool "Qemu Emulator" select ADK_x86_64 select ADK_qemu_x86_64 + select ADK_64 select ADK_CPU_X86_64 select ADK_LINUX_64 select ADK_HARDWARE_QEMU - select ADK_TARGET_KERNEL_MAY_64BIT select ADK_TARGET_KERNEL_BZIMAGE - select ADK_USE_KERNEL_MINICONFIG help Support for Qemu Emulator. diff --git a/target/x86_64/sys-available/qemu-x86_64_x32 b/target/x86_64/sys-available/qemu-x86_64_x32 new file mode 100644 index 000000000..9108c7951 --- /dev/null +++ b/target/x86_64/sys-available/qemu-x86_64_x32 @@ -0,0 +1,12 @@ +config ADK_TARGET_SYSTEM_QEMU_X86_64_X32 + bool "Qemu Emulator (x86_64 with X32 ABI)" + select ADK_x86_64 + select ADK_qemu_x86_64 + select ADK_x32 + select ADK_CPU_X86_64 + select ADK_LINUX_64 + select ADK_HARDWARE_QEMU + select ADK_TARGET_KERNEL_BZIMAGE + help + Support for Qemu Emulator. + diff --git a/target/x86_64/sys-available/toolchain-x86_64 b/target/x86_64/sys-available/toolchain-x86_64 index c268e9687..b93b479a1 100644 --- a/target/x86_64/sys-available/toolchain-x86_64 +++ b/target/x86_64/sys-available/toolchain-x86_64 @@ -1,10 +1,12 @@ config ADK_TARGET_SYSTEM_TOOLCHAIN_X86_64 bool "Toolchain only" select ADK_x86_64 + select ADK_64 select ADK_toolchain_x86_64 select ADK_CPU_X86_64 + select ADK_LINUX_64 select ADK_TOOLCHAIN - select ADK_TARGET_PACKAGE_TGZ + select ADK_TARGET_PACKAGE_TXZ help Build a x86_64 toolchain. diff --git a/target/x86_64/sys-available/toolchain-x86_64_32 b/target/x86_64/sys-available/toolchain-x86_64_32 new file mode 100644 index 000000000..9e8297ea4 --- /dev/null +++ b/target/x86_64/sys-available/toolchain-x86_64_32 @@ -0,0 +1,12 @@ +config ADK_TARGET_SYSTEM_TOOLCHAIN_X86_64_32 + bool "Toolchain only (32 ABI)" + select ADK_x86_64 + select ADK_32 + select ADK_toolchain_x86_64 + select ADK_CPU_X86_64 + select ADK_LINUX_64 + select ADK_TOOLCHAIN + select ADK_TARGET_PACKAGE_TXZ + help + Build a x86_64 toolchain. + diff --git a/target/x86_64/sys-available/toolchain-x86_64_x32 b/target/x86_64/sys-available/toolchain-x86_64_x32 new file mode 100644 index 000000000..22d94171f --- /dev/null +++ b/target/x86_64/sys-available/toolchain-x86_64_x32 @@ -0,0 +1,12 @@ +config ADK_TARGET_SYSTEM_TOOLCHAIN_X86_64_X32 + bool "Toolchain only (x32 ABI)" + select ADK_x86_64 + select ADK_x32 + select ADK_toolchain_x86_64 + select ADK_CPU_X86_64 + select ADK_LINUX_64 + select ADK_TOOLCHAIN + select ADK_TARGET_PACKAGE_TXZ + help + Build a x86_64 toolchain. + diff --git a/target/x86_64/target.mk b/target/x86_64/target.mk index 3eed00bf5..f381673fa 100644 --- a/target/x86_64/target.mk +++ b/target/x86_64/target.mk @@ -1,5 +1,4 @@ include $(TOPDIR)/mk/kernel-ver.mk ARCH:= x86 CPU_ARCH:= x86_64 -TARGET_OPTIMIZATION:= -Os -pipe TARGET_CFLAGS_ARCH:= $(ADK_TARGET_CFLAGS) diff --git a/toolchain/Config.in b/toolchain/Config.in index d6a578233..54016212a 100644 --- a/toolchain/Config.in +++ b/toolchain/Config.in @@ -1,7 +1,3 @@ -config ADK_TOOLCHAIN_GCC_SJLJ - boolean - default n - menu "Toolchain settings" config ADK_TOOLCHAIN_GDB @@ -17,7 +13,7 @@ config ADK_TOOLCHAIN_GCC_CXX config ADK_TOOLCHAIN_GCC_SSP prompt "Enable Stack Smashing Protection in GCC" boolean - default n + default y config ADK_TOOLCHAIN_GCC_USE_SSP prompt "Use SSP for all packages" @@ -28,7 +24,7 @@ config ADK_TOOLCHAIN_GCC_USE_SSP config ADK_TOOLCHAIN_GCC_LTO prompt "Enable Link Time Optimization in GCC" boolean - default n + default y config ADK_TOOLCHAIN_GCC_USE_LTO prompt "Use Link Time Optimization for all packages" diff --git a/toolchain/Makefile b/toolchain/Makefile index db5f65fd5..c70ea9820 100644 --- a/toolchain/Makefile +++ b/toolchain/Makefile @@ -53,17 +53,11 @@ else $(LIBC)-fixup: gcc-install endif -$(STAGING_HOST_DIR): - @mkdir -p $(STAGING_HOST_DIR)/lib - @mkdir -p $(STAGING_HOST_DIR)/include - @mkdir -p $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME) - @ln -sf ../lib $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)/lib - %-download: $(TRACE) toolchain/$(patsubst %-download,%,$@)/download $(MAKE) -C $(patsubst %-download,%,$@) fetch -%-prepare: $(STAGING_HOST_DIR) +%-prepare: $(TRACE) toolchain/$(patsubst %-prepare,%,$@)/prepare @if test x"$(patsubst %-prepare,%,$@)" = x"$(LIBC)"; then \ $(MAKE) -C $(patsubst %-prepare,%,$@) prepare \ diff --git a/toolchain/binutils/Makefile b/toolchain/binutils/Makefile index 8ebbea53c..4d34e3566 100644 --- a/toolchain/binutils/Makefile +++ b/toolchain/binutils/Makefile @@ -16,10 +16,16 @@ ifeq ($(ADK_TARGET_SYSTEM_RASPBERRY_PI),y) CONFOPTS+= --with-arch=armv6 endif -ifneq ($(strip $(ADK_LINUX_64)$(ADK_TARGET_KERNEL64)),) +ifneq ($(ADK_LINUX_64),) CONFOPTS+= --enable-64-bit-bfd endif +ifeq ($(ADK_LINUX_SH)$(ADK_LINUX_X86_64),) +CONFOPTS+= --disable-multilib +else +CONFOPTS+= --enable-multilib +endif + ifeq (${ADK_MAKE_PARALLEL},y) BINUTILS_MAKEOPTS+= -j${ADK_MAKE_JOBS} endif @@ -28,10 +34,9 @@ $(WRKBUILD)/.headers: $(WRKBUILD)/.configured: (cd $(WRKBUILD); \ $(WRKBUILD)/configure \ - --prefix=$(STAGING_HOST_DIR) \ + --prefix=$(TOOLCHAIN_DIR)/usr \ --target=$(GNU_TARGET_NAME) \ --with-sysroot=$(STAGING_TARGET_DIR) \ - --disable-multilib \ --disable-dependency-tracking \ --disable-libtool-lock \ --disable-nls \ @@ -49,7 +54,7 @@ $(WRKBUILD)/.installed: $(WRKBUILD)/.compiled $(MAKE) -C $(WRKBUILD) install # needed on hosts without readelf, but strange things happen on Cygwin. ifeq (${OStype},Darwin) - $(CP) $(WRKBUILD)/binutils/readelf $(STAGING_HOST_DIR)/bin + $(CP) $(WRKBUILD)/binutils/readelf $(TOOLCHAIN_DIR)/usr/bin endif touch $@ diff --git a/toolchain/binutils/Makefile.inc b/toolchain/binutils/Makefile.inc index 16cfc47df..a7a2c3980 100644 --- a/toolchain/binutils/Makefile.inc +++ b/toolchain/binutils/Makefile.inc @@ -3,7 +3,6 @@ PKG_NAME:= binutils PKG_VERSION:= 2.24 -PKG_MD5SUM:= e0f71a7b2ddab0f8612336ac81d9636b +PKG_MD5SUM:= a5dd5dd2d212a282cc1d4a84633e0d88 PKG_RELEASE:= 1 PKG_SITES:= ${MASTER_SITE_GNU:=binutils/} -DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.bz2 diff --git a/toolchain/gcc/Makefile b/toolchain/gcc/Makefile index d7527442f..611de97bf 100644 --- a/toolchain/gcc/Makefile +++ b/toolchain/gcc/Makefile @@ -4,21 +4,22 @@ include $(TOPDIR)/rules.mk include ../rules.mk -TARGET_CFLAGS:= $(filter-out -fstack-protector,$(TARGET_CFLAGS)) +TARGET_CFLAGS:= $(filter-out -fstack-protector,$(TARGET_CFLAGS)) include Makefile.inc -GCC_CONFOPTS= --prefix=$(STAGING_HOST_DIR) \ +GCC_CONFOPTS:= --prefix=$(TOOLCHAIN_DIR)/usr \ --with-bugurl="http://www.openadk.org/" \ --build=$(GNU_HOST_NAME) \ --host=$(GNU_HOST_NAME) \ --target=$(GNU_TARGET_NAME) \ - --with-gmp=$(STAGING_HOST_DIR) \ - --with-mpfr=$(STAGING_HOST_DIR) \ - --with-libelf=$(STAGING_HOST_DIR) \ + --with-gmp=$(STAGING_HOST_DIR)/usr \ + --with-mpfr=$(STAGING_HOST_DIR)/usr \ + --with-libelf=$(STAGING_HOST_DIR)/usr \ --disable-__cxa_atexit \ --with-gnu-ld \ --with-gnu-as \ + --enable-tls \ --disable-libsanitizer \ --disable-libitm \ --disable-libmudflap \ @@ -27,51 +28,43 @@ GCC_CONFOPTS= --prefix=$(STAGING_HOST_DIR) \ --disable-libstdcxx-pch \ --disable-ppl-version-check \ --disable-cloog-version-check \ + --with-system-zlib \ --without-ppl \ --without-cloog \ --without-isl \ --disable-nls -ifeq ($(ADK_TOOLCHAIN_GCC_SJLJ),y) -GCC_CONFOPTS+= --enable-sjlj-exceptions -else -GCC_CONFOPTS+= --disable-sjlj-exceptions -endif - +GCC_FINAL_CONFOPTS:= ifeq ($(ADK_LINUX_SH)$(ADK_LINUX_X86_64),) -GCC_CONFOPTS+= --disable-biarch --disable-multilib +GCC_FINAL_CONFOPTS+= --disable-biarch --disable-multilib endif + ifeq ($(ADK_LINUX_SH),y) -GCC_CONFOPTS+= --with-multilib-list=m4,m4-nofpu +GCC_FINAL_CONFOPTS+= --enable-multilib --with-multilib-list=m4,m4-nofpu endif + ifeq ($(ADK_LINUX_X86_64),y) ifeq ($(ADK_x32),y) -GCC_CONFOPTS+= --with-multilib-list=mx32 -else -GCC_CONFOPTS+= --disable-biarch --disable-multilib +GCC_FINAL_CONFOPTS+= --with-abi=x32 +endif +ifeq ($(ADK_32),y) +GCC_FINAL_CONFOPTS+= --with-abi=32 +endif +ifeq ($(ADK_64),y) +GCC_FINAL_CONFOPTS+= --disable-biarch --disable-multilib endif endif ifeq ($(ADK_TOOLCHAIN_GCC_SSP),y) -GCC_CONFOPTS+= --enable-libssp +GCC_FINAL_CONFOPTS+= --enable-libssp else -GCC_CONFOPTS+= --disable-libssp +GCC_FINAL_CONFOPTS+= --disable-libssp endif ifeq ($(ADK_TOOLCHAIN_GCC_LTO),y) -GCC_CONFOPTS+= --enable-lto +GCC_FINAL_CONFOPTS+= --enable-lto else -GCC_CONFOPTS+= --disable-lto -endif - -ifeq ($(ARCH),m68k) -ifeq ($(ADK_TARGET_LIBC),uclibc) -GCC_CONFOPTS+= --disable-tls -else -GCC_CONFOPTS+= --enable-tls -endif -else -GCC_CONFOPTS+= --enable-tls +GCC_FINAL_CONFOPTS+= --disable-lto endif ifeq ($(ADK_LINUX_PPC),y) @@ -87,6 +80,9 @@ endif ifeq ($(ARCH),arm) GCC_CONFOPTS+= --with-float=$(ADK_TARGET_FLOAT) GCC_CONFOPTS+= --with-mode=$(ADK_TARGET_ARM_MODE) +ifneq ($(ADK_TARGET_FPU),) +GCC_CONFOPTS+= --with-fpu=$(ADK_TARGET_FPU) +endif endif ifeq ($(ADK_CPU_ARM926EJ_S),y) @@ -94,11 +90,11 @@ GCC_CONFOPTS+= --with-arch=armv5te --with-tune=arm1176jzf-s endif ifeq ($(ADK_CPU_ARM1176JZF_S),y) -GCC_CONFOPTS+= --with-arch=armv6 --with-tune=arm1176jzf-s --with-fpu=vfp +GCC_CONFOPTS+= --with-arch=armv6 --with-tune=arm1176jzf-s endif ifeq ($(ADK_CPU_CORTEX_A9),y) -GCC_CONFOPTS+= --with-arch=armv7-a --with-tune=cortex-a9 --with-fpu=neon +GCC_CONFOPTS+= --with-arch=armv7-a --with-tune=cortex-a9 endif ifeq ($(ADK_CPU_SPARC_V9),y) @@ -127,20 +123,27 @@ GCC_BUILD_DIR_FINAL:= $(WRKBUILD)-final $(GCC_BUILD_DIR_MINIMAL)/.configured: mkdir -p $(GCC_BUILD_DIR_MINIMAL) # these symlinks are very important, do not remove - rm -rf $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)/sys-include - ln -sf ${STAGING_TARGET_DIR}/usr/include $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)/sys-include - rm -rf ${STAGING_HOST_DIR}/$(GNU_TARGET_NAME)/lib - ln -sf ${STAGING_TARGET_DIR}/lib $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)/lib + rm -rf $(TOOLCHAIN_DIR)/usr/$(GNU_TARGET_NAME)/sys-include + mkdir -p $(TOOLCHAIN_DIR)/usr/$(GNU_TARGET_NAME) + (cd $(TOOLCHAIN_DIR)/usr/$(GNU_TARGET_NAME); \ + ln -s ../$(STAGING_HOST2TARGET)/usr/include sys-include) + rm -rf ${TOOLCHAIN_DIR}/usr/$(GNU_TARGET_NAME)/lib + (cd $(TOOLCHAIN_DIR)/usr/$(GNU_TARGET_NAME); \ + ln -s ../$(STAGING_HOST2TARGET)/lib lib) ifeq ($(ADK_LINUX_SH),y) (cd ${STAGING_TARGET_DIR}/ && ln -sf . m4 && ln -sf . m4-nofpu) endif - sed -i '/k prot/agcc_cv_libc_provides_ssp=yes' $(WRKBUILD)/gcc/configure - cd $(GCC_BUILD_DIR_MINIMAL); PATH='$(TARGET_PATH)' \ + $(SED) '/k prot/agcc_cv_libc_provides_ssp=yes' $(WRKBUILD)/gcc/configure + cd $(GCC_BUILD_DIR_MINIMAL); \ + PATH='$(TARGET_PATH)' \ CFLAGS="-O0 -g0" \ CXXFLAGS="-O0 -g0" \ $(WRKBUILD)/configure \ ${GCC_CONFOPTS} \ --enable-languages=c \ + --disable-multilib \ + --disable-lto \ + --disable-libssp \ --disable-shared \ --without-headers touch $@ @@ -155,11 +158,13 @@ $(WRKBUILD)/.headers: $(GCC_BUILD_DIR_MINIMAL)/.compiled $(GCC_BUILD_DIR_INITIAL)/.configured: mkdir -p $(GCC_BUILD_DIR_INITIAL) - cd $(GCC_BUILD_DIR_INITIAL); PATH='$(TARGET_PATH)' \ + cd $(GCC_BUILD_DIR_INITIAL); \ + PATH='$(TARGET_PATH)' \ CFLAGS="-O0 -g0" \ CXXFLAGS="-O0 -g0" \ $(WRKBUILD)/configure \ ${GCC_CONFOPTS} \ + ${GCC_FINAL_CONFOPTS} \ --enable-languages=c \ --disable-shared \ --disable-threads \ @@ -177,9 +182,11 @@ $(WRKBUILD)/.configured: $(GCC_BUILD_DIR_INITIAL)/.compiled $(GCC_BUILD_DIR_FINAL)/.configured: mkdir -p $(GCC_BUILD_DIR_FINAL) - cd $(GCC_BUILD_DIR_FINAL); PATH='$(TARGET_PATH)' \ + cd $(GCC_BUILD_DIR_FINAL); \ + PATH='$(TARGET_PATH)' \ $(WRKBUILD)/configure \ ${GCC_CONFOPTS} \ + ${GCC_FINAL_CONFOPTS} \ --enable-languages=$(LANGUAGES) \ --with-build-sysroot='$${prefix}/${STAGING_HOST2TARGET}' \ --with-sysroot='$${prefix}/${STAGING_HOST2TARGET}' \ @@ -194,33 +201,17 @@ $(WRKBUILD)/.installed: $(WRKBUILD)/.compiled PATH='$(TARGET_PATH)' $(MAKE) -C $(GCC_BUILD_DIR_FINAL) install # remove duplicate tools, convert hardlinks to symlinks set -e; \ - cd $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)/bin; \ + cd $(TOOLCHAIN_DIR)/usr/$(GNU_TARGET_NAME)/bin; \ for app in ar as c++ g++ gcc ld ld.bfd nm objcopy objdump ranlib strip; do \ ln -sf ../../bin/$(GNU_TARGET_NAME)-$${app} $${app}; \ done; - (cd $(STAGING_HOST_DIR)/bin && \ + (cd $(TOOLCHAIN_DIR)/usr/bin && \ ln -sf $(GNU_TARGET_NAME)-gcc $(GNU_TARGET_NAME)-gcc-${PKG_VERSION}) - # setup symlink, so that gcc/g++ find cc1plus - (cd $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)/ && \ - ln -sf ../libexec .) - # setup symlink, so that gcc/g++ find stddef.h - (cd $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)/lib/ && \ - ln -sf ../../host_${CPU_ARCH}_${ADK_TARGET_LIBC}_${ADK_TARGET_SUFFIX}/lib/gcc .) - # fix linking g++ apps with libtool - @-test -d $(STAGING_TARGET_DIR)/lib32 && \ - cd $(STAGING_TARGET_DIR)/lib32 && \ - ln -sf libstdc++.so.6.0.18 libstdc++.so && \ - ln -sf libstdc++.so.6.0.18 libstdc++.so.6 - @-test -d $(STAGING_TARGET_DIR)/libx32 && \ - cd $(STAGING_TARGET_DIR)/libx32 && \ - ln -sf libstdc++.so.6.0.18 libstdc++.so && \ - ln -sf libstdc++.so.6.0.18 libstdc++.so.6 - @-test -d $(STAGING_TARGET_DIR)/lib64 && \ - cd $(STAGING_TARGET_DIR)/lib64 && \ + cd $(STAGING_TARGET_DIR)/lib && \ ln -sf libstdc++.so.6.0.18 libstdc++.so && \ ln -sf libstdc++.so.6.0.18 libstdc++.so.6 # cleanup unneeded docs - rm -rf $(STAGING_HOST_DIR)/share + rm -rf $(TOOLCHAIN_DIR)/usr/share touch $@ include ${TOPDIR}/mk/toolchain.mk diff --git a/toolchain/gcc/Makefile.inc b/toolchain/gcc/Makefile.inc index 86a0a5992..21720e4aa 100644 --- a/toolchain/gcc/Makefile.inc +++ b/toolchain/gcc/Makefile.inc @@ -2,8 +2,12 @@ # material, please see the LICENCE file in the top-level directory. PKG_NAME:= gcc +ifeq ($(ADK_LINUX_SPARC),y) +PKG_VERSION:= 4.7.3 +PKG_MD5SUM:= 86f428a30379bdee0224e353ee2f999e +else PKG_VERSION:= 4.8.2 -PKG_MD5SUM:= a3d7d63b9cb6b6ea049469a0c4a43c9d +PKG_MD5SUM:= deca88241c1135e2ff9fa5486ab5957b +endif PKG_RELEASE:= 1 PKG_SITES:= ${MASTER_SITE_GNU:=gcc/gcc-${PKG_VERSION}/} -DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.bz2 diff --git a/toolchain/gcc/patches/4.8.2/abi32.patch b/toolchain/gcc/patches/4.8.2/abi32.patch new file mode 100644 index 000000000..856d608bd --- /dev/null +++ b/toolchain/gcc/patches/4.8.2/abi32.patch @@ -0,0 +1,54 @@ +diff -Nur gcc-4.8.2.orig/gcc/config/i386/biarch32.h gcc-4.8.2/gcc/config/i386/biarch32.h +--- gcc-4.8.2.orig/gcc/config/i386/biarch32.h 1970-01-01 01:00:00.000000000 +0100 ++++ gcc-4.8.2/gcc/config/i386/biarch32.h 2014-03-23 20:33:52.000000000 +0100 +@@ -0,0 +1,27 @@ ++/* Make configure files to produce biarch compiler defaulting to 32bit mode. ++ This file must be included very first, while the OS specific file later ++ to overwrite otherwise wrong defaults. ++ Copyright (C) 2001-2014 Free Software Foundation, Inc. ++ ++This file is part of GCC. ++ ++GCC is free software; you can redistribute it and/or modify ++it under the terms of the GNU General Public License as published by ++the Free Software Foundation; either version 3, or (at your option) ++any later version. ++ ++GCC is distributed in the hope that it will be useful, ++but WITHOUT ANY WARRANTY; without even the implied warranty of ++MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ++GNU General Public License for more details. ++ ++Under Section 7 of GPL version 3, you are granted additional ++permissions described in the GCC Runtime Library Exception, version ++3.1, as published by the Free Software Foundation. ++ ++You should have received a copy of the GNU General Public License and ++a copy of the GCC Runtime Library Exception along with this program; ++see the files COPYING3 and COPYING.RUNTIME respectively. If not, see ++<http://www.gnu.org/licenses/>. */ ++ ++#define TARGET_64BIT_DEFAULT 0 +diff -Nur gcc-4.8.2.orig/gcc/config.gcc gcc-4.8.2/gcc/config.gcc +--- gcc-4.8.2.orig/gcc/config.gcc 2013-10-03 02:47:24.000000000 +0200 ++++ gcc-4.8.2/gcc/config.gcc 2014-03-22 13:15:18.000000000 +0100 +@@ -522,6 +522,9 @@ + 64 | m64) + tm_file="i386/biarch64.h ${tm_file}" + ;; ++ 32 | m32) ++ tm_file="i386/biarch32.h ${tm_file}" ++ ;; + x32 | mx32) + tm_file="i386/biarchx32.h ${tm_file}" + ;; +@@ -1343,6 +1346,9 @@ + x32 | mx32) + x86_multilibs="mx32" + ;; ++ 32 | m32) ++ x86_multilibs="m32" ++ ;; + *) + x86_multilibs="m64,m32" + ;; diff --git a/toolchain/gdb/Makefile.inc b/toolchain/gdb/Makefile.inc index 23912e1e6..c3807f8fe 100644 --- a/toolchain/gdb/Makefile.inc +++ b/toolchain/gdb/Makefile.inc @@ -3,7 +3,6 @@ PKG_NAME:= gdb PKG_VERSION:= 7.7 -PKG_MD5SUM:= 271a18f41858a7e98b28ae4eb91287c9 +PKG_MD5SUM:= 40051ff95b39bd57b14b1809e2c16152 PKG_RELEASE:= 1 PKG_SITES:= ${MASTER_SITE_GNU:=gdb/} -DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.bz2 diff --git a/toolchain/glibc/Makefile b/toolchain/glibc/Makefile index 41987bada..44f73c1ff 100644 --- a/toolchain/glibc/Makefile +++ b/toolchain/glibc/Makefile @@ -5,13 +5,13 @@ include $(TOPDIR)/rules.mk include ../rules.mk # glibc does not compile with Os -TARGET_CFLAGS_LIBC:= $(subst Os,O2,$(TARGET_CFLAGS_LIBC)) +TARGET_CFLAGS:= $(subst Os,O2,$(TARGET_CFLAGS)) ifneq ($(ADK_DEBUG),) -TARGET_CFLAGS_LIBC+= -O2 +TARGET_CFLAGS+= -O2 endif # ssp partially supported -TARGET_CFLAGS_LIBC:= $(filter-out -fstack-protector,$(TARGET_CFLAGS_LIBC)) +TARGET_CFLAGS:= $(filter-out -fstack-protector,$(TARGET_CFLAGS)) include Makefile.inc include ${TOPDIR}/mk/buildhlp.mk @@ -64,19 +64,18 @@ $(WRKBUILD)/.installed: ${GLIBC_ENV} $(MAKE) -C $(GLIBC_BUILD_DIR_FINAL) install_root=$(STAGING_TARGET_DIR) install mkdir -p ${STAGING_TARGET_DIR}/etc ${INSTALL_DATA} ${WRKBUILD}/posix/gai.conf ${STAGING_TARGET_DIR}/etc - ${INSTALL_DATA} ${WRKBUILD}/nscd/nscd.conf ${STAGING_TARGET_DIR}/etc ${INSTALL_DATA} ${WRKBUILD}/nss/nsswitch.conf ${STAGING_TARGET_DIR}/etc touch $@ $(WRKBUILD)/.fixup: -find $(STAGING_TARGET_DIR) $(STAGING_HOST_DIR) -name \*.la -delete - -find $(STAGING_TARGET_DIR) -type f -name \*_pic\* -delete rm -rf $(STAGING_TARGET_DIR)/usr/share/locale $(STAGING_TARGET_DIR)/usr/share/i18n rm -rf $(STAGING_TARGET_DIR)/usr/lib/gconv ifeq ($(ADK_TOOLCHAIN),y) # strip target libs and host tools for toolchain builds - PATH="$(TARGET_PATH)" debug='0' prefix='${TARGET_CROSS}' ${BASH} ${SCRIPT_DIR}/rstrip.sh $(STAGING_TARGET_DIR) - debug='0' prefix=' ' ${BASH} ${SCRIPT_DIR}/rstrip.sh $(STAGING_HOST_DIR)/bin $(STAGING_HOST_DIR)/$(GNU_TARGET_NAME)/ + PATH="$(TARGET_PATH)" debug='0' prefix='${TARGET_CROSS}' ${BASH} ${SCRIPT_DIR}/rstrip.sh \ + $(STAGING_TARGET_DIR) $(TOOLCHAIN_DIR)/usr/lib/gcc/$(GNU_TARGET_NAME) + debug='0' prefix=' ' ${BASH} ${SCRIPT_DIR}/rstrip.sh $(TOOLCHAIN_DIR)/usr/bin endif touch $@ diff --git a/toolchain/glibc/Makefile.inc b/toolchain/glibc/Makefile.inc index 3c1a3167d..3a9f24e33 100644 --- a/toolchain/glibc/Makefile.inc +++ b/toolchain/glibc/Makefile.inc @@ -6,8 +6,13 @@ PKG_VERSION:= 2.19 PKG_RELEASE:= 1 PKG_MD5SUM:= 5374d29864b583622b62bfc6b8429418 PKG_SITES:= ${MASTER_SITE_GNU:=glibc/} +ifeq ($(ADK_32),y) +GLIBC_TARGET_NAME:= i686-openadk-linux-gnu +else +GLIBC_TARGET_NAME:= $(GNU_TARGET_NAME) +endif GLIBC_CONFOPTS:= --build=$(GNU_HOST_NAME) \ - --host=$(GNU_TARGET_NAME) \ + --host=$(GLIBC_TARGET_NAME) \ --with-headers=$(STAGING_TARGET_DIR)/usr/include \ --disable-sanity-checks \ --disable-nls \ @@ -21,16 +26,15 @@ GLIBC_CONFOPTS:= --build=$(GNU_HOST_NAME) \ --enable-kernel="2.6.32" \ --enable-add-ons GLIBC_ENV:= PATH='${TARGET_PATH}' \ + SHELL='${SHELL}' \ BUILD_CC=${CC_FOR_BUILD} \ - CFLAGS="$(TARGET_CFLAGS_LIBC)" \ - CC=${GNU_TARGET_NAME}-gcc \ - CXX=${GNU_TARGET_NAME}-g++ \ - AR=${GNU_TARGET_NAME}-ar \ - RANLIB=${GNU_TARGET_NAME}-ranlib \ + CFLAGS="$(TARGET_CFLAGS)" \ + CC="${TARGET_CC}" \ + CXX="${TARGET_CXX}" \ + AR="${TARGET_AR}" \ + RANLIB="${TARGET_RANLIB}" \ libc_cv_forced_unwind=yes \ libc_cv_cc_with_libunwind=yes \ libc_cv_c_cleanup=yes \ libc_cv_gnu99_inline=yes \ - libc_cv_sparc64_tls=yes \ - libc_cv_slibdir="/lib" \ libc_cv_initfini_array=yes \ diff --git a/toolchain/gmp/Makefile b/toolchain/gmp/Makefile index 692216b97..3e6e6c626 100644 --- a/toolchain/gmp/Makefile +++ b/toolchain/gmp/Makefile @@ -15,9 +15,10 @@ $(WRKBUILD)/.configured: ifneq ($(OStype),Darwin) (cd $(WRKBUILD); cp configfsf.guess config.guess) endif - (cd $(WRKBUILD); PATH="$(STAGING_HOST_DIR)/usr/bin:$$PATH" \ + (cd $(WRKBUILD); \ + PATH="$(STAGING_HOST_DIR)/usr/bin:$$PATH" \ ./configure \ - --prefix=$(STAGING_HOST_DIR) \ + --prefix=$(STAGING_HOST_DIR)/usr \ --with-pic \ --disable-shared \ --enable-static \ diff --git a/toolchain/kernel-headers/Makefile b/toolchain/kernel-headers/Makefile index 4303accdc..89ebf340f 100644 --- a/toolchain/kernel-headers/Makefile +++ b/toolchain/kernel-headers/Makefile @@ -4,12 +4,12 @@ include $(TOPDIR)/rules.mk include ../rules.mk include $(TOPDIR)/mk/linux.mk +include ${TOPDIR}/mk/kernel-vars.mk include ${TOPDIR}/mk/buildhlp.mk $(WRKBUILD)/.headers: - $(MAKE) -C $(WRKBUILD) HOSTCC=$(CC_FOR_BUILD) ARCH=$(ARCH) V=1 \ - headers_check - $(MAKE) -C $(WRKBUILD) HOSTCC=$(CC_FOR_BUILD) ARCH=$(ARCH) V=1 \ + $(MAKE) -C $(WRKBUILD) ${KERNEL_MAKE_OPTS} headers_check + $(MAKE) -C $(WRKBUILD) ${KERNEL_MAKE_OPTS} \ INSTALL_HDR_PATH=$(STAGING_TARGET_DIR)/usr \ headers_install @-find $(STAGING_TARGET_DIR)/usr/include -name .install -delete diff --git a/toolchain/kernel-headers/patches/3.10.33/cleankernel.patch b/toolchain/kernel-headers/patches/3.10.34/cleankernel.patch index 5f26a6b72..5f26a6b72 100644 --- a/toolchain/kernel-headers/patches/3.10.33/cleankernel.patch +++ b/toolchain/kernel-headers/patches/3.10.34/cleankernel.patch diff --git a/toolchain/kernel-headers/patches/3.10.33/mkpiggy.patch b/toolchain/kernel-headers/patches/3.10.34/mkpiggy.patch index d4e815cd2..d4e815cd2 100644 --- a/toolchain/kernel-headers/patches/3.10.33/mkpiggy.patch +++ b/toolchain/kernel-headers/patches/3.10.34/mkpiggy.patch diff --git a/toolchain/kernel-headers/patches/3.10.33/relocs.patch b/toolchain/kernel-headers/patches/3.10.34/relocs.patch index 649b9e73e..649b9e73e 100644 --- a/toolchain/kernel-headers/patches/3.10.33/relocs.patch +++ b/toolchain/kernel-headers/patches/3.10.34/relocs.patch diff --git a/toolchain/kernel-headers/patches/3.10.33/sgidefs.patch b/toolchain/kernel-headers/patches/3.10.34/sgidefs.patch index f00a284d9..f00a284d9 100644 --- a/toolchain/kernel-headers/patches/3.10.33/sgidefs.patch +++ b/toolchain/kernel-headers/patches/3.10.34/sgidefs.patch diff --git a/toolchain/kernel-headers/patches/3.10.33/sortext.patch b/toolchain/kernel-headers/patches/3.10.34/sortext.patch index 65bbbb64b..65bbbb64b 100644 --- a/toolchain/kernel-headers/patches/3.10.33/sortext.patch +++ b/toolchain/kernel-headers/patches/3.10.34/sortext.patch diff --git a/toolchain/kernel-headers/patches/3.11.10/microperl.patch b/toolchain/kernel-headers/patches/3.11.10/microperl.patch deleted file mode 100644 index 298d96593..000000000 --- a/toolchain/kernel-headers/patches/3.11.10/microperl.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -Nur linux-3.11.5.orig/scripts/headers_check.pl linux-3.11.5/scripts/headers_check.pl ---- linux-3.11.5.orig/scripts/headers_check.pl 2013-10-14 03:14:45.000000000 +0200 -+++ linux-3.11.5/scripts/headers_check.pl 2013-10-16 17:08:59.000000000 +0200 -@@ -18,7 +18,7 @@ - # - # 3) Check for leaked CONFIG_ symbols - --use strict; -+#use strict; - use File::Basename; - - my ($dir, $arch, @files) = @ARGV; - diff --git a/toolchain/kernel-headers/patches/3.12.13/microperl.patch b/toolchain/kernel-headers/patches/3.12.13/microperl.patch deleted file mode 100644 index 298d96593..000000000 --- a/toolchain/kernel-headers/patches/3.12.13/microperl.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -Nur linux-3.11.5.orig/scripts/headers_check.pl linux-3.11.5/scripts/headers_check.pl ---- linux-3.11.5.orig/scripts/headers_check.pl 2013-10-14 03:14:45.000000000 +0200 -+++ linux-3.11.5/scripts/headers_check.pl 2013-10-16 17:08:59.000000000 +0200 -@@ -18,7 +18,7 @@ - # - # 3) Check for leaked CONFIG_ symbols - --use strict; -+#use strict; - use File::Basename; - - my ($dir, $arch, @files) = @ARGV; - diff --git a/toolchain/kernel-headers/patches/3.12.13/cleankernel.patch b/toolchain/kernel-headers/patches/3.12.14/cleankernel.patch index d8c055dc3..d8c055dc3 100644 --- a/toolchain/kernel-headers/patches/3.12.13/cleankernel.patch +++ b/toolchain/kernel-headers/patches/3.12.14/cleankernel.patch diff --git a/toolchain/kernel-headers/patches/3.12.13/mkpiggy.patch b/toolchain/kernel-headers/patches/3.12.14/mkpiggy.patch index d4e815cd2..d4e815cd2 100644 --- a/toolchain/kernel-headers/patches/3.12.13/mkpiggy.patch +++ b/toolchain/kernel-headers/patches/3.12.14/mkpiggy.patch diff --git a/toolchain/kernel-headers/patches/3.12.13/relocs.patch b/toolchain/kernel-headers/patches/3.12.14/relocs.patch index 649b9e73e..649b9e73e 100644 --- a/toolchain/kernel-headers/patches/3.12.13/relocs.patch +++ b/toolchain/kernel-headers/patches/3.12.14/relocs.patch diff --git a/toolchain/kernel-headers/patches/3.12.13/sgidefs.patch b/toolchain/kernel-headers/patches/3.12.14/sgidefs.patch index f00a284d9..f00a284d9 100644 --- a/toolchain/kernel-headers/patches/3.12.13/sgidefs.patch +++ b/toolchain/kernel-headers/patches/3.12.14/sgidefs.patch diff --git a/toolchain/kernel-headers/patches/3.12.13/sortext.patch b/toolchain/kernel-headers/patches/3.12.14/sortext.patch index 8fd4e1d6b..8fd4e1d6b 100644 --- a/toolchain/kernel-headers/patches/3.12.13/sortext.patch +++ b/toolchain/kernel-headers/patches/3.12.14/sortext.patch diff --git a/toolchain/kernel-headers/patches/3.13.6/microperl.patch b/toolchain/kernel-headers/patches/3.13.6/microperl.patch deleted file mode 100644 index 298d96593..000000000 --- a/toolchain/kernel-headers/patches/3.13.6/microperl.patch +++ /dev/null @@ -1,13 +0,0 @@ -diff -Nur linux-3.11.5.orig/scripts/headers_check.pl linux-3.11.5/scripts/headers_check.pl ---- linux-3.11.5.orig/scripts/headers_check.pl 2013-10-14 03:14:45.000000000 +0200 -+++ linux-3.11.5/scripts/headers_check.pl 2013-10-16 17:08:59.000000000 +0200 -@@ -18,7 +18,7 @@ - # - # 3) Check for leaked CONFIG_ symbols - --use strict; -+#use strict; - use File::Basename; - - my ($dir, $arch, @files) = @ARGV; - diff --git a/toolchain/kernel-headers/patches/3.13.6/cleankernel.patch b/toolchain/kernel-headers/patches/3.13.7/cleankernel.patch index d8c055dc3..d8c055dc3 100644 --- a/toolchain/kernel-headers/patches/3.13.6/cleankernel.patch +++ b/toolchain/kernel-headers/patches/3.13.7/cleankernel.patch diff --git a/toolchain/kernel-headers/patches/3.13.6/mkpiggy.patch b/toolchain/kernel-headers/patches/3.13.7/mkpiggy.patch index 751678b74..751678b74 100644 --- a/toolchain/kernel-headers/patches/3.13.6/mkpiggy.patch +++ b/toolchain/kernel-headers/patches/3.13.7/mkpiggy.patch diff --git a/toolchain/kernel-headers/patches/3.13.6/relocs.patch b/toolchain/kernel-headers/patches/3.13.7/relocs.patch index 649b9e73e..69a7c88a9 100644 --- a/toolchain/kernel-headers/patches/3.13.6/relocs.patch +++ b/toolchain/kernel-headers/patches/3.13.7/relocs.patch @@ -1,7 +1,18 @@ -diff -Nur linux-3.11.5.orig/arch/x86/tools/relocs.h linux-3.11.5/arch/x86/tools/relocs.h ---- linux-3.11.5.orig/arch/x86/tools/relocs.h 2013-10-14 03:14:45.000000000 +0200 -+++ linux-3.11.5/arch/x86/tools/relocs.h 2013-10-20 17:41:16.000000000 +0200 -@@ -9,10 +9,14 @@ +diff -Nur linux-3.13.6.orig/arch/x86/tools/relocs.c linux-3.13.6/arch/x86/tools/relocs.c +--- linux-3.13.6.orig/arch/x86/tools/relocs.c 2014-03-07 07:07:02.000000000 +0100 ++++ linux-3.13.6/arch/x86/tools/relocs.c 2014-03-15 19:39:45.000000000 +0100 +@@ -126,6 +126,7 @@ + + if (err) { + regerror(err, &sym_regex_c[i], errbuf, sizeof errbuf); ++ printf("foo: %s\n", sym_regex[i]); + die("%s", errbuf); + } + } +diff -Nur linux-3.13.6.orig/arch/x86/tools/relocs.h linux-3.13.6/arch/x86/tools/relocs.h +--- linux-3.13.6.orig/arch/x86/tools/relocs.h 2014-03-07 07:07:02.000000000 +0100 ++++ linux-3.13.6/arch/x86/tools/relocs.h 2014-03-15 18:48:40.000000000 +0100 +@@ -9,11 +9,19 @@ #include <string.h> #include <errno.h> #include <unistd.h> @@ -13,12 +24,17 @@ diff -Nur linux-3.11.5.orig/arch/x86/tools/relocs.h linux-3.11.5/arch/x86/tools/ +#else +#include "elf.h" +#endif ++#ifdef __APPLE__ ++#include <pcreposix.h> ++#else #include <regex.h> ++#endif #include <tools/le_byteshift.h> -diff -Nur linux-3.11.5.orig/tools/include/elf.h linux-3.11.5/tools/include/elf.h ---- linux-3.11.5.orig/tools/include/elf.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-3.11.5/tools/include/elf.h 2013-10-20 17:42:10.000000000 +0200 + void die(char *fmt, ...); +diff -Nur linux-3.13.6.orig/tools/include/elf.h linux-3.13.6/tools/include/elf.h +--- linux-3.13.6.orig/tools/include/elf.h 1970-01-01 01:00:00.000000000 +0100 ++++ linux-3.13.6/tools/include/elf.h 2014-03-15 18:47:36.000000000 +0100 @@ -0,0 +1,2671 @@ +#ifndef _ELF_H +#define _ELF_H diff --git a/toolchain/kernel-headers/patches/3.13.6/sgidefs.patch b/toolchain/kernel-headers/patches/3.13.7/sgidefs.patch index f00a284d9..f00a284d9 100644 --- a/toolchain/kernel-headers/patches/3.13.6/sgidefs.patch +++ b/toolchain/kernel-headers/patches/3.13.7/sgidefs.patch diff --git a/toolchain/kernel-headers/patches/3.13.6/sortext.patch b/toolchain/kernel-headers/patches/3.13.7/sortext.patch index 8fd4e1d6b..8fd4e1d6b 100644 --- a/toolchain/kernel-headers/patches/3.13.6/sortext.patch +++ b/toolchain/kernel-headers/patches/3.13.7/sortext.patch diff --git a/toolchain/kernel-headers/patches/3.4.82/microperl.patch b/toolchain/kernel-headers/patches/3.4.82/microperl.patch deleted file mode 100644 index 44c39f6e8..000000000 --- a/toolchain/kernel-headers/patches/3.4.82/microperl.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -Nur linux-3.4.2.orig/scripts/headers_check.pl linux-3.4.2/scripts/headers_check.pl ---- linux-3.4.2.orig/scripts/headers_check.pl 2012-06-09 17:36:33.000000000 +0200 -+++ linux-3.4.2/scripts/headers_check.pl 2012-06-15 12:45:43.000000000 +0200 -@@ -18,7 +18,7 @@ - # - # 3) Check for leaked CONFIG_ symbols - --use strict; -+#use strict; - use File::Basename; - - my ($dir, $arch, @files) = @ARGV; -diff -Nur linux-3.4.2.orig/scripts/headers_install.pl linux-3.4.2/scripts/headers_install.pl ---- linux-3.4.2.orig/scripts/headers_install.pl 2012-06-09 17:36:33.000000000 +0200 -+++ linux-3.4.2/scripts/headers_install.pl 2012-06-15 12:45:11.000000000 +0200 -@@ -16,7 +16,7 @@ - # 2) Drop include of compiler.h - # 3) Drop all sections defined out by __KERNEL__ (using unifdef) - --use strict; -+#use strict; - - my ($readdir, $installdir, $arch, @files) = @ARGV; - diff --git a/toolchain/kernel-headers/patches/3.4.82/aufs2.patch b/toolchain/kernel-headers/patches/3.4.84/aufs2.patch index d40c9a3fe..d40c9a3fe 100644 --- a/toolchain/kernel-headers/patches/3.4.82/aufs2.patch +++ b/toolchain/kernel-headers/patches/3.4.84/aufs2.patch diff --git a/toolchain/kernel-headers/patches/3.4.82/linux-gcc-check.patch b/toolchain/kernel-headers/patches/3.4.84/linux-gcc-check.patch index 7cc381845..7cc381845 100644 --- a/toolchain/kernel-headers/patches/3.4.82/linux-gcc-check.patch +++ b/toolchain/kernel-headers/patches/3.4.84/linux-gcc-check.patch diff --git a/toolchain/kernel-headers/patches/3.4.82/mkpiggy.patch b/toolchain/kernel-headers/patches/3.4.84/mkpiggy.patch index d4e815cd2..d4e815cd2 100644 --- a/toolchain/kernel-headers/patches/3.4.82/mkpiggy.patch +++ b/toolchain/kernel-headers/patches/3.4.84/mkpiggy.patch diff --git a/toolchain/kernel-headers/patches/3.4.82/relocs.patch b/toolchain/kernel-headers/patches/3.4.84/relocs.patch index 43c5bb580..43c5bb580 100644 --- a/toolchain/kernel-headers/patches/3.4.82/relocs.patch +++ b/toolchain/kernel-headers/patches/3.4.84/relocs.patch diff --git a/toolchain/libelf/Makefile b/toolchain/libelf/Makefile index c243cdd00..90bf4cb8d 100644 --- a/toolchain/libelf/Makefile +++ b/toolchain/libelf/Makefile @@ -14,7 +14,7 @@ $(WRKBUILD)/.headers: $(WRKBUILD)/.configured: (cd $(WRKBUILD); \ $(WRKBUILD)/configure \ - --prefix=$(STAGING_HOST_DIR) \ + --prefix=$(STAGING_HOST_DIR)/usr \ --disable-nls \ --disable-shared \ --enable-static \ diff --git a/toolchain/mpc/Makefile b/toolchain/mpc/Makefile index 81f5b151d..40e7f615e 100644 --- a/toolchain/mpc/Makefile +++ b/toolchain/mpc/Makefile @@ -14,8 +14,8 @@ $(WRKBUILD)/.headers: $(WRKBUILD)/.configured: (cd $(WRKBUILD); \ $(WRKBUILD)/configure \ - --prefix=$(STAGING_HOST_DIR) \ - --with-gmp=$(STAGING_HOST_DIR) \ + --prefix=$(STAGING_HOST_DIR)/usr \ + --with-gmp=$(STAGING_HOST_DIR)/usr \ --disable-shared \ --enable-static \ ); diff --git a/toolchain/mpfr/Makefile b/toolchain/mpfr/Makefile index 019d14d77..954040b85 100644 --- a/toolchain/mpfr/Makefile +++ b/toolchain/mpfr/Makefile @@ -15,7 +15,7 @@ $(WRKBUILD)/.headers: $(WRKBUILD)/.configured: (cd $(WRKBUILD); \ $(WRKBUILD)/configure \ - --prefix=$(STAGING_HOST_DIR) \ + --prefix=$(STAGING_HOST_DIR)/usr \ --with-gmp-build=$(GMP_BUILD_DIR) \ --disable-shared \ --enable-static \ diff --git a/toolchain/musl/Makefile b/toolchain/musl/Makefile index aa5e8845c..7b0eeb104 100644 --- a/toolchain/musl/Makefile +++ b/toolchain/musl/Makefile @@ -9,15 +9,10 @@ include ${TOPDIR}/mk/buildhlp.mk ifeq ($(CPU_ARCH),ppc) GNU_TARGET_NAME:= $(subst ppc,powerpc,$(GNU_TARGET_NAME)) endif -ifeq ($(CPU_ARCH),mips64el) -GNU_TARGET_NAME:= $(subst mips64el,mips,$(GNU_TARGET_NAME)) -endif -ifeq ($(CPU_ARCH),mips64) -GNU_TARGET_NAME:= $(subst mips64,mips,$(GNU_TARGET_NAME)) -endif $(WRKBUILD)/.headers: (cd $(WRKBUILD); CC='$(TARGET_CC)' CROSS_COMPILE='$(TARGET_CROSS)' \ + CFLAGS='$(TARGET_CFLAGS)' \ ./configure --prefix=/usr \ --target=$(GNU_TARGET_NAME) \ --disable-gcc-wrapper \ @@ -28,35 +23,38 @@ $(WRKBUILD)/.headers: $(WRKBUILD)/.compiled: # reconfigure musl, otherwise linking with libgcc or libgcc_eh is disabled - $(MAKE) CFLAGS='$(TARGET_CFLAGS)' -C $(WRKBUILD) clean + $(MAKE) -C $(WRKBUILD) clean (cd $(WRKBUILD); CC='$(TARGET_CC)' CROSS_COMPILE='$(TARGET_CROSS)' \ + CFLAGS='$(TARGET_CFLAGS)' \ ./configure --prefix=/usr \ --target=$(GNU_TARGET_NAME) \ --disable-gcc-wrapper \ ) - $(MAKE) CFLAGS='$(TARGET_CFLAGS)' -C $(WRKBUILD) all + $(MAKE) -C $(WRKBUILD) CFLAGS='$(TARGET_CFLAGS)' all touch $@ $(WRKBUILD)/.installed: $(WRKBUILD)/.compiled - $(MAKE) -C $(WRKBUILD) DESTDIR=$(STAGING_TARGET_DIR) install + $(MAKE) -C $(WRKBUILD) CFLAGS='$(TARGET_CFLAGS)' DESTDIR=$(STAGING_TARGET_DIR) install touch $@ $(WRKBUILD)/.fixup: # reconfigure musl, otherwise linking with libgcc or libgcc_eh is disabled - $(MAKE) CFLAGS='$(TARGET_CFLAGS)' -C $(WRKBUILD) clean + $(MAKE) -C $(WRKBUILD) clean (cd $(WRKBUILD); CC='$(TARGET_CC)' CROSS_COMPILE='$(TARGET_CROSS)' \ + CFLAGS='$(TARGET_CFLAGS)' \ ./configure --prefix=/usr \ --target=$(GNU_TARGET_NAME) \ --disable-gcc-wrapper \ ) - $(MAKE) CFLAGS='$(TARGET_CFLAGS)' -C $(WRKBUILD) all - $(MAKE) -C $(WRKBUILD) DESTDIR=$(STAGING_TARGET_DIR) install + $(MAKE) -C $(WRKBUILD) CFLAGS='$(TARGET_CFLAGS)' all + $(MAKE) -C $(WRKBUILD) CFLAGS='$(TARGET_CFLAGS)' DESTDIR=$(STAGING_TARGET_DIR) install # cleanup toolchain -find $(STAGING_TARGET_DIR) $(STAGING_HOST_DIR) -name \*.la -delete ifeq ($(ADK_TOOLCHAIN),y) # strip target libs and host tools for toolchain builds - PATH="$(TARGET_PATH)" debug='0' prefix='${TARGET_CROSS}' ${BASH} ${SCRIPT_DIR}/rstrip.sh $(STAGING_TARGET_DIR) - debug='0' prefix=' ' ${BASH} ${SCRIPT_DIR}/rstrip.sh $(STAGING_HOST_DIR) + PATH="$(TARGET_PATH)" debug='0' prefix='${TARGET_CROSS}' ${BASH} ${SCRIPT_DIR}/rstrip.sh \ + $(STAGING_TARGET_DIR) $(TOOLCHAIN_DIR)/usr/lib/gcc/$(GNU_TARGET_NAME) + debug='0' prefix=' ' ${BASH} ${SCRIPT_DIR}/rstrip.sh $(TOOLCHAIN_DIR)/usr/bin endif touch $@ diff --git a/toolchain/musl/Makefile.inc b/toolchain/musl/Makefile.inc index 506280532..40cf4fcf0 100644 --- a/toolchain/musl/Makefile.inc +++ b/toolchain/musl/Makefile.inc @@ -2,8 +2,7 @@ # material, please see the LICENCE file in the top-level directory. PKG_NAME:= musl -PKG_VERSION:= 0.9.15 +PKG_VERSION:= 1.0.0 PKG_RELEASE:= 1 -PKG_MD5SUM:= 06f590a38c85722ee9343db2416425f4 +PKG_MD5SUM:= e54664fdf211d27737e328c4462b545e PKG_SITES:= http://www.musl-libc.org/releases/ -DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.gz diff --git a/toolchain/musl/patches/musl-git-20140310.patch b/toolchain/musl/patches/musl-git-20140310.patch deleted file mode 100644 index 29b58b843..000000000 --- a/toolchain/musl/patches/musl-git-20140310.patch +++ /dev/null @@ -1,8432 +0,0 @@ -diff -Nur musl-0.9.15/arch/arm/bits/shm.h musl-git/arch/arm/bits/shm.h ---- musl-0.9.15/arch/arm/bits/shm.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/arm/bits/shm.h 2014-03-10 16:52:06.000000000 +0100 -@@ -16,3 +16,14 @@ - unsigned long __pad1; - unsigned long __pad2; - }; -+ -+struct shminfo { -+ unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4]; -+}; -+ -+struct shm_info { -+ int __used_ids; -+ unsigned long shm_tot, shm_rss, shm_swp; -+ unsigned long __swap_attempts, __swap_successes; -+}; -+ -diff -Nur musl-0.9.15/arch/arm/bits/termios.h musl-git/arch/arm/bits/termios.h ---- musl-0.9.15/arch/arm/bits/termios.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/arm/bits/termios.h 2014-03-10 16:52:06.000000000 +0100 -@@ -42,6 +42,7 @@ - #define IXANY 0004000 - #define IXOFF 0010000 - #define IMAXBEL 0020000 -+#define IUTF8 0040000 - - #define OPOST 0000001 - #define OLCUC 0000002 -@@ -75,9 +76,6 @@ - #define VT0 0000000 - #define VT1 0040000 - --/* ?? */ --#define XTABS 0014000 -- - #define B0 0000000 - #define B50 0000001 - #define B75 0000002 -@@ -125,8 +123,6 @@ - #define HUPCL 0002000 - #define CLOCAL 0004000 - --#define CRTSCTS 020000000000 -- - #define ISIG 0000001 - #define ICANON 0000002 - #define ECHO 0000010 -@@ -137,14 +133,11 @@ - #define TOSTOP 0000400 - #define IEXTEN 0100000 - --/* Extensions? */ --#define CBAUDEX 0010000 - #define ECHOCTL 0001000 - #define ECHOPRT 0002000 - #define ECHOKE 0004000 - #define FLUSHO 0010000 - #define PENDIN 0040000 --#define EXTPROC 0200000 - - #define TCOOFF 0 - #define TCOON 1 -@@ -158,3 +151,10 @@ - #define TCSANOW 0 - #define TCSADRAIN 1 - #define TCSAFLUSH 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define CBAUDEX 0010000 -+#define CRTSCTS 020000000000 -+#define EXTPROC 0200000 -+#define XTABS 0014000 -+#endif -diff -Nur musl-0.9.15/arch/arm/syscall_arch.h musl-git/arch/arm/syscall_arch.h ---- musl-0.9.15/arch/arm/syscall_arch.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/arm/syscall_arch.h 2014-03-10 16:52:06.000000000 +0100 -@@ -3,6 +3,8 @@ - ((union { long long ll; long l[2]; }){ .ll = x }).l[1] - #define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x)) - -+long (__syscall)(long, ...); -+ - #ifndef __clang__ - - #define __asm_syscall(...) do { \ -diff -Nur musl-0.9.15/arch/i386/bits/shm.h musl-git/arch/i386/bits/shm.h ---- musl-0.9.15/arch/i386/bits/shm.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/i386/bits/shm.h 2014-03-10 16:52:06.000000000 +0100 -@@ -16,3 +16,14 @@ - unsigned long __pad1; - unsigned long __pad2; - }; -+ -+struct shminfo { -+ unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4]; -+}; -+ -+struct shm_info { -+ int __used_ids; -+ unsigned long shm_tot, shm_rss, shm_swp; -+ unsigned long __swap_attempts, __swap_successes; -+}; -+ -diff -Nur musl-0.9.15/arch/i386/bits/termios.h musl-git/arch/i386/bits/termios.h ---- musl-0.9.15/arch/i386/bits/termios.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/i386/bits/termios.h 2014-03-10 16:52:06.000000000 +0100 -@@ -42,6 +42,7 @@ - #define IXANY 0004000 - #define IXOFF 0010000 - #define IMAXBEL 0020000 -+#define IUTF8 0040000 - - #define OPOST 0000001 - #define OLCUC 0000002 -@@ -75,9 +76,6 @@ - #define VT0 0000000 - #define VT1 0040000 - --/* ?? */ --#define XTABS 0014000 -- - #define B0 0000000 - #define B50 0000001 - #define B75 0000002 -@@ -125,8 +123,6 @@ - #define HUPCL 0002000 - #define CLOCAL 0004000 - --#define CRTSCTS 020000000000 -- - #define ISIG 0000001 - #define ICANON 0000002 - #define ECHO 0000010 -@@ -137,14 +133,11 @@ - #define TOSTOP 0000400 - #define IEXTEN 0100000 - --/* Extensions? */ --#define CBAUDEX 0010000 - #define ECHOCTL 0001000 - #define ECHOPRT 0002000 - #define ECHOKE 0004000 - #define FLUSHO 0010000 - #define PENDIN 0040000 --#define EXTPROC 0200000 - - #define TCOOFF 0 - #define TCOON 1 -@@ -158,3 +151,10 @@ - #define TCSANOW 0 - #define TCSADRAIN 1 - #define TCSAFLUSH 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define CBAUDEX 0010000 -+#define CRTSCTS 020000000000 -+#define EXTPROC 0200000 -+#define XTABS 0014000 -+#endif -diff -Nur musl-0.9.15/arch/microblaze/bits/shm.h musl-git/arch/microblaze/bits/shm.h ---- musl-0.9.15/arch/microblaze/bits/shm.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/microblaze/bits/shm.h 2014-03-10 16:52:06.000000000 +0100 -@@ -16,3 +16,14 @@ - unsigned long __pad1; - unsigned long __pad2; - }; -+ -+struct shminfo { -+ unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4]; -+}; -+ -+struct shm_info { -+ int __used_ids; -+ unsigned long shm_tot, shm_rss, shm_swp; -+ unsigned long __swap_attempts, __swap_successes; -+}; -+ -diff -Nur musl-0.9.15/arch/microblaze/bits/termios.h musl-git/arch/microblaze/bits/termios.h ---- musl-0.9.15/arch/microblaze/bits/termios.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/microblaze/bits/termios.h 2014-03-10 16:52:06.000000000 +0100 -@@ -42,6 +42,7 @@ - #define IXANY 0004000 - #define IXOFF 0010000 - #define IMAXBEL 0020000 -+#define IUTF8 0040000 - - #define OPOST 0000001 - #define OLCUC 0000002 -@@ -75,9 +76,6 @@ - #define VT0 0000000 - #define VT1 0040000 - --/* ?? */ --#define XTABS 0014000 -- - #define B0 0000000 - #define B50 0000001 - #define B75 0000002 -@@ -125,8 +123,6 @@ - #define HUPCL 0002000 - #define CLOCAL 0004000 - --#define CRTSCTS 020000000000 -- - #define ISIG 0000001 - #define ICANON 0000002 - #define ECHO 0000010 -@@ -137,14 +133,11 @@ - #define TOSTOP 0000400 - #define IEXTEN 0100000 - --/* Extensions? */ --#define CBAUDEX 0010000 - #define ECHOCTL 0001000 - #define ECHOPRT 0002000 - #define ECHOKE 0004000 - #define FLUSHO 0010000 - #define PENDIN 0040000 --#define EXTPROC 0200000 - - #define TCOOFF 0 - #define TCOON 1 -@@ -158,3 +151,10 @@ - #define TCSANOW 0 - #define TCSADRAIN 1 - #define TCSAFLUSH 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define CBAUDEX 0010000 -+#define CRTSCTS 020000000000 -+#define EXTPROC 0200000 -+#define XTABS 0014000 -+#endif -diff -Nur musl-0.9.15/arch/microblaze/syscall_arch.h musl-git/arch/microblaze/syscall_arch.h ---- musl-0.9.15/arch/microblaze/syscall_arch.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/microblaze/syscall_arch.h 2014-03-10 16:52:06.000000000 +0100 -@@ -3,6 +3,8 @@ - ((union { long long ll; long l[2]; }){ .ll = x }).l[1] - #define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x)) - -+long (__syscall)(long, ...); -+ - #ifndef __clang__ - - static __inline long __syscall0(long n) -diff -Nur musl-0.9.15/arch/mips/bits/fenv.h musl-git/arch/mips/bits/fenv.h ---- musl-0.9.15/arch/mips/bits/fenv.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/mips/bits/fenv.h 2014-03-10 16:52:06.000000000 +0100 -@@ -1,3 +1,7 @@ -+#ifdef __mips_soft_float -+#define FE_ALL_EXCEPT 0 -+#define FE_TONEAREST 0 -+#else - #define FE_INEXACT 4 - #define FE_UNDERFLOW 8 - #define FE_OVERFLOW 16 -@@ -10,6 +14,7 @@ - #define FE_TOWARDZERO 1 - #define FE_UPWARD 2 - #define FE_DOWNWARD 3 -+#endif - - typedef unsigned short fexcept_t; - -diff -Nur musl-0.9.15/arch/mips/bits/shm.h musl-git/arch/mips/bits/shm.h ---- musl-0.9.15/arch/mips/bits/shm.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/mips/bits/shm.h 2014-03-10 16:52:06.000000000 +0100 -@@ -13,3 +13,14 @@ - unsigned long __pad1; - unsigned long __pad2; - }; -+ -+struct shminfo { -+ unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4]; -+}; -+ -+struct shm_info { -+ int __used_ids; -+ unsigned long shm_tot, shm_rss, shm_swp; -+ unsigned long __swap_attempts, __swap_successes; -+}; -+ -diff -Nur musl-0.9.15/arch/mips/bits/termios.h musl-git/arch/mips/bits/termios.h ---- musl-0.9.15/arch/mips/bits/termios.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/mips/bits/termios.h 2014-03-10 16:52:06.000000000 +0100 -@@ -77,9 +77,6 @@ - #define VT0 0000000 - #define VT1 0040000 - --/* ?? */ --#define XTABS 0014000 -- - #define B0 0000000 - #define B50 0000001 - #define B75 0000002 -@@ -129,12 +126,6 @@ - #define PARODD 0001000 - #define HUPCL 0002000 - #define CLOCAL 0004000 --#define CBAUDEX 0010000 -- --#define CIBAUD 002003600000 --#define CMSPAR 010000000000 --#define CRTSCTS 020000000000 --#define IBSHIFT 16 - - #define ISIG 0000001 - #define ICANON 0000002 -@@ -152,9 +143,6 @@ - #define PENDIN 0040000 - #define TOSTOP 0100000 - #define ITOSTOP 0100000 --#define EXTPROC 0200000 -- --#define TIOCSER_TEMT 1 - - #define TCOOFF 0 - #define TCOON 1 -@@ -168,3 +156,14 @@ - #define TCSANOW 0 - #define TCSADRAIN 1 - #define TCSAFLUSH 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define CBAUDEX 0010000 -+#define CIBAUD 002003600000 -+#define IBSHIFT 16 -+#define CMSPAR 010000000000 -+#define CRTSCTS 020000000000 -+#define EXTPROC 0200000 -+#define XTABS 0014000 -+#define TIOCSER_TEMT 1 -+#endif -diff -Nur musl-0.9.15/arch/mips/reloc.h musl-git/arch/mips/reloc.h ---- musl-0.9.15/arch/mips/reloc.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/mips/reloc.h 2014-03-10 16:52:06.000000000 +0100 -@@ -8,7 +8,13 @@ - #define ENDIAN_SUFFIX "" - #endif - --#define LDSO_ARCH "mips" ENDIAN_SUFFIX -+#ifdef __mips_soft_float -+#define FP_SUFFIX "-sf" -+#else -+#define FP_SUFFIX "" -+#endif -+ -+#define LDSO_ARCH "mips" ENDIAN_SUFFIX FP_SUFFIX - - #define IS_COPY(x) ((x)==R_MIPS_COPY) - #define IS_PLT(x) 1 -diff -Nur musl-0.9.15/arch/mips/syscall_arch.h musl-git/arch/mips/syscall_arch.h ---- musl-0.9.15/arch/mips/syscall_arch.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/mips/syscall_arch.h 2014-03-10 16:52:06.000000000 +0100 -@@ -3,6 +3,8 @@ - ((union { long long ll; long l[2]; }){ .ll = x }).l[1] - #define __SYSCALL_LL_O(x) 0, __SYSCALL_LL_E((x)) - -+long (__syscall)(long, ...); -+ - #ifndef __clang__ - - #define __asm_syscall(...) do { \ -diff -Nur musl-0.9.15/arch/powerpc/bits/shm.h musl-git/arch/powerpc/bits/shm.h ---- musl-0.9.15/arch/powerpc/bits/shm.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/powerpc/bits/shm.h 2014-03-10 16:52:06.000000000 +0100 -@@ -16,3 +16,14 @@ - unsigned long __pad1; - unsigned long __pad2; - }; -+ -+struct shminfo { -+ unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4]; -+}; -+ -+struct shm_info { -+ int __used_ids; -+ unsigned long shm_tot, shm_rss, shm_swp; -+ unsigned long __swap_attempts, __swap_successes; -+}; -+ -diff -Nur musl-0.9.15/arch/powerpc/bits/termios.h musl-git/arch/powerpc/bits/termios.h ---- musl-0.9.15/arch/powerpc/bits/termios.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/powerpc/bits/termios.h 2014-03-10 16:52:06.000000000 +0100 -@@ -66,7 +66,6 @@ - #define TAB1 00002000 - #define TAB2 00004000 - #define TAB3 00006000 --#define XTABS 00006000 - #define CRDLY 00030000 - #define CR0 00000000 - #define CR1 00010000 -@@ -101,7 +100,6 @@ - #define B38400 0000017 - #define EXTA B19200 - #define EXTB B38400 --#define CBAUDEX 0000000 - #define B57600 00020 - #define B115200 00021 - #define B230400 00022 -@@ -120,9 +118,6 @@ - #define B4000000 00036 - #define BOTHER 00037 - --#define CIBAUD 077600000 --#define IBSHIFT 16 -- - #define CSIZE 00001400 - #define CS5 00000000 - #define CS6 00000400 -@@ -136,8 +131,6 @@ - #define HUPCL 00040000 - - #define CLOCAL 00100000 --#define CMSPAR 010000000000 --#define CRTSCTS 020000000000 - - #define ISIG 0x00000080 - #define ICANON 0x00000100 -@@ -154,7 +147,6 @@ - #define FLUSHO 0x00800000 - #define PENDIN 0x20000000 - #define IEXTEN 0x00000400 --#define EXTPROC 0x10000000 - - #define TCOOFF 0 - #define TCOON 1 -@@ -168,3 +160,13 @@ - #define TCSANOW 0 - #define TCSADRAIN 1 - #define TCSAFLUSH 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define CBAUDEX 0000000 -+#define CIBAUD 077600000 -+#define IBSHIFT 16 -+#define CMSPAR 010000000000 -+#define CRTSCTS 020000000000 -+#define EXTPROC 0x10000000 -+#define XTABS 00006000 -+#endif -diff -Nur musl-0.9.15/arch/sh/atomic.h musl-git/arch/sh/atomic.h ---- musl-0.9.15/arch/sh/atomic.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/atomic.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,87 @@ -+#ifndef _INTERNAL_ATOMIC_H -+#define _INTERNAL_ATOMIC_H -+ -+#include <stdint.h> -+ -+static inline int a_ctz_l(unsigned long x) -+{ -+ static const char debruijn32[32] = { -+ 0, 1, 23, 2, 29, 24, 19, 3, 30, 27, 25, 11, 20, 8, 4, 13, -+ 31, 22, 28, 18, 26, 10, 7, 12, 21, 17, 9, 6, 16, 5, 15, 14 -+ }; -+ return debruijn32[(x&-x)*0x076be629 >> 27]; -+} -+ -+static inline int a_ctz_64(uint64_t x) -+{ -+ uint32_t y = x; -+ if (!y) { -+ y = x>>32; -+ return 32 + a_ctz_l(y); -+ } -+ return a_ctz_l(y); -+} -+ -+int __sh_cas(volatile int *, int, int); -+int __sh_swap(volatile int *, int); -+int __sh_fetch_add(volatile int *, int); -+void __sh_store(volatile int *, int); -+void __sh_and(volatile int *, int); -+void __sh_or(volatile int *, int); -+ -+#define a_cas(p,t,s) __sh_cas(p,t,s) -+#define a_swap(x,v) __sh_swap(x,v) -+#define a_fetch_add(x,v) __sh_fetch_add(x, v) -+#define a_store(x,v) __sh_store(x, v) -+#define a_and(x,v) __sh_and(x, v) -+#define a_or(x,v) __sh_or(x, v) -+ -+static inline void *a_cas_p(volatile void *p, void *t, void *s) -+{ -+ return (void *)a_cas(p, (int)t, (int)s); -+} -+ -+static inline long a_cas_l(volatile void *p, long t, long s) -+{ -+ return a_cas(p, t, s); -+} -+ -+static inline void a_inc(volatile int *x) -+{ -+ a_fetch_add(x, 1); -+} -+ -+static inline void a_dec(volatile int *x) -+{ -+ a_fetch_add(x, -1); -+} -+ -+static inline void a_spin() -+{ -+} -+ -+static inline void a_crash() -+{ -+ *(volatile char *)0=0; -+} -+ -+static inline void a_or_l(volatile void *p, long v) -+{ -+ a_or(p, v); -+} -+ -+static inline void a_and_64(volatile uint64_t *p, uint64_t v) -+{ -+ union { uint64_t v; uint32_t r[2]; } u = { v }; -+ a_and((int *)p, u.r[0]); -+ a_and((int *)p+1, u.r[1]); -+} -+ -+static inline void a_or_64(volatile uint64_t *p, uint64_t v) -+{ -+ union { uint64_t v; uint32_t r[2]; } u = { v }; -+ a_or((int *)p, u.r[0]); -+ a_or((int *)p+1, u.r[1]); -+} -+ -+#endif -diff -Nur musl-0.9.15/arch/sh/bits/alltypes.h.in musl-git/arch/sh/bits/alltypes.h.in ---- musl-0.9.15/arch/sh/bits/alltypes.h.in 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/alltypes.h.in 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,23 @@ -+#define _Addr int -+#define _Int64 long long -+#define _Reg int -+ -+TYPEDEF __builtin_va_list va_list; -+TYPEDEF __builtin_va_list __isoc_va_list; -+ -+#ifndef __cplusplus -+TYPEDEF long wchar_t; -+#endif -+TYPEDEF unsigned wint_t; -+ -+TYPEDEF float float_t; -+TYPEDEF double double_t; -+ -+TYPEDEF long time_t; -+TYPEDEF long suseconds_t; -+ -+TYPEDEF struct { union { int __i[9]; unsigned __s[9]; } __u; } pthread_attr_t; -+TYPEDEF struct { union { int __i[6]; void *__p[6]; } __u; } pthread_mutex_t; -+TYPEDEF struct { union { int __i[12]; void *__p[12]; } __u; } pthread_cond_t; -+TYPEDEF struct { union { int __i[8]; void *__p[8]; } __u; } pthread_rwlock_t; -+TYPEDEF struct { union { int __i[5]; void *__p[5]; } __u; } pthread_barrier_t; -diff -Nur musl-0.9.15/arch/sh/bits/endian.h musl-git/arch/sh/bits/endian.h ---- musl-0.9.15/arch/sh/bits/endian.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/endian.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,5 @@ -+#if __BIG_ENDIAN__ -+#define __BYTE_ORDER __BIG_ENDIAN -+#else -+#define __BYTE_ORDER __LITTLE_ENDIAN -+#endif -diff -Nur musl-0.9.15/arch/sh/bits/errno.h musl-git/arch/sh/bits/errno.h ---- musl-0.9.15/arch/sh/bits/errno.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/errno.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,134 @@ -+#define EPERM 1 -+#define ENOENT 2 -+#define ESRCH 3 -+#define EINTR 4 -+#define EIO 5 -+#define ENXIO 6 -+#define E2BIG 7 -+#define ENOEXEC 8 -+#define EBADF 9 -+#define ECHILD 10 -+#define EAGAIN 11 -+#define ENOMEM 12 -+#define EACCES 13 -+#define EFAULT 14 -+#define ENOTBLK 15 -+#define EBUSY 16 -+#define EEXIST 17 -+#define EXDEV 18 -+#define ENODEV 19 -+#define ENOTDIR 20 -+#define EISDIR 21 -+#define EINVAL 22 -+#define ENFILE 23 -+#define EMFILE 24 -+#define ENOTTY 25 -+#define ETXTBSY 26 -+#define EFBIG 27 -+#define ENOSPC 28 -+#define ESPIPE 29 -+#define EROFS 30 -+#define EMLINK 31 -+#define EPIPE 32 -+#define EDOM 33 -+#define ERANGE 34 -+#define EDEADLK 35 -+#define ENAMETOOLONG 36 -+#define ENOLCK 37 -+#define ENOSYS 38 -+#define ENOTEMPTY 39 -+#define ELOOP 40 -+#define EWOULDBLOCK EAGAIN -+#define ENOMSG 42 -+#define EIDRM 43 -+#define ECHRNG 44 -+#define EL2NSYNC 45 -+#define EL3HLT 46 -+#define EL3RST 47 -+#define ELNRNG 48 -+#define EUNATCH 49 -+#define ENOCSI 50 -+#define EL2HLT 51 -+#define EBADE 52 -+#define EBADR 53 -+#define EXFULL 54 -+#define ENOANO 55 -+#define EBADRQC 56 -+#define EBADSLT 57 -+#define EDEADLOCK EDEADLK -+#define EBFONT 59 -+#define ENOSTR 60 -+#define ENODATA 61 -+#define ETIME 62 -+#define ENOSR 63 -+#define ENONET 64 -+#define ENOPKG 65 -+#define EREMOTE 66 -+#define ENOLINK 67 -+#define EADV 68 -+#define ESRMNT 69 -+#define ECOMM 70 -+#define EPROTO 71 -+#define EMULTIHOP 72 -+#define EDOTDOT 73 -+#define EBADMSG 74 -+#define EOVERFLOW 75 -+#define ENOTUNIQ 76 -+#define EBADFD 77 -+#define EREMCHG 78 -+#define ELIBACC 79 -+#define ELIBBAD 80 -+#define ELIBSCN 81 -+#define ELIBMAX 82 -+#define ELIBEXEC 83 -+#define EILSEQ 84 -+#define ERESTART 85 -+#define ESTRPIPE 86 -+#define EUSERS 87 -+#define ENOTSOCK 88 -+#define EDESTADDRREQ 89 -+#define EMSGSIZE 90 -+#define EPROTOTYPE 91 -+#define ENOPROTOOPT 92 -+#define EPROTONOSUPPORT 93 -+#define ESOCKTNOSUPPORT 94 -+#define EOPNOTSUPP 95 -+#define ENOTSUP EOPNOTSUPP -+#define EPFNOSUPPORT 96 -+#define EAFNOSUPPORT 97 -+#define EADDRINUSE 98 -+#define EADDRNOTAVAIL 99 -+#define ENETDOWN 100 -+#define ENETUNREACH 101 -+#define ENETRESET 102 -+#define ECONNABORTED 103 -+#define ECONNRESET 104 -+#define ENOBUFS 105 -+#define EISCONN 106 -+#define ENOTCONN 107 -+#define ESHUTDOWN 108 -+#define ETOOMANYREFS 109 -+#define ETIMEDOUT 110 -+#define ECONNREFUSED 111 -+#define EHOSTDOWN 112 -+#define EHOSTUNREACH 113 -+#define EALREADY 114 -+#define EINPROGRESS 115 -+#define ESTALE 116 -+#define EUCLEAN 117 -+#define ENOTNAM 118 -+#define ENAVAIL 119 -+#define EISNAM 120 -+#define EREMOTEIO 121 -+#define EDQUOT 122 -+#define ENOMEDIUM 123 -+#define EMEDIUMTYPE 124 -+#define ECANCELED 125 -+#define ENOKEY 126 -+#define EKEYEXPIRED 127 -+#define EKEYREVOKED 128 -+#define EKEYREJECTED 129 -+#define EOWNERDEAD 130 -+#define ENOTRECOVERABLE 131 -+#define ERFKILL 132 -+#define EHWPOISON 133 -diff -Nur musl-0.9.15/arch/sh/bits/fcntl.h musl-git/arch/sh/bits/fcntl.h ---- musl-0.9.15/arch/sh/bits/fcntl.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/fcntl.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,39 @@ -+#define O_CREAT 0100 -+#define O_EXCL 0200 -+#define O_NOCTTY 0400 -+#define O_TRUNC 01000 -+#define O_APPEND 02000 -+#define O_NONBLOCK 04000 -+#define O_DSYNC 010000 -+#define O_SYNC 04010000 -+#define O_RSYNC 04010000 -+#define O_DIRECTORY 0200000 -+#define O_NOFOLLOW 0400000 -+#define O_CLOEXEC 02000000 -+ -+#define O_ASYNC 020000 -+#define O_DIRECT 040000 -+#define O_LARGEFILE 0100000 -+#define O_NOATIME 01000000 -+#define O_TMPFILE 020200000 -+#define O_NDELAY O_NONBLOCK -+ -+#define F_DUPFD 0 -+#define F_GETFD 1 -+#define F_SETFD 2 -+#define F_GETFL 3 -+#define F_SETFL 4 -+ -+#define F_SETOWN 8 -+#define F_GETOWN 9 -+#define F_SETSIG 10 -+#define F_GETSIG 11 -+ -+#define F_GETLK 12 -+#define F_SETLK 13 -+#define F_SETLKW 14 -+ -+#define F_SETOWN_EX 15 -+#define F_GETOWN_EX 16 -+ -+#define F_GETOWNER_UIDS 17 -diff -Nur musl-0.9.15/arch/sh/bits/fenv.h musl-git/arch/sh/bits/fenv.h ---- musl-0.9.15/arch/sh/bits/fenv.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/fenv.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,26 @@ -+#ifndef __SH_FPU_ANY__ -+ -+#define FE_ALL_EXCEPT 0 -+#define FE_TONEAREST 0 -+ -+#else -+ -+#define FE_TONEAREST 0 -+#define FE_TOWARDZERO 1 -+ -+#define FE_INEXACT 0x04 -+#define FE_UNDERFLOW 0x08 -+#define FE_OVERFLOW 0x10 -+#define FE_DIVBYZERO 0x20 -+#define FE_INVALID 0x40 -+#define FE_ALL_EXCEPT 0x7c -+ -+#endif -+ -+typedef unsigned long fexcept_t; -+ -+typedef struct { -+ unsigned long __cw; -+} fenv_t; -+ -+#define FE_DFL_ENV ((const fenv_t *) -1) -diff -Nur musl-0.9.15/arch/sh/bits/float.h musl-git/arch/sh/bits/float.h ---- musl-0.9.15/arch/sh/bits/float.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/float.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,17 @@ -+#define FLT_ROUNDS 1 -+#define FLT_EVAL_METHOD 0 -+ -+#define LDBL_TRUE_MIN 4.94065645841246544177e-324L -+#define LDBL_MIN 2.22507385850720138309e-308L -+#define LDBL_MAX 1.79769313486231570815e+308L -+#define LDBL_EPSILON 2.22044604925031308085e-16L -+ -+#define LDBL_MANT_DIG 53 -+#define LDBL_MIN_EXP (-1021) -+#define LDBL_MAX_EXP 1024 -+ -+#define LDBL_DIG 15 -+#define LDBL_MIN_10_EXP (-307) -+#define LDBL_MAX_10_EXP 308 -+ -+#define DECIMAL_DIG 17 -diff -Nur musl-0.9.15/arch/sh/bits/ioctl.h musl-git/arch/sh/bits/ioctl.h ---- musl-0.9.15/arch/sh/bits/ioctl.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/ioctl.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,205 @@ -+#define _IOC(a,b,c,d) ( ((a)<<30) | ((b)<<8) | (c) | ((d)<<16) ) -+#define _IOC_NONE 0U -+#define _IOC_WRITE 1U -+#define _IOC_READ 2U -+ -+#define _IO(a,b) _IOC(_IOC_NONE,(a),(b),0) -+#define _IOW(a,b,c) _IOC(_IOC_WRITE,(a),(b),sizeof(c)) -+#define _IOR(a,b,c) _IOC(_IOC_READ,(a),(b),sizeof(c)) -+#define _IOWR(a,b,c) _IOC(_IOC_READ|_IOC_WRITE,(a),(b),sizeof(c)) -+ -+#define FIOCLEX _IO('f', 1) -+#define FIONCLEX _IO('f', 2) -+#define FIOASYNC _IOW('f', 125, int) -+#define FIONBIO _IOW('f', 126, int) -+#define FIONREAD _IOR('f', 127, int) -+#define TIOCINQ FIONREAD -+#define FIOQSIZE _IOR('f', 128, char[8]) -+ -+#define TCGETA _IOR('t', 23, char[18]) -+#define TCSETA _IOW('t', 24, char[18]) -+#define TCSETAW _IOW('t', 25, char[18]) -+#define TCSETAF _IOW('t', 28, char[18]) -+ -+#define TCSBRK _IO('t', 29) -+#define TCXONC _IO('t', 30) -+#define TCFLSH _IO('t', 31) -+ -+#define TIOCSWINSZ _IOW('t', 103, char[8]) -+#define TIOCGWINSZ _IOR('t', 104, char[8]) -+#define TIOCSTART _IO('t', 110) -+#define TIOCSTOP _IO('t', 111) -+#define TIOCOUTQ _IOR('t', 115, int) -+ -+#define TIOCSPGRP _IOW('t', 118, int) -+#define TIOCGPGRP _IOR('t', 119, int) -+ -+#define TIOCEXCL _IO('T', 12) -+#define TIOCNXCL _IO('T', 13) -+#define TIOCSCTTY _IO('T', 14) -+ -+#define TIOCSTI _IOW('T', 18, char) -+#define TIOCMGET _IOR('T', 21, unsigned int) -+#define TIOCMBIS _IOW('T', 22, unsigned int) -+#define TIOCMBIC _IOW('T', 23, unsigned int) -+#define TIOCMSET _IOW('T', 24, unsigned int) -+#define TIOCM_LE 0x001 -+#define TIOCM_DTR 0x002 -+#define TIOCM_RTS 0x004 -+#define TIOCM_ST 0x008 -+#define TIOCM_SR 0x010 -+#define TIOCM_CTS 0x020 -+#define TIOCM_CAR 0x040 -+#define TIOCM_RNG 0x080 -+#define TIOCM_DSR 0x100 -+#define TIOCM_CD TIOCM_CAR -+#define TIOCM_RI TIOCM_RNG -+#define TIOCM_OUT1 0x2000 -+#define TIOCM_OUT2 0x4000 -+#define TIOCM_LOOP 0x8000 -+ -+#define TIOCGSOFTCAR _IOR('T', 25, unsigned int) -+#define TIOCSSOFTCAR _IOW('T', 26, unsigned int) -+#define TIOCLINUX _IOW('T', 28, char) -+#define TIOCCONS _IO('T', 29) -+#define TIOCGSERIAL _IOR('T', 30, char[60]) -+#define TIOCSSERIAL _IOW('T', 31, char[60]) -+#define TIOCPKT _IOW('T', 32, int) -+#define TIOCPKT_DATA 0 -+#define TIOCPKT_FLUSHREAD 1 -+#define TIOCPKT_FLUSHWRITE 2 -+#define TIOCPKT_STOP 4 -+#define TIOCPKT_START 8 -+#define TIOCPKT_NOSTOP 16 -+#define TIOCPKT_DOSTOP 32 -+#define TIOCPKT_IOCTL 64 -+ -+#define TIOCNOTTY _IO('T', 34) -+#define TIOCSETD _IOW('T', 35, int) -+#define TIOCGETD _IOR('T', 36, int) -+#define TCSBRKP _IOW('T', 37, int) -+#define TIOCSBRK _IO('T', 39) -+#define TIOCCBRK _IO('T', 40) -+#define TIOCGSID _IOR('T', 41, int) -+#define TCGETS _IOR('T', 42, char[44]) -+#define TCSETS _IOW('T', 43, char[44]) -+#define TCSETSW _IOW('T', 44, char[44]) -+#define TCSETSF _IOW('T', 45, char[44]) -+#define TIOCGPTN _IOR('T', 48, unsigned int) -+#define TIOCSPTLCK _IOW('T', 49, int) -+#define TIOCGDEV _IOR('T', 50, unsigned int) -+#define TIOCSIG _IOW('T', 54, int) -+#define TIOCVHANGUP _IO('T', 55) -+#define TIOCGPKT _IOR('T', 56, int) -+#define TIOCGPTLCK _IOR('T', 57, int) -+#define TIOCGEXCL _IOR('T', 64, int) -+ -+#define TIOCSERCONFIG _IO('T', 83) -+#define TIOCSERGWILD _IOR('T', 84, int) -+#define TIOCSERSWILD _IOW('T', 85, int) -+#define TIOCGLCKTRMIOS _IO('T', 86) -+#define TIOCSLCKTRMIOS _IO('T', 87) -+#define TIOCSERGSTRUCT _IOR('T', 88, char[216]) -+#define TIOCSERGETLSR _IOR('T', 89, unsigned int) -+#define TIOCSER_TEMT 0x01 -+#define TIOCSERGETMULTI _IOR('T', 90, char[168]) -+#define TIOCSERSETMULTI _IOW('T', 91, char[168]) -+ -+#define TIOCMIWAIT _IO('T', 92) -+#define TIOCGICOUNT _IO('T', 93) -+ -+struct winsize { -+ unsigned short ws_row; -+ unsigned short ws_col; -+ unsigned short ws_xpixel; -+ unsigned short ws_ypixel; -+}; -+ -+#define TIOCM_MODEM_BITS TIOCM_OUT2 -+ -+#define N_TTY 0 -+#define N_SLIP 1 -+#define N_MOUSE 2 -+#define N_PPP 3 -+#define N_STRIP 4 -+#define N_AX25 5 -+#define N_X25 6 -+#define N_6PACK 7 -+#define N_MASC 8 -+#define N_R3964 9 -+#define N_PROFIBUS_FDL 10 -+#define N_IRDA 11 -+#define N_SMSBLOCK 12 -+#define N_HDLC 13 -+#define N_SYNC_PPP 14 -+#define N_HCI 15 -+ -+#define FIOGETOWN _IOR('f', 123, int) -+#define FIOSETOWN _IOW('f', 124, int) -+ -+#define SIOCATMARK _IOR('s', 7, int) -+#define SIOCSPGRP _IOW('s', 8, int) -+#define SIOCGPGRP _IOW('s', 9, int) -+#define SIOCGSTAMP _IOR('s', 100, char[8]) -+ -+#define SIOCADDRT 0x890B -+#define SIOCDELRT 0x890C -+#define SIOCRTMSG 0x890D -+ -+#define SIOCGIFNAME 0x8910 -+#define SIOCSIFLINK 0x8911 -+#define SIOCGIFCONF 0x8912 -+#define SIOCGIFFLAGS 0x8913 -+#define SIOCSIFFLAGS 0x8914 -+#define SIOCGIFADDR 0x8915 -+#define SIOCSIFADDR 0x8916 -+#define SIOCGIFDSTADDR 0x8917 -+#define SIOCSIFDSTADDR 0x8918 -+#define SIOCGIFBRDADDR 0x8919 -+#define SIOCSIFBRDADDR 0x891a -+#define SIOCGIFNETMASK 0x891b -+#define SIOCSIFNETMASK 0x891c -+#define SIOCGIFMETRIC 0x891d -+#define SIOCSIFMETRIC 0x891e -+#define SIOCGIFMEM 0x891f -+#define SIOCSIFMEM 0x8920 -+#define SIOCGIFMTU 0x8921 -+#define SIOCSIFMTU 0x8922 -+#define SIOCSIFHWADDR 0x8924 -+#define SIOCGIFENCAP 0x8925 -+#define SIOCSIFENCAP 0x8926 -+#define SIOCGIFHWADDR 0x8927 -+#define SIOCGIFSLAVE 0x8929 -+#define SIOCSIFSLAVE 0x8930 -+#define SIOCADDMULTI 0x8931 -+#define SIOCDELMULTI 0x8932 -+#define SIOCGIFINDEX 0x8933 -+#define SIOGIFINDEX SIOCGIFINDEX -+#define SIOCSIFPFLAGS 0x8934 -+#define SIOCGIFPFLAGS 0x8935 -+#define SIOCDIFADDR 0x8936 -+#define SIOCSIFHWBROADCAST 0x8937 -+#define SIOCGIFCOUNT 0x8938 -+ -+#define SIOCGIFBR 0x8940 -+#define SIOCSIFBR 0x8941 -+ -+#define SIOCGIFTXQLEN 0x8942 -+#define SIOCSIFTXQLEN 0x8943 -+ -+#define SIOCDARP 0x8953 -+#define SIOCGARP 0x8954 -+#define SIOCSARP 0x8955 -+ -+#define SIOCDRARP 0x8960 -+#define SIOCGRARP 0x8961 -+#define SIOCSRARP 0x8962 -+ -+#define SIOCGIFMAP 0x8970 -+#define SIOCSIFMAP 0x8971 -+ -+#define SIOCADDDLCI 0x8980 -+#define SIOCDELDLCI 0x8981 -+ -+#define SIOCDEVPRIVATE 0x89F0 -+#define SIOCPROTOPRIVATE 0x89E0 -diff -Nur musl-0.9.15/arch/sh/bits/ipc.h musl-git/arch/sh/bits/ipc.h ---- musl-0.9.15/arch/sh/bits/ipc.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/ipc.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,14 @@ -+struct ipc_perm -+{ -+ key_t __ipc_perm_key; -+ uid_t uid; -+ gid_t gid; -+ uid_t cuid; -+ gid_t cgid; -+ mode_t mode; -+ int __ipc_perm_seq; -+ long __pad1; -+ long __pad2; -+}; -+ -+#define IPC_64 0x100 -diff -Nur musl-0.9.15/arch/sh/bits/limits.h musl-git/arch/sh/bits/limits.h ---- musl-0.9.15/arch/sh/bits/limits.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/limits.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,8 @@ -+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ -+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define PAGE_SIZE 4096 -+#define LONG_BIT 32 -+#endif -+ -+#define LONG_MAX 0x7fffffffL -+#define LLONG_MAX 0x7fffffffffffffffLL -diff -Nur musl-0.9.15/arch/sh/bits/mman.h musl-git/arch/sh/bits/mman.h ---- musl-0.9.15/arch/sh/bits/mman.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/mman.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,62 @@ -+#define MAP_FAILED ((void *) -1) -+ -+#define PROT_NONE 0 -+#define PROT_READ 1 -+#define PROT_WRITE 2 -+#define PROT_EXEC 4 -+#define PROT_GROWSDOWN 0x01000000 -+#define PROT_GROWSUP 0x02000000 -+ -+#define MAP_SHARED 0x01 -+#define MAP_PRIVATE 0x02 -+#define MAP_FIXED 0x10 -+ -+#define MAP_TYPE 0x0f -+#define MAP_FILE 0x00 -+#define MAP_ANON 0x20 -+#define MAP_ANONYMOUS MAP_ANON -+#define MAP_32BIT 0x40 -+#define MAP_NORESERVE 0x4000 -+#define MAP_GROWSDOWN 0x0100 -+#define MAP_DENYWRITE 0x0800 -+#define MAP_EXECUTABLE 0x1000 -+#define MAP_LOCKED 0x2000 -+#define MAP_POPULATE 0x8000 -+#define MAP_NONBLOCK 0x10000 -+#define MAP_STACK 0x20000 -+#define MAP_HUGETLB 0x40000 -+ -+#define POSIX_MADV_NORMAL 0 -+#define POSIX_MADV_RANDOM 1 -+#define POSIX_MADV_SEQUENTIAL 2 -+#define POSIX_MADV_WILLNEED 3 -+#define POSIX_MADV_DONTNEED 4 -+ -+#define MS_ASYNC 1 -+#define MS_INVALIDATE 2 -+#define MS_SYNC 4 -+ -+#define MCL_CURRENT 1 -+#define MCL_FUTURE 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define MADV_NORMAL 0 -+#define MADV_RANDOM 1 -+#define MADV_SEQUENTIAL 2 -+#define MADV_WILLNEED 3 -+#define MADV_DONTNEED 4 -+#define MADV_REMOVE 9 -+#define MADV_DONTFORK 10 -+#define MADV_DOFORK 11 -+#define MADV_MERGEABLE 12 -+#define MADV_UNMERGEABLE 13 -+#define MADV_HUGEPAGE 14 -+#define MADV_NOHUGEPAGE 15 -+#define MADV_DONTDUMP 16 -+#define MADV_DODUMP 17 -+#define MADV_HWPOISON 100 -+#define MADV_SOFT_OFFLINE 101 -+ -+#define MREMAP_MAYMOVE 1 -+#define MREMAP_FIXED 2 -+#endif -diff -Nur musl-0.9.15/arch/sh/bits/msg.h musl-git/arch/sh/bits/msg.h ---- musl-0.9.15/arch/sh/bits/msg.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/msg.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,16 @@ -+struct msqid_ds -+{ -+ struct ipc_perm msg_perm; -+ time_t msg_stime; -+ int __unused1; -+ time_t msg_rtime; -+ int __unused2; -+ time_t msg_ctime; -+ int __unused3; -+ unsigned long msg_cbytes; -+ msgqnum_t msg_qnum; -+ msglen_t msg_qbytes; -+ pid_t msg_lspid; -+ pid_t msg_lrpid; -+ unsigned long __unused[2]; -+}; -diff -Nur musl-0.9.15/arch/sh/bits/posix.h musl-git/arch/sh/bits/posix.h ---- musl-0.9.15/arch/sh/bits/posix.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/posix.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,2 @@ -+#define _POSIX_V6_ILP32_OFFBIG 1 -+#define _POSIX_V7_ILP32_OFFBIG 1 -diff -Nur musl-0.9.15/arch/sh/bits/setjmp.h musl-git/arch/sh/bits/setjmp.h ---- musl-0.9.15/arch/sh/bits/setjmp.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/setjmp.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+typedef unsigned long __jmp_buf[13]; -diff -Nur musl-0.9.15/arch/sh/bits/shm.h musl-git/arch/sh/bits/shm.h ---- musl-0.9.15/arch/sh/bits/shm.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/shm.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,28 @@ -+#define SHMLBA 16384 -+ -+struct shmid_ds -+{ -+ struct ipc_perm shm_perm; -+ size_t shm_segsz; -+ time_t shm_atime; -+ int __unused1; -+ time_t shm_dtime; -+ int __unused2; -+ time_t shm_ctime; -+ int __unused3; -+ pid_t shm_cpid; -+ pid_t shm_lpid; -+ unsigned long shm_nattch; -+ unsigned long __pad1; -+ unsigned long __pad2; -+}; -+ -+struct shminfo { -+ unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4]; -+}; -+ -+struct shm_info { -+ int __used_ids; -+ unsigned long shm_tot, shm_rss, shm_swp; -+ unsigned long __swap_attempts, __swap_successes; -+}; -diff -Nur musl-0.9.15/arch/sh/bits/signal.h musl-git/arch/sh/bits/signal.h ---- musl-0.9.15/arch/sh/bits/signal.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/signal.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,76 @@ -+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ -+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+typedef int greg_t, gregset_t[16]; -+typedef int freg_t, fpregset_t[16]; -+typedef struct sigcontext { -+ unsigned long oldmask; -+ unsigned long sc_regs[16]; -+ unsigned long sc_pc, sc_pr, sc_sr; -+ unsigned long sc_gbr, sc_mach, sc_macl; -+ unsigned long sc_fpregs[16]; -+ unsigned long sc_xfpregs[16]; -+ unsigned int sc_fpscr, sc_fpul, sc_ownedfp; -+} mcontext_t; -+#else -+typedef struct { -+ unsigned long __regs[58]; -+} mcontext_t; -+#endif -+ -+typedef struct __ucontext { -+ unsigned long uc_flags; -+ struct __ucontext *uc_link; -+ stack_t uc_stack; -+ mcontext_t uc_mcontext; -+ sigset_t uc_sigmask; -+} ucontext_t; -+ -+#define SA_NOCLDSTOP 1 -+#define SA_NOCLDWAIT 2 -+#define SA_SIGINFO 4 -+#define SA_ONSTACK 0x08000000 -+#define SA_RESTART 0x10000000 -+#define SA_NODEFER 0x40000000 -+#define SA_RESETHAND 0x80000000 -+#define SA_RESTORER 0x04000000 -+ -+#endif -+ -+#define SIGHUP 1 -+#define SIGINT 2 -+#define SIGQUIT 3 -+#define SIGILL 4 -+#define SIGTRAP 5 -+#define SIGABRT 6 -+#define SIGIOT SIGABRT -+#define SIGBUS 7 -+#define SIGFPE 8 -+#define SIGKILL 9 -+#define SIGUSR1 10 -+#define SIGSEGV 11 -+#define SIGUSR2 12 -+#define SIGPIPE 13 -+#define SIGALRM 14 -+#define SIGTERM 15 -+#define SIGSTKFLT 16 -+#define SIGCHLD 17 -+#define SIGCONT 18 -+#define SIGSTOP 19 -+#define SIGTSTP 20 -+#define SIGTTIN 21 -+#define SIGTTOU 22 -+#define SIGURG 23 -+#define SIGXCPU 24 -+#define SIGXFSZ 25 -+#define SIGVTALRM 26 -+#define SIGPROF 27 -+#define SIGWINCH 28 -+#define SIGIO 29 -+#define SIGPOLL 29 -+#define SIGPWR 30 -+#define SIGSYS 31 -+#define SIGUNUSED SIGSYS -+ -+#define _NSIG 65 -diff -Nur musl-0.9.15/arch/sh/bits/socket.h musl-git/arch/sh/bits/socket.h ---- musl-0.9.15/arch/sh/bits/socket.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/socket.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,17 @@ -+struct msghdr -+{ -+ void *msg_name; -+ socklen_t msg_namelen; -+ struct iovec *msg_iov; -+ int msg_iovlen; -+ void *msg_control; -+ socklen_t msg_controllen; -+ int msg_flags; -+}; -+ -+struct cmsghdr -+{ -+ socklen_t cmsg_len; -+ int cmsg_level; -+ int cmsg_type; -+}; -diff -Nur musl-0.9.15/arch/sh/bits/statfs.h musl-git/arch/sh/bits/statfs.h ---- musl-0.9.15/arch/sh/bits/statfs.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/statfs.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,7 @@ -+struct statfs { -+ unsigned long f_type, f_bsize; -+ fsblkcnt_t f_blocks, f_bfree, f_bavail; -+ fsfilcnt_t f_files, f_ffree; -+ fsid_t f_fsid; -+ unsigned long f_namelen, f_frsize, f_flags, f_spare[4]; -+}; -diff -Nur musl-0.9.15/arch/sh/bits/stat.h musl-git/arch/sh/bits/stat.h ---- musl-0.9.15/arch/sh/bits/stat.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/stat.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,22 @@ -+/* copied from kernel definition, but with padding replaced -+ * by the corresponding correctly-sized userspace types. */ -+ -+struct stat -+{ -+ dev_t st_dev; -+ int __st_dev_padding; -+ long __st_ino_truncated; -+ mode_t st_mode; -+ nlink_t st_nlink; -+ uid_t st_uid; -+ gid_t st_gid; -+ dev_t st_rdev; -+ int __st_rdev_padding; -+ off_t st_size; -+ blksize_t st_blksize; -+ blkcnt_t st_blocks; -+ struct timespec st_atim; -+ struct timespec st_mtim; -+ struct timespec st_ctim; -+ ino_t st_ino; -+}; -diff -Nur musl-0.9.15/arch/sh/bits/stdarg.h musl-git/arch/sh/bits/stdarg.h ---- musl-0.9.15/arch/sh/bits/stdarg.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/stdarg.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,4 @@ -+#define va_start(v,l) __builtin_va_start(v,l) -+#define va_end(v) __builtin_va_end(v) -+#define va_arg(v,l) __builtin_va_arg(v,l) -+#define va_copy(d,s) __builtin_va_copy(d,s) -diff -Nur musl-0.9.15/arch/sh/bits/stdint.h musl-git/arch/sh/bits/stdint.h ---- musl-0.9.15/arch/sh/bits/stdint.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/stdint.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,20 @@ -+typedef int32_t int_fast16_t; -+typedef int32_t int_fast32_t; -+typedef uint32_t uint_fast16_t; -+typedef uint32_t uint_fast32_t; -+ -+#define INT_FAST16_MIN INT32_MIN -+#define INT_FAST32_MIN INT32_MIN -+ -+#define INT_FAST16_MAX INT32_MAX -+#define INT_FAST32_MAX INT32_MAX -+ -+#define UINT_FAST16_MAX UINT32_MAX -+#define UINT_FAST32_MAX UINT32_MAX -+ -+#define INTPTR_MIN INT32_MIN -+#define INTPTR_MAX INT32_MAX -+#define UINTPTR_MAX UINT32_MAX -+#define PTRDIFF_MIN INT32_MIN -+#define PTRDIFF_MAX INT32_MAX -+#define SIZE_MAX UINT32_MAX -diff -Nur musl-0.9.15/arch/sh/bits/syscall.h musl-git/arch/sh/bits/syscall.h ---- musl-0.9.15/arch/sh/bits/syscall.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/syscall.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,684 @@ -+#define __NR_restart_syscall 0 -+#define __NR_exit 1 -+#define __NR_fork 2 -+#define __NR_read 3 -+#define __NR_write 4 -+#define __NR_open 5 -+#define __NR_close 6 -+#define __NR_waitpid 7 -+#define __NR_creat 8 -+#define __NR_link 9 -+#define __NR_unlink 10 -+#define __NR_execve 11 -+#define __NR_chdir 12 -+#define __NR_time 13 -+#define __NR_mknod 14 -+#define __NR_chmod 15 -+#define __NR_lchown 16 -+#define __NR_oldstat 18 -+#define __NR_lseek 19 -+#define __NR_getpid 20 -+#define __NR_mount 21 -+#define __NR_umount 22 -+#define __NR_setuid 23 -+#define __NR_getuid 24 -+#define __NR_stime 25 -+#define __NR_ptrace 26 -+#define __NR_alarm 27 -+#define __NR_oldfstat 28 -+#define __NR_pause 29 -+#define __NR_utime 30 -+#define __NR_access 33 -+#define __NR_nice 34 -+#define __NR_sync 36 -+#define __NR_kill 37 -+#define __NR_rename 38 -+#define __NR_mkdir 39 -+#define __NR_rmdir 40 -+#define __NR_dup 41 -+#define __NR_pipe 42 -+#define __NR_times 43 -+#define __NR_brk 45 -+#define __NR_setgid 46 -+#define __NR_getgid 47 -+#define __NR_signal 48 -+#define __NR_geteuid 49 -+#define __NR_getegid 50 -+#define __NR_acct 51 -+#define __NR_umount2 52 -+#define __NR_ioctl 54 -+#define __NR_fcntl 55 -+#define __NR_setpgid 57 -+#define __NR_umask 60 -+#define __NR_chroot 61 -+#define __NR_ustat 62 -+#define __NR_dup2 63 -+#define __NR_getppid 64 -+#define __NR_getpgrp 65 -+#define __NR_setsid 66 -+#define __NR_sigaction 67 -+#define __NR_sgetmask 68 -+#define __NR_ssetmask 69 -+#define __NR_setreuid 70 -+#define __NR_setregid 71 -+#define __NR_sigsuspend 72 -+#define __NR_sigpending 73 -+#define __NR_sethostname 74 -+#define __NR_setrlimit 75 -+#define __NR_getrlimit 76 -+#define __NR_getrusage 77 -+#define __NR_gettimeofday 78 -+#define __NR_settimeofday 79 -+#define __NR_getgroups 80 -+#define __NR_setgroups 81 -+#define __NR_symlink 83 -+#define __NR_oldlstat 84 -+#define __NR_readlink 85 -+#define __NR_uselib 86 -+#define __NR_swapon 87 -+#define __NR_reboot 88 -+#define __NR_readdir 89 -+#define __NR_mmap 90 -+#define __NR_munmap 91 -+#define __NR_truncate 92 -+#define __NR_ftruncate 93 -+#define __NR_fchmod 94 -+#define __NR_fchown 95 -+#define __NR_getpriority 96 -+#define __NR_setpriority 97 -+#define __NR_statfs 99 -+#define __NR_fstatfs 100 -+#define __NR_socketcall 102 -+#define __NR_syslog 103 -+#define __NR_setitimer 104 -+#define __NR_getitimer 105 -+#define __NR_stat 106 -+#define __NR_lstat 107 -+#define __NR_fstat 108 -+#define __NR_olduname 109 -+#define __NR_vhangup 111 -+#define __NR_wait4 114 -+#define __NR_swapoff 115 -+#define __NR_sysinfo 116 -+#define __NR_ipc 117 -+#define __NR_fsync 118 -+#define __NR_sigreturn 119 -+#define __NR_clone 120 -+#define __NR_setdomainname 121 -+#define __NR_uname 122 -+#define __NR_cacheflush 123 -+#define __NR_adjtimex 124 -+#define __NR_mprotect 125 -+#define __NR_sigprocmask 126 -+#define __NR_init_module 128 -+#define __NR_delete_module 129 -+#define __NR_quotactl 131 -+#define __NR_getpgid 132 -+#define __NR_fchdir 133 -+#define __NR_bdflush 134 -+#define __NR_sysfs 135 -+#define __NR_personality 136 -+#define __NR_setfsuid 138 -+#define __NR_setfsgid 139 -+#define __NR__llseek 140 -+#define __NR_getdents 141 -+#define __NR__newselect 142 -+#define __NR_flock 143 -+#define __NR_msync 144 -+#define __NR_readv 145 -+#define __NR_writev 146 -+#define __NR_getsid 147 -+#define __NR_fdatasync 148 -+#define __NR__sysctl 149 -+#define __NR_mlock 150 -+#define __NR_munlock 151 -+#define __NR_mlockall 152 -+#define __NR_munlockall 153 -+#define __NR_sched_setparam 154 -+#define __NR_sched_getparam 155 -+#define __NR_sched_setscheduler 156 -+#define __NR_sched_getscheduler 157 -+#define __NR_sched_yield 158 -+#define __NR_sched_get_priority_max 159 -+#define __NR_sched_get_priority_min 160 -+#define __NR_sched_rr_get_interval 161 -+#define __NR_nanosleep 162 -+#define __NR_mremap 163 -+#define __NR_setresuid 164 -+#define __NR_getresuid 165 -+#define __NR_poll 168 -+#define __NR_nfsservctl 169 -+#define __NR_setresgid 170 -+#define __NR_getresgid 171 -+#define __NR_prctl 172 -+#define __NR_rt_sigreturn 173 -+#define __NR_rt_sigaction 174 -+#define __NR_rt_sigprocmask 175 -+#define __NR_rt_sigpending 176 -+#define __NR_rt_sigtimedwait 177 -+#define __NR_rt_sigqueueinfo 178 -+#define __NR_rt_sigsuspend 179 -+#define __NR_pread64 180 -+#define __NR_pwrite64 181 -+#define __NR_chown 182 -+#define __NR_getcwd 183 -+#define __NR_capget 184 -+#define __NR_capset 185 -+#define __NR_sigaltstack 186 -+#define __NR_sendfile 187 -+#define __NR_vfork 190 -+#define __NR_ugetrlimit 191 -+#define __NR_mmap2 192 -+#define __NR_truncate64 193 -+#define __NR_ftruncate64 194 -+#define __NR_stat64 195 -+#define __NR_lstat64 196 -+#define __NR_fstat64 197 -+#define __NR_lchown32 198 -+#define __NR_getuid32 199 -+#define __NR_getgid32 200 -+#define __NR_geteuid32 201 -+#define __NR_getegid32 202 -+#define __NR_setreuid32 203 -+#define __NR_setregid32 204 -+#define __NR_getgroups32 205 -+#define __NR_setgroups32 206 -+#define __NR_fchown32 207 -+#define __NR_setresuid32 208 -+#define __NR_getresuid32 209 -+#define __NR_setresgid32 210 -+#define __NR_getresgid32 211 -+#define __NR_chown32 212 -+#define __NR_setuid32 213 -+#define __NR_setgid32 214 -+#define __NR_setfsuid32 215 -+#define __NR_setfsgid32 216 -+#define __NR_pivot_root 217 -+#define __NR_mincore 218 -+#define __NR_madvise 219 -+#define __NR_getdents64 220 -+#define __NR_fcntl64 221 -+#define __NR_gettid 224 -+#define __NR_readahead 225 -+#define __NR_setxattr 226 -+#define __NR_lsetxattr 227 -+#define __NR_fsetxattr 228 -+#define __NR_getxattr 229 -+#define __NR_lgetxattr 230 -+#define __NR_fgetxattr 231 -+#define __NR_listxattr 232 -+#define __NR_llistxattr 233 -+#define __NR_flistxattr 234 -+#define __NR_removexattr 235 -+#define __NR_lremovexattr 236 -+#define __NR_fremovexattr 237 -+#define __NR_tkill 238 -+#define __NR_sendfile64 239 -+#define __NR_futex 240 -+#define __NR_sched_setaffinity 241 -+#define __NR_sched_getaffinity 242 -+#define __NR_io_setup 245 -+#define __NR_io_destroy 246 -+#define __NR_io_getevents 247 -+#define __NR_io_submit 248 -+#define __NR_io_cancel 249 -+#define __NR_fadvise64 250 -+#define __NR_exit_group 252 -+#define __NR_lookup_dcookie 253 -+#define __NR_epoll_create 254 -+#define __NR_epoll_ctl 255 -+#define __NR_epoll_wait 256 -+#define __NR_remap_file_pages 257 -+#define __NR_set_tid_address 258 -+#define __NR_timer_create 259 -+#define __NR_timer_settime 260 -+#define __NR_timer_gettime 261 -+#define __NR_timer_getoverrun 262 -+#define __NR_timer_delete 263 -+#define __NR_clock_settime 264 -+#define __NR_clock_gettime 265 -+#define __NR_clock_getres 266 -+#define __NR_clock_nanosleep 267 -+#define __NR_statfs64 268 -+#define __NR_fstatfs64 269 -+#define __NR_tgkill 270 -+#define __NR_utimes 271 -+#define __NR_fadvise64_64 272 -+#define __NR_mbind 274 -+#define __NR_get_mempolicy 275 -+#define __NR_set_mempolicy 276 -+#define __NR_mq_open 277 -+#define __NR_mq_unlink 278 -+#define __NR_mq_timedsend 279 -+#define __NR_mq_timedreceive 280 -+#define __NR_mq_notify 281 -+#define __NR_mq_getsetattr 282 -+#define __NR_kexec_load 283 -+#define __NR_waitid 284 -+#define __NR_add_key 285 -+#define __NR_request_key 286 -+#define __NR_keyctl 287 -+#define __NR_ioprio_set 288 -+#define __NR_ioprio_get 289 -+#define __NR_inotify_init 290 -+#define __NR_inotify_add_watch 291 -+#define __NR_inotify_rm_watch 292 -+#define __NR_migrate_pages 294 -+#define __NR_openat 295 -+#define __NR_mkdirat 296 -+#define __NR_mknodat 297 -+#define __NR_fchownat 298 -+#define __NR_futimesat 299 -+#define __NR_fstatat64 300 -+#define __NR_unlinkat 301 -+#define __NR_renameat 302 -+#define __NR_linkat 303 -+#define __NR_symlinkat 304 -+#define __NR_readlinkat 305 -+#define __NR_fchmodat 306 -+#define __NR_faccessat 307 -+#define __NR_pselect6 308 -+#define __NR_ppoll 309 -+#define __NR_unshare 310 -+#define __NR_set_robust_list 311 -+#define __NR_get_robust_list 312 -+#define __NR_splice 313 -+#define __NR_sync_file_range 314 -+#define __NR_tee 315 -+#define __NR_vmsplice 316 -+#define __NR_move_pages 317 -+#define __NR_getcpu 318 -+#define __NR_epoll_pwait 319 -+#define __NR_utimensat 320 -+#define __NR_signalfd 321 -+#define __NR_timerfd_create 322 -+#define __NR_eventfd 323 -+#define __NR_fallocate 324 -+#define __NR_timerfd_settime 325 -+#define __NR_timerfd_gettime 326 -+#define __NR_signalfd4 327 -+#define __NR_eventfd2 328 -+#define __NR_epoll_create1 329 -+#define __NR_dup3 330 -+#define __NR_pipe2 331 -+#define __NR_inotify_init1 332 -+#define __NR_preadv 333 -+#define __NR_pwritev 334 -+#define __NR_rt_tgsigqueueinfo 335 -+#define __NR_perf_event_open 336 -+#define __NR_fanotify_init 337 -+#define __NR_fanotify_mark 338 -+#define __NR_prlimit64 339 -+#define __NR_socket 340 -+#define __NR_bind 341 -+#define __NR_connect 342 -+#define __NR_listen 343 -+#define __NR_accept 344 -+#define __NR_getsockname 345 -+#define __NR_getpeername 346 -+#define __NR_socketpair 347 -+#define __NR_send 348 -+#define __NR_sendto 349 -+#define __NR_recv 350 -+#define __NR_recvfrom 351 -+#define __NR_shutdown 352 -+#define __NR_setsockopt 353 -+#define __NR_getsockopt 354 -+#define __NR_sendmsg 355 -+#define __NR_recvmsg 356 -+#define __NR_recvmmsg 357 -+#define __NR_accept4 358 -+#define __NR_name_to_handle_at 359 -+#define __NR_open_by_handle_at 360 -+#define __NR_clock_adjtime 361 -+#define __NR_syncfs 362 -+#define __NR_sendmmsg 363 -+#define __NR_setns 364 -+#define __NR_process_vm_readv 365 -+#define __NR_process_vm_writev 366 -+#define __NR_kcmp 367 -+#define __NR_finit_module 368 -+ -+ -+/* Repeated with SYS_ prefix */ -+ -+#define SYS_restart_syscall 0 -+#define SYS_exit 1 -+#define SYS_fork 2 -+#define SYS_read 3 -+#define SYS_write 4 -+#define SYS_open 5 -+#define SYS_close 6 -+#define SYS_waitpid 7 -+#define SYS_creat 8 -+#define SYS_link 9 -+#define SYS_unlink 10 -+#define SYS_execve 11 -+#define SYS_chdir 12 -+#define SYS_time 13 -+#define SYS_mknod 14 -+#define SYS_chmod 15 -+#define SYS_lchown 16 -+#define SYS_oldstat 18 -+#define SYS_lseek 19 -+#define SYS_getpid 20 -+#define SYS_mount 21 -+#define SYS_umount 22 -+#define SYS_setuid 23 -+#define SYS_getuid 24 -+#define SYS_stime 25 -+#define SYS_ptrace 26 -+#define SYS_alarm 27 -+#define SYS_oldfstat 28 -+#define SYS_pause 29 -+#define SYS_utime 30 -+#define SYS_access 33 -+#define SYS_nice 34 -+#define SYS_sync 36 -+#define SYS_kill 37 -+#define SYS_rename 38 -+#define SYS_mkdir 39 -+#define SYS_rmdir 40 -+#define SYS_dup 41 -+#define SYS_pipe 42 -+#define SYS_times 43 -+#define SYS_brk 45 -+#define SYS_setgid 46 -+#define SYS_getgid 47 -+#define SYS_signal 48 -+#define SYS_geteuid 49 -+#define SYS_getegid 50 -+#define SYS_acct 51 -+#define SYS_umount2 52 -+#define SYS_ioctl 54 -+#define SYS_fcntl 55 -+#define SYS_setpgid 57 -+#define SYS_umask 60 -+#define SYS_chroot 61 -+#define SYS_ustat 62 -+#define SYS_dup2 63 -+#define SYS_getppid 64 -+#define SYS_getpgrp 65 -+#define SYS_setsid 66 -+#define SYS_sigaction 67 -+#define SYS_sgetmask 68 -+#define SYS_ssetmask 69 -+#define SYS_setreuid 70 -+#define SYS_setregid 71 -+#define SYS_sigsuspend 72 -+#define SYS_sigpending 73 -+#define SYS_sethostname 74 -+#define SYS_setrlimit 75 -+#define SYS_getrlimit 76 -+#define SYS_getrusage 77 -+#define SYS_gettimeofday 78 -+#define SYS_settimeofday 79 -+#define SYS_getgroups 80 -+#define SYS_setgroups 81 -+#define SYS_symlink 83 -+#define SYS_oldlstat 84 -+#define SYS_readlink 85 -+#define SYS_uselib 86 -+#define SYS_swapon 87 -+#define SYS_reboot 88 -+#define SYS_readdir 89 -+#define SYS_mmap 90 -+#define SYS_munmap 91 -+#define SYS_truncate 92 -+#define SYS_ftruncate 93 -+#define SYS_fchmod 94 -+#define SYS_fchown 95 -+#define SYS_getpriority 96 -+#define SYS_setpriority 97 -+#define SYS_statfs 99 -+#define SYS_fstatfs 100 -+#define SYS_socketcall 102 -+#define SYS_syslog 103 -+#define SYS_setitimer 104 -+#define SYS_getitimer 105 -+#define SYS_stat 106 -+#define SYS_lstat 107 -+#define SYS_fstat 108 -+#define SYS_olduname 109 -+#define SYS_vhangup 111 -+#define SYS_wait4 114 -+#define SYS_swapoff 115 -+#define SYS_sysinfo 116 -+#define SYS_ipc 117 -+#define SYS_fsync 118 -+#define SYS_sigreturn 119 -+#define SYS_clone 120 -+#define SYS_setdomainname 121 -+#define SYS_uname 122 -+#define SYS_cacheflush 123 -+#define SYS_adjtimex 124 -+#define SYS_mprotect 125 -+#define SYS_sigprocmask 126 -+#define SYS_init_module 128 -+#define SYS_delete_module 129 -+#define SYS_quotactl 131 -+#define SYS_getpgid 132 -+#define SYS_fchdir 133 -+#define SYS_bdflush 134 -+#define SYS_sysfs 135 -+#define SYS_personality 136 -+#define SYS_setfsuid 138 -+#define SYS_setfsgid 139 -+#define SYS__llseek 140 -+#define SYS_getdents 141 -+#define SYS__newselect 142 -+#define SYS_flock 143 -+#define SYS_msync 144 -+#define SYS_readv 145 -+#define SYS_writev 146 -+#define SYS_getsid 147 -+#define SYS_fdatasync 148 -+#define SYS__sysctl 149 -+#define SYS_mlock 150 -+#define SYS_munlock 151 -+#define SYS_mlockall 152 -+#define SYS_munlockall 153 -+#define SYS_sched_setparam 154 -+#define SYS_sched_getparam 155 -+#define SYS_sched_setscheduler 156 -+#define SYS_sched_getscheduler 157 -+#define SYS_sched_yield 158 -+#define SYS_sched_get_priority_max 159 -+#define SYS_sched_get_priority_min 160 -+#define SYS_sched_rr_get_interval 161 -+#define SYS_nanosleep 162 -+#define SYS_mremap 163 -+#define SYS_setresuid 164 -+#define SYS_getresuid 165 -+#define SYS_poll 168 -+#define SYS_nfsservctl 169 -+#define SYS_setresgid 170 -+#define SYS_getresgid 171 -+#define SYS_prctl 172 -+#define SYS_rt_sigreturn 173 -+#define SYS_rt_sigaction 174 -+#define SYS_rt_sigprocmask 175 -+#define SYS_rt_sigpending 176 -+#define SYS_rt_sigtimedwait 177 -+#define SYS_rt_sigqueueinfo 178 -+#define SYS_rt_sigsuspend 179 -+#define SYS_pread64 180 -+#define SYS_pwrite64 181 -+#define SYS_chown 182 -+#define SYS_getcwd 183 -+#define SYS_capget 184 -+#define SYS_capset 185 -+#define SYS_sigaltstack 186 -+#define SYS_sendfile 187 -+#define SYS_vfork 190 -+#define SYS_ugetrlimit 191 -+#define SYS_mmap2 192 -+#define SYS_truncate64 193 -+#define SYS_ftruncate64 194 -+#define SYS_stat64 195 -+#define SYS_lstat64 196 -+#define SYS_fstat64 197 -+#define SYS_lchown32 198 -+#define SYS_getuid32 199 -+#define SYS_getgid32 200 -+#define SYS_geteuid32 201 -+#define SYS_getegid32 202 -+#define SYS_setreuid32 203 -+#define SYS_setregid32 204 -+#define SYS_getgroups32 205 -+#define SYS_setgroups32 206 -+#define SYS_fchown32 207 -+#define SYS_setresuid32 208 -+#define SYS_getresuid32 209 -+#define SYS_setresgid32 210 -+#define SYS_getresgid32 211 -+#define SYS_chown32 212 -+#define SYS_setuid32 213 -+#define SYS_setgid32 214 -+#define SYS_setfsuid32 215 -+#define SYS_setfsgid32 216 -+#define SYS_pivot_root 217 -+#define SYS_mincore 218 -+#define SYS_madvise 219 -+#define SYS_getdents64 220 -+#define SYS_fcntl64 221 -+#define SYS_gettid 224 -+#define SYS_readahead 225 -+#define SYS_setxattr 226 -+#define SYS_lsetxattr 227 -+#define SYS_fsetxattr 228 -+#define SYS_getxattr 229 -+#define SYS_lgetxattr 230 -+#define SYS_fgetxattr 231 -+#define SYS_listxattr 232 -+#define SYS_llistxattr 233 -+#define SYS_flistxattr 234 -+#define SYS_removexattr 235 -+#define SYS_lremovexattr 236 -+#define SYS_fremovexattr 237 -+#define SYS_tkill 238 -+#define SYS_sendfile64 239 -+#define SYS_futex 240 -+#define SYS_sched_setaffinity 241 -+#define SYS_sched_getaffinity 242 -+#define SYS_io_setup 245 -+#define SYS_io_destroy 246 -+#define SYS_io_getevents 247 -+#define SYS_io_submit 248 -+#define SYS_io_cancel 249 -+#define SYS_fadvise64 250 -+#define SYS_exit_group 252 -+#define SYS_lookup_dcookie 253 -+#define SYS_epoll_create 254 -+#define SYS_epoll_ctl 255 -+#define SYS_epoll_wait 256 -+#define SYS_remap_file_pages 257 -+#define SYS_set_tid_address 258 -+#define SYS_timer_create 259 -+#define SYS_timer_settime 260 -+#define SYS_timer_gettime 261 -+#define SYS_timer_getoverrun 262 -+#define SYS_timer_delete 263 -+#define SYS_clock_settime 264 -+#define SYS_clock_gettime 265 -+#define SYS_clock_getres 266 -+#define SYS_clock_nanosleep 267 -+#define SYS_statfs64 268 -+#define SYS_fstatfs64 269 -+#define SYS_tgkill 270 -+#define SYS_utimes 271 -+#define SYS_fadvise64_64 272 -+#define SYS_mbind 274 -+#define SYS_get_mempolicy 275 -+#define SYS_set_mempolicy 276 -+#define SYS_mq_open 277 -+#define SYS_mq_unlink 278 -+#define SYS_mq_timedsend 279 -+#define SYS_mq_timedreceive 280 -+#define SYS_mq_notify 281 -+#define SYS_mq_getsetattr 282 -+#define SYS_kexec_load 283 -+#define SYS_waitid 284 -+#define SYS_add_key 285 -+#define SYS_request_key 286 -+#define SYS_keyctl 287 -+#define SYS_ioprio_set 288 -+#define SYS_ioprio_get 289 -+#define SYS_inotify_init 290 -+#define SYS_inotify_add_watch 291 -+#define SYS_inotify_rm_watch 292 -+#define SYS_migrate_pages 294 -+#define SYS_openat 295 -+#define SYS_mkdirat 296 -+#define SYS_mknodat 297 -+#define SYS_fchownat 298 -+#define SYS_futimesat 299 -+#define SYS_fstatat64 300 -+#define SYS_unlinkat 301 -+#define SYS_renameat 302 -+#define SYS_linkat 303 -+#define SYS_symlinkat 304 -+#define SYS_readlinkat 305 -+#define SYS_fchmodat 306 -+#define SYS_faccessat 307 -+#define SYS_pselect6 308 -+#define SYS_ppoll 309 -+#define SYS_unshare 310 -+#define SYS_set_robust_list 311 -+#define SYS_get_robust_list 312 -+#define SYS_splice 313 -+#define SYS_sync_file_range 314 -+#define SYS_tee 315 -+#define SYS_vmsplice 316 -+#define SYS_move_pages 317 -+#define SYS_getcpu 318 -+#define SYS_epoll_pwait 319 -+#define SYS_utimensat 320 -+#define SYS_signalfd 321 -+#define SYS_timerfd_create 322 -+#define SYS_eventfd 323 -+#define SYS_fallocate 324 -+#define SYS_timerfd_settime 325 -+#define SYS_timerfd_gettime 326 -+#define SYS_signalfd4 327 -+#define SYS_eventfd2 328 -+#define SYS_epoll_create1 329 -+#define SYS_dup3 330 -+#define SYS_pipe2 331 -+#define SYS_inotify_init1 332 -+#define SYS_preadv 333 -+#define SYS_pwritev 334 -+#define SYS_rt_tgsigqueueinfo 335 -+#define SYS_perf_event_open 336 -+#define SYS_fanotify_init 337 -+#define SYS_fanotify_mark 338 -+#define SYS_prlimit64 339 -+#define SYS_socket 340 -+#define SYS_bind 341 -+#define SYS_connect 342 -+#define SYS_listen 343 -+#define SYS_accept 344 -+#define SYS_getsockname 345 -+#define SYS_getpeername 346 -+#define SYS_socketpair 347 -+#define SYS_send 348 -+#define SYS_sendto 349 -+#define SYS_recv 350 -+#define SYS_recvfrom 351 -+#define SYS_shutdown 352 -+#define SYS_setsockopt 353 -+#define SYS_getsockopt 354 -+#define SYS_sendmsg 355 -+#define SYS_recvmsg 356 -+#define SYS_recvmmsg 357 -+#define SYS_accept4 358 -+#define SYS_name_to_handle_at 359 -+#define SYS_open_by_handle_at 360 -+#define SYS_clock_adjtime 361 -+#define SYS_syncfs 362 -+#define SYS_sendmmsg 363 -+#define SYS_setns 364 -+#define SYS_process_vm_readv 365 -+#define SYS_process_vm_writev 366 -+#define SYS_kcmp 367 -+#define SYS_finit_module 368 -diff -Nur musl-0.9.15/arch/sh/bits/termios.h musl-git/arch/sh/bits/termios.h ---- musl-0.9.15/arch/sh/bits/termios.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/termios.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,160 @@ -+struct termios -+{ -+ tcflag_t c_iflag; -+ tcflag_t c_oflag; -+ tcflag_t c_cflag; -+ tcflag_t c_lflag; -+ cc_t c_line; -+ cc_t c_cc[NCCS]; -+ speed_t __c_ispeed; -+ speed_t __c_ospeed; -+}; -+ -+#define VINTR 0 -+#define VQUIT 1 -+#define VERASE 2 -+#define VKILL 3 -+#define VEOF 4 -+#define VTIME 5 -+#define VMIN 6 -+#define VSWTC 7 -+#define VSTART 8 -+#define VSTOP 9 -+#define VSUSP 10 -+#define VEOL 11 -+#define VREPRINT 12 -+#define VDISCARD 13 -+#define VWERASE 14 -+#define VLNEXT 15 -+#define VEOL2 16 -+ -+#define IGNBRK 0000001 -+#define BRKINT 0000002 -+#define IGNPAR 0000004 -+#define PARMRK 0000010 -+#define INPCK 0000020 -+#define ISTRIP 0000040 -+#define INLCR 0000100 -+#define IGNCR 0000200 -+#define ICRNL 0000400 -+#define IUCLC 0001000 -+#define IXON 0002000 -+#define IXANY 0004000 -+#define IXOFF 0010000 -+#define IMAXBEL 0020000 -+#define IUTF8 0040000 -+ -+#define OPOST 0000001 -+#define OLCUC 0000002 -+#define ONLCR 0000004 -+#define OCRNL 0000010 -+#define ONOCR 0000020 -+#define ONLRET 0000040 -+#define OFILL 0000100 -+#define OFDEL 0000200 -+#define NLDLY 0000400 -+#define NL0 0000000 -+#define NL1 0000400 -+#define CRDLY 0003000 -+#define CR0 0000000 -+#define CR1 0001000 -+#define CR2 0002000 -+#define CR3 0003000 -+#define TABDLY 0014000 -+#define TAB0 0000000 -+#define TAB1 0004000 -+#define TAB2 0010000 -+#define TAB3 0014000 -+#define BSDLY 0020000 -+#define BS0 0000000 -+#define BS1 0020000 -+#define FFDLY 0100000 -+#define FF0 0000000 -+#define FF1 0100000 -+ -+#define VTDLY 0040000 -+#define VT0 0000000 -+#define VT1 0040000 -+ -+#define B0 0000000 -+#define B50 0000001 -+#define B75 0000002 -+#define B110 0000003 -+#define B134 0000004 -+#define B150 0000005 -+#define B200 0000006 -+#define B300 0000007 -+#define B600 0000010 -+#define B1200 0000011 -+#define B1800 0000012 -+#define B2400 0000013 -+#define B4800 0000014 -+#define B9600 0000015 -+#define B19200 0000016 -+#define B38400 0000017 -+ -+#define B57600 0010001 -+#define B115200 0010002 -+#define B230400 0010003 -+#define B460800 0010004 -+#define B500000 0010005 -+#define B576000 0010006 -+#define B921600 0010007 -+#define B1000000 0010010 -+#define B1152000 0010011 -+#define B1500000 0010012 -+#define B2000000 0010013 -+#define B2500000 0010014 -+#define B3000000 0010015 -+#define B3500000 0010016 -+#define B4000000 0010017 -+ -+#define CBAUD 0010017 -+ -+#define CSIZE 0000060 -+#define CS5 0000000 -+#define CS6 0000020 -+#define CS7 0000040 -+#define CS8 0000060 -+#define CSTOPB 0000100 -+#define CREAD 0000200 -+#define PARENB 0000400 -+#define PARODD 0001000 -+#define HUPCL 0002000 -+#define CLOCAL 0004000 -+ -+#define ISIG 0000001 -+#define ICANON 0000002 -+#define ECHO 0000010 -+#define ECHOE 0000020 -+#define ECHOK 0000040 -+#define ECHONL 0000100 -+#define NOFLSH 0000200 -+#define TOSTOP 0000400 -+#define IEXTEN 0100000 -+ -+#define ECHOCTL 0001000 -+#define ECHOPRT 0002000 -+#define ECHOKE 0004000 -+#define FLUSHO 0010000 -+#define PENDIN 0040000 -+ -+#define TCOOFF 0 -+#define TCOON 1 -+#define TCIOFF 2 -+#define TCION 3 -+ -+#define TCIFLUSH 0 -+#define TCOFLUSH 1 -+#define TCIOFLUSH 2 -+ -+#define TCSANOW 0 -+#define TCSADRAIN 1 -+#define TCSAFLUSH 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define CBAUDEX 0010000 -+#define CRTSCTS 020000000000 -+#define EXTPROC 0200000 -+#define XTABS 0014000 -+#endif -diff -Nur musl-0.9.15/arch/sh/bits/user.h musl-git/arch/sh/bits/user.h ---- musl-0.9.15/arch/sh/bits/user.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/bits/user.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,75 @@ -+#undef __WORDSIZE -+#define __WORDSIZE 32 -+ -+#define REG_REG0 0 -+#define REG_REG15 15 -+#define REG_PC 16 -+#define REG_PR 17 -+#define REG_SR 18 -+#define REG_GBR 19 -+#define REG_MACH 20 -+#define REG_MACL 21 -+#define REG_SYSCALL 22 -+#define REG_FPREG0 23 -+#define REG_FPREG15 38 -+#define REG_XFREG0 39 -+#define REG_XFREG15 54 -+#define REG_FPSCR 55 -+#define REG_FPUL 56 -+ -+struct pt_regs { -+ unsigned long regs[16]; -+ unsigned long pc; -+ unsigned long pr; -+ unsigned long sr; -+ unsigned long gbr; -+ unsigned long mach; -+ unsigned long macl; -+ long tra; -+}; -+ -+struct pt_dspregs { -+ unsigned long a1; -+ unsigned long a0g; -+ unsigned long a1g; -+ unsigned long m0; -+ unsigned long m1; -+ unsigned long a0; -+ unsigned long x0; -+ unsigned long x1; -+ unsigned long y0; -+ unsigned long y1; -+ unsigned long dsr; -+ unsigned long rs; -+ unsigned long re; -+ unsigned long mod; -+}; -+ -+struct user_fpu_struct { -+ unsigned long fp_regs[16]; -+ unsigned long xfp_regs[16]; -+ unsigned long fpscr; -+ unsigned long fpul; -+}; -+ -+#define ELF_NGREG 23 -+typedef unsigned long elf_greg_t; -+typedef elf_greg_t elf_gregset_t[ELF_NGREG]; -+typedef struct user_fpu_struct elf_fpregset_t; -+ -+struct user { -+ struct pt_regs regs; -+ struct user_fpu_struct fpu; -+ int u_fpvalid; -+ unsigned long u_tsize; -+ unsigned long u_dsize; -+ unsigned long u_ssize; -+ unsigned long start_code; -+ unsigned long start_data; -+ unsigned long start_stack; -+ long int signal; -+ unsigned long u_ar0; -+ struct user_fpu_struct *u_fpstate; -+ unsigned long magic; -+ char u_comm[32]; -+}; -diff -Nur musl-0.9.15/arch/sh/crt_arch.h musl-git/arch/sh/crt_arch.h ---- musl-0.9.15/arch/sh/crt_arch.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/crt_arch.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,9 @@ -+__asm__("\ -+.global _start \n\ -+_start: \n\ -+ mov r15, r4 \n\ -+ mov #-16, r0 \n\ -+ and r0, r15 \n\ -+ bsr __cstart \n\ -+ nop \n\ -+"); -diff -Nur musl-0.9.15/arch/sh/pthread_arch.h musl-git/arch/sh/pthread_arch.h ---- musl-0.9.15/arch/sh/pthread_arch.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/pthread_arch.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,11 @@ -+static inline struct pthread *__pthread_self() -+{ -+ char *self; -+ __asm__ __volatile__ ("stc gbr,%0" : "=r" (self) ); -+ return (struct pthread *) (self + 8 - sizeof(struct pthread)); -+} -+ -+#define TLS_ABOVE_TP -+#define TP_ADJ(p) ((char *)(p) + sizeof(struct pthread) - 8) -+ -+#define CANCEL_REG_IP 17 -diff -Nur musl-0.9.15/arch/sh/reloc.h musl-git/arch/sh/reloc.h ---- musl-0.9.15/arch/sh/reloc.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/reloc.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,47 @@ -+#if __BYTE_ORDER == __BIG_ENDIAN -+#define ENDIAN_SUFFIX "eb" -+#else -+#define ENDIAN_SUFFIX "" -+#endif -+ -+#define LDSO_ARCH "sh" ENDIAN_SUFFIX -+ -+#define IS_COPY(x) ((x) == R_SH_COPY) -+#define IS_PLT(x) ((x) == R_SH_JMP_SLOT) -+ -+static inline void do_single_reloc( -+ struct dso *self, unsigned char *base_addr, -+ size_t *reloc_addr, int type, size_t addend, -+ Sym *sym, size_t sym_size, -+ struct symdef def, size_t sym_val) -+{ -+ switch(type) { -+ case R_SH_GLOB_DAT: -+ case R_SH_JMP_SLOT: -+ *reloc_addr = sym_val; -+ break; -+ case R_SH_RELATIVE: -+ *reloc_addr = (size_t)base_addr + addend; -+ break; -+ case R_SH_DIR32: -+ *reloc_addr = sym_val + addend; -+ break; -+ case R_SH_REL32: -+ *reloc_addr = sym_val + addend - (size_t)reloc_addr + (size_t)base_addr; -+ break; -+ case R_SH_COPY: -+ memcpy(reloc_addr, (void *)sym_val, sym_size); -+ break; -+ case R_SH_TLS_DTPMOD32: -+ *reloc_addr += def.dso ? def.dso->tls_id : self->tls_id; -+ break; -+ case R_SH_TLS_DTPOFF32: -+ *reloc_addr += def.sym->st_value; -+ break; -+ case R_SH_TLS_TPOFF32: -+ *reloc_addr += def.sym -+ ? def.sym->st_value + def.dso->tls_offset + 8 -+ : self->tls_offset + 8; -+ break; -+ } -+} -diff -Nur musl-0.9.15/arch/sh/src/atomic.c musl-git/arch/sh/src/atomic.c ---- musl-0.9.15/arch/sh/src/atomic.c 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/src/atomic.c 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,146 @@ -+#include "libc.h" -+ -+#define LLSC_CLOBBERS "r0", "t", "memory" -+#define LLSC_START(mem) \ -+ "0: movli.l @" mem ", r0\n" -+#define LLSC_END(mem) \ -+ "1: movco.l r0, @" mem "\n" \ -+ " bf 0b\n" \ -+ " synco\n" -+ -+/* gusa is a hack in the kernel which lets you create a sequence of instructions -+ * which will be restarted if the process is preempted in the middle of the -+ * sequence. It will do for implementing atomics on non-smp systems. ABI is: -+ * r0 = address of first instruction after the atomic sequence -+ * r1 = original stack pointer -+ * r15 = -1 * length of atomic sequence in bytes -+ */ -+#define GUSA_CLOBBERS "r0", "r1", "memory" -+#define GUSA_START(mem,old,nop) \ -+ " .align 2\n" \ -+ " mova 1f, r0\n" \ -+ nop \ -+ " mov r15, r1\n" \ -+ " mov #(0f-1f), r15\n" \ -+ "0: mov.l @" mem ", " old "\n" -+/* the target of mova must be 4 byte aligned, so we may need a nop */ -+#define GUSA_START_ODD(mem,old) GUSA_START(mem,old,"") -+#define GUSA_START_EVEN(mem,old) GUSA_START(mem,old,"\tnop\n") -+#define GUSA_END(mem,new) \ -+ " mov.l " new ", @" mem "\n" \ -+ "1: mov r1, r15\n" -+ -+#define CPU_HAS_LLSC 0x0040 -+ -+int __sh_cas(volatile int *p, int t, int s) -+{ -+ int old; -+ if (__hwcap & CPU_HAS_LLSC) { -+ __asm__ __volatile__( -+ LLSC_START("%1") -+ " mov r0, %0\n" -+ " cmp/eq %0, %2\n" -+ " bf 1f\n" -+ " mov %3, r0\n" -+ LLSC_END("%1") -+ : "=&r"(old) : "r"(p), "r"(t), "r"(s) : LLSC_CLOBBERS); -+ } else { -+ __asm__ __volatile__( -+ GUSA_START_EVEN("%1", "%0") -+ " cmp/eq %0, %2\n" -+ " bf 1f\n" -+ GUSA_END("%1", "%3") -+ : "=&r"(old) : "r"(p), "r"(t), "r"(s) : GUSA_CLOBBERS, "t"); -+ } -+ return old; -+} -+ -+int __sh_swap(volatile int *x, int v) -+{ -+ int old; -+ if (__hwcap & CPU_HAS_LLSC) { -+ __asm__ __volatile__( -+ LLSC_START("%1") -+ " mov r0, %0\n" -+ " mov %2, r0\n" -+ LLSC_END("%1") -+ : "=&r"(old) : "r"(x), "r"(v) : LLSC_CLOBBERS); -+ } else { -+ __asm__ __volatile__( -+ GUSA_START_EVEN("%1", "%0") -+ GUSA_END("%1", "%2") -+ : "=&r"(old) : "r"(x), "r"(v) : GUSA_CLOBBERS); -+ } -+ return old; -+} -+ -+int __sh_fetch_add(volatile int *x, int v) -+{ -+ int old, dummy; -+ if (__hwcap & CPU_HAS_LLSC) { -+ __asm__ __volatile__( -+ LLSC_START("%1") -+ " mov r0, %0\n" -+ " add %2, r0\n" -+ LLSC_END("%1") -+ : "=&r"(old) : "r"(x), "r"(v) : LLSC_CLOBBERS); -+ } else { -+ __asm__ __volatile__( -+ GUSA_START_EVEN("%2", "%0") -+ " mov %0, %1\n" -+ " add %3, %1\n" -+ GUSA_END("%2", "%1") -+ : "=&r"(old), "=&r"(dummy) : "r"(x), "r"(v) : GUSA_CLOBBERS); -+ } -+ return old; -+} -+ -+void __sh_store(volatile int *p, int x) -+{ -+ if (__hwcap & CPU_HAS_LLSC) { -+ __asm__ __volatile__( -+ " mov.l %1, @%0\n" -+ " synco\n" -+ : : "r"(p), "r"(x) : "memory"); -+ } else { -+ __asm__ __volatile__( -+ " mov.l %1, @%0\n" -+ : : "r"(p), "r"(x) : "memory"); -+ } -+} -+ -+void __sh_and(volatile int *x, int v) -+{ -+ int dummy; -+ if (__hwcap & CPU_HAS_LLSC) { -+ __asm__ __volatile__( -+ LLSC_START("%0") -+ " and %1, r0\n" -+ LLSC_END("%0") -+ : : "r"(x), "r"(v) : LLSC_CLOBBERS); -+ } else { -+ __asm__ __volatile__( -+ GUSA_START_ODD("%1", "%0") -+ " and %2, %0\n" -+ GUSA_END("%1", "%0") -+ : "=&r"(dummy) : "r"(x), "r"(v) : GUSA_CLOBBERS); -+ } -+} -+ -+void __sh_or(volatile int *x, int v) -+{ -+ int dummy; -+ if (__hwcap & CPU_HAS_LLSC) { -+ __asm__ __volatile__( -+ LLSC_START("%0") -+ " or %1, r0\n" -+ LLSC_END("%0") -+ : : "r"(x), "r"(v) : LLSC_CLOBBERS); -+ } else { -+ __asm__ __volatile__( -+ GUSA_START_ODD("%1", "%0") -+ " or %2, %0\n" -+ GUSA_END("%1", "%0") -+ : "=&r"(dummy) : "r"(x), "r"(v) : GUSA_CLOBBERS); -+ } -+} -diff -Nur musl-0.9.15/arch/sh/src/__fpsrc_values.c musl-git/arch/sh/src/__fpsrc_values.c ---- musl-0.9.15/arch/sh/src/__fpsrc_values.c 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/src/__fpsrc_values.c 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,2 @@ -+/* used by gcc for switching the FPU between single and double precision */ -+const unsigned long __fpscr_values[2] = { 0, 0x80000 }; -diff -Nur musl-0.9.15/arch/sh/syscall_arch.h musl-git/arch/sh/syscall_arch.h ---- musl-0.9.15/arch/sh/syscall_arch.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/sh/syscall_arch.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,87 @@ -+#define __SYSCALL_LL_E(x) \ -+((union { long long ll; long l[2]; }){ .ll = x }).l[0], \ -+((union { long long ll; long l[2]; }){ .ll = x }).l[1] -+#define __SYSCALL_LL_O(x) __SYSCALL_LL_E((x)) -+ -+/* The extra OR instructions are to work around a hardware bug: -+ * http://documentation.renesas.com/doc/products/mpumcu/tu/tnsh7456ae.pdf -+ */ -+#define __asm_syscall(trapno, ...) do { \ -+ __asm__ __volatile__ ( \ -+ "trapa #" #trapno "\n" \ -+ "or r0, r0\n" \ -+ "or r0, r0\n" \ -+ "or r0, r0\n" \ -+ "or r0, r0\n" \ -+ "or r0, r0\n" \ -+ : "=r"(r0) : __VA_ARGS__ : "memory"); \ -+ return r0; \ -+ } while (0) -+ -+static inline long __syscall0(long n) -+{ -+ register long r3 __asm__("r3") = n; -+ register long r0 __asm__("r0"); -+ __asm_syscall(16, "r"(r3)); -+} -+ -+static inline long __syscall1(long n, long a) -+{ -+ register long r3 __asm__("r3") = n; -+ register long r4 __asm__("r4") = a; -+ register long r0 __asm__("r0"); -+ __asm_syscall(17, "r"(r3), "r"(r4)); -+} -+ -+static inline long __syscall2(long n, long a, long b) -+{ -+ register long r3 __asm__("r3") = n; -+ register long r4 __asm__("r4") = a; -+ register long r5 __asm__("r5") = b; -+ register long r0 __asm__("r0"); -+ __asm_syscall(18, "r"(r3), "r"(r4), "r"(r5)); -+} -+ -+static inline long __syscall3(long n, long a, long b, long c) -+{ -+ register long r3 __asm__("r3") = n; -+ register long r4 __asm__("r4") = a; -+ register long r5 __asm__("r5") = b; -+ register long r6 __asm__("r6") = c; -+ register long r0 __asm__("r0"); -+ __asm_syscall(19, "r"(r3), "r"(r4), "r"(r5), "r"(r6)); -+} -+ -+static inline long __syscall4(long n, long a, long b, long c, long d) -+{ -+ register long r3 __asm__("r3") = n; -+ register long r4 __asm__("r4") = a; -+ register long r5 __asm__("r5") = b; -+ register long r6 __asm__("r6") = c; -+ register long r7 __asm__("r7") = d; -+ register long r0 __asm__("r0"); -+ __asm_syscall(20, "r"(r3), "r"(r4), "r"(r5), "r"(r6), "r"(r7)); -+} -+ -+static inline long __syscall5(long n, long a, long b, long c, long d, long e) -+{ -+ register long r3 __asm__("r3") = n; -+ register long r4 __asm__("r4") = a; -+ register long r5 __asm__("r5") = b; -+ register long r6 __asm__("r6") = c; -+ register long r7 __asm__("r7") = d; -+ register long r0 __asm__("r0") = e; -+ __asm_syscall(21, "r"(r3), "r"(r4), "r"(r5), "r"(r6), "r"(r7), "0"(r0)); -+} -+ -+static inline long __syscall6(long n, long a, long b, long c, long d, long e, long f) -+{ -+ register long r3 __asm__("r3") = n; -+ register long r4 __asm__("r4") = a; -+ register long r5 __asm__("r5") = b; -+ register long r6 __asm__("r6") = c; -+ register long r7 __asm__("r7") = d; -+ register long r0 __asm__("r0") = e; -+ register long r1 __asm__("r1") = f; -+ __asm_syscall(22, "r"(r3), "r"(r4), "r"(r5), "r"(r6), "r"(r7), "0"(r0), "r"(r1)); -+} -diff -Nur musl-0.9.15/arch/x32/atomic.h musl-git/arch/x32/atomic.h ---- musl-0.9.15/arch/x32/atomic.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/atomic.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,125 @@ -+#ifndef _INTERNAL_ATOMIC_H -+#define _INTERNAL_ATOMIC_H -+ -+#include <stdint.h> -+ -+static inline int a_ctz_64(uint64_t x) -+{ -+ __asm__( "bsf %1,%0" : "=r"(x) : "r"(x) ); -+ return x; -+} -+ -+static inline int a_ctz_l(unsigned long x) -+{ -+ __asm__( "bsf %1,%0" : "=r"(x) : "r"(x) ); -+ return x; -+} -+ -+static inline void a_and_64(volatile uint64_t *p, uint64_t v) -+{ -+ __asm__( "lock ; and %1, %0" -+ : "=m"(*p) : "r"(v) : "memory" ); -+} -+ -+static inline void a_or_64(volatile uint64_t *p, uint64_t v) -+{ -+ __asm__( "lock ; or %1, %0" -+ : "=m"(*p) : "r"(v) : "memory" ); -+} -+ -+static inline void a_store_l(volatile void *p, long x) -+{ -+ __asm__( "mov %1, %0" : "=m"(*(long *)p) : "r"(x) : "memory" ); -+} -+ -+static inline void a_or_l(volatile void *p, long v) -+{ -+ __asm__( "lock ; or %1, %0" -+ : "=m"(*(long *)p) : "r"(v) : "memory" ); -+} -+ -+static inline void *a_cas_p(volatile void *p, void *t, void *s) -+{ -+ __asm__( "lock ; cmpxchg %3, %1" -+ : "=a"(t), "=m"(*(long *)p) : "a"(t), "r"(s) : "memory" ); -+ return t; -+} -+ -+static inline long a_cas_l(volatile void *p, long t, long s) -+{ -+ __asm__( "lock ; cmpxchg %3, %1" -+ : "=a"(t), "=m"(*(long *)p) : "a"(t), "r"(s) : "memory" ); -+ return t; -+} -+ -+static inline int a_cas(volatile int *p, int t, int s) -+{ -+ __asm__( "lock ; cmpxchg %3, %1" -+ : "=a"(t), "=m"(*p) : "a"(t), "r"(s) : "memory" ); -+ return t; -+} -+ -+static inline void *a_swap_p(void *volatile *x, void *v) -+{ -+ __asm__( "xchg %0, %1" : "=r"(v), "=m"(*(void **)x) : "0"(v) : "memory" ); -+ return v; -+} -+static inline long a_swap_l(volatile void *x, long v) -+{ -+ __asm__( "xchg %0, %1" : "=r"(v), "=m"(*(long *)x) : "0"(v) : "memory" ); -+ return v; -+} -+ -+static inline void a_or(volatile void *p, int v) -+{ -+ __asm__( "lock ; or %1, %0" -+ : "=m"(*(int *)p) : "r"(v) : "memory" ); -+} -+ -+static inline void a_and(volatile void *p, int v) -+{ -+ __asm__( "lock ; and %1, %0" -+ : "=m"(*(int *)p) : "r"(v) : "memory" ); -+} -+ -+static inline int a_swap(volatile int *x, int v) -+{ -+ __asm__( "xchg %0, %1" : "=r"(v), "=m"(*x) : "0"(v) : "memory" ); -+ return v; -+} -+ -+#define a_xchg a_swap -+ -+static inline int a_fetch_add(volatile int *x, int v) -+{ -+ __asm__( "lock ; xadd %0, %1" : "=r"(v), "=m"(*x) : "0"(v) : "memory" ); -+ return v; -+} -+ -+static inline void a_inc(volatile int *x) -+{ -+ __asm__( "lock ; incl %0" : "=m"(*x) : "m"(*x) : "memory" ); -+} -+ -+static inline void a_dec(volatile int *x) -+{ -+ __asm__( "lock ; decl %0" : "=m"(*x) : "m"(*x) : "memory" ); -+} -+ -+static inline void a_store(volatile int *p, int x) -+{ -+ __asm__( "mov %1, %0" : "=m"(*p) : "r"(x) : "memory" ); -+} -+ -+static inline void a_spin() -+{ -+ __asm__ __volatile__( "pause" : : : "memory" ); -+} -+ -+static inline void a_crash() -+{ -+ __asm__ __volatile__( "hlt" : : : "memory" ); -+} -+ -+ -+#endif -diff -Nur musl-0.9.15/arch/x32/bits/alltypes.h.in musl-git/arch/x32/bits/alltypes.h.in ---- musl-0.9.15/arch/x32/bits/alltypes.h.in 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/alltypes.h.in 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,28 @@ -+#define _Addr int -+#define _Int64 long long -+#define _Reg long long -+ -+TYPEDEF __builtin_va_list va_list; -+TYPEDEF __builtin_va_list __isoc_va_list; -+ -+#ifndef __cplusplus -+TYPEDEF long wchar_t; -+#endif -+TYPEDEF unsigned wint_t; -+ -+#if defined(__FLT_EVAL_METHOD__) && __FLT_EVAL_METHOD__ == 2 -+TYPEDEF long double float_t; -+TYPEDEF long double double_t; -+#else -+TYPEDEF float float_t; -+TYPEDEF double double_t; -+#endif -+ -+TYPEDEF long long time_t; -+TYPEDEF long long suseconds_t; -+ -+TYPEDEF struct { union { int __i[14]; unsigned long __s[7]; } __u; } pthread_attr_t; -+TYPEDEF struct { union { int __i[10]; void *__p[5]; } __u; } pthread_mutex_t; -+TYPEDEF struct { union { int __i[12]; void *__p[6]; } __u; } pthread_cond_t; -+TYPEDEF struct { union { int __i[14]; void *__p[7]; } __u; } pthread_rwlock_t; -+TYPEDEF struct { union { int __i[8]; void *__p[4]; } __u; } pthread_barrier_t; -diff -Nur musl-0.9.15/arch/x32/bits/endian.h musl-git/arch/x32/bits/endian.h ---- musl-0.9.15/arch/x32/bits/endian.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/endian.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+#define __BYTE_ORDER __LITTLE_ENDIAN -diff -Nur musl-0.9.15/arch/x32/bits/errno.h musl-git/arch/x32/bits/errno.h ---- musl-0.9.15/arch/x32/bits/errno.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/errno.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,134 @@ -+#define EPERM 1 -+#define ENOENT 2 -+#define ESRCH 3 -+#define EINTR 4 -+#define EIO 5 -+#define ENXIO 6 -+#define E2BIG 7 -+#define ENOEXEC 8 -+#define EBADF 9 -+#define ECHILD 10 -+#define EAGAIN 11 -+#define ENOMEM 12 -+#define EACCES 13 -+#define EFAULT 14 -+#define ENOTBLK 15 -+#define EBUSY 16 -+#define EEXIST 17 -+#define EXDEV 18 -+#define ENODEV 19 -+#define ENOTDIR 20 -+#define EISDIR 21 -+#define EINVAL 22 -+#define ENFILE 23 -+#define EMFILE 24 -+#define ENOTTY 25 -+#define ETXTBSY 26 -+#define EFBIG 27 -+#define ENOSPC 28 -+#define ESPIPE 29 -+#define EROFS 30 -+#define EMLINK 31 -+#define EPIPE 32 -+#define EDOM 33 -+#define ERANGE 34 -+#define EDEADLK 35 -+#define ENAMETOOLONG 36 -+#define ENOLCK 37 -+#define ENOSYS 38 -+#define ENOTEMPTY 39 -+#define ELOOP 40 -+#define EWOULDBLOCK EAGAIN -+#define ENOMSG 42 -+#define EIDRM 43 -+#define ECHRNG 44 -+#define EL2NSYNC 45 -+#define EL3HLT 46 -+#define EL3RST 47 -+#define ELNRNG 48 -+#define EUNATCH 49 -+#define ENOCSI 50 -+#define EL2HLT 51 -+#define EBADE 52 -+#define EBADR 53 -+#define EXFULL 54 -+#define ENOANO 55 -+#define EBADRQC 56 -+#define EBADSLT 57 -+#define EDEADLOCK EDEADLK -+#define EBFONT 59 -+#define ENOSTR 60 -+#define ENODATA 61 -+#define ETIME 62 -+#define ENOSR 63 -+#define ENONET 64 -+#define ENOPKG 65 -+#define EREMOTE 66 -+#define ENOLINK 67 -+#define EADV 68 -+#define ESRMNT 69 -+#define ECOMM 70 -+#define EPROTO 71 -+#define EMULTIHOP 72 -+#define EDOTDOT 73 -+#define EBADMSG 74 -+#define EOVERFLOW 75 -+#define ENOTUNIQ 76 -+#define EBADFD 77 -+#define EREMCHG 78 -+#define ELIBACC 79 -+#define ELIBBAD 80 -+#define ELIBSCN 81 -+#define ELIBMAX 82 -+#define ELIBEXEC 83 -+#define EILSEQ 84 -+#define ERESTART 85 -+#define ESTRPIPE 86 -+#define EUSERS 87 -+#define ENOTSOCK 88 -+#define EDESTADDRREQ 89 -+#define EMSGSIZE 90 -+#define EPROTOTYPE 91 -+#define ENOPROTOOPT 92 -+#define EPROTONOSUPPORT 93 -+#define ESOCKTNOSUPPORT 94 -+#define EOPNOTSUPP 95 -+#define ENOTSUP EOPNOTSUPP -+#define EPFNOSUPPORT 96 -+#define EAFNOSUPPORT 97 -+#define EADDRINUSE 98 -+#define EADDRNOTAVAIL 99 -+#define ENETDOWN 100 -+#define ENETUNREACH 101 -+#define ENETRESET 102 -+#define ECONNABORTED 103 -+#define ECONNRESET 104 -+#define ENOBUFS 105 -+#define EISCONN 106 -+#define ENOTCONN 107 -+#define ESHUTDOWN 108 -+#define ETOOMANYREFS 109 -+#define ETIMEDOUT 110 -+#define ECONNREFUSED 111 -+#define EHOSTDOWN 112 -+#define EHOSTUNREACH 113 -+#define EALREADY 114 -+#define EINPROGRESS 115 -+#define ESTALE 116 -+#define EUCLEAN 117 -+#define ENOTNAM 118 -+#define ENAVAIL 119 -+#define EISNAM 120 -+#define EREMOTEIO 121 -+#define EDQUOT 122 -+#define ENOMEDIUM 123 -+#define EMEDIUMTYPE 124 -+#define ECANCELED 125 -+#define ENOKEY 126 -+#define EKEYEXPIRED 127 -+#define EKEYREVOKED 128 -+#define EKEYREJECTED 129 -+#define EOWNERDEAD 130 -+#define ENOTRECOVERABLE 131 -+#define ERFKILL 132 -+#define EHWPOISON 133 -diff -Nur musl-0.9.15/arch/x32/bits/fcntl.h musl-git/arch/x32/bits/fcntl.h ---- musl-0.9.15/arch/x32/bits/fcntl.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/fcntl.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,39 @@ -+#define O_CREAT 0100 -+#define O_EXCL 0200 -+#define O_NOCTTY 0400 -+#define O_TRUNC 01000 -+#define O_APPEND 02000 -+#define O_NONBLOCK 04000 -+#define O_DSYNC 010000 -+#define O_SYNC 04010000 -+#define O_RSYNC 04010000 -+#define O_DIRECTORY 0200000 -+#define O_NOFOLLOW 0400000 -+#define O_CLOEXEC 02000000 -+ -+#define O_ASYNC 020000 -+#define O_DIRECT 040000 -+#define O_LARGEFILE 0 -+#define O_NOATIME 01000000 -+#define O_TMPFILE 020200000 -+#define O_NDELAY O_NONBLOCK -+ -+#define F_DUPFD 0 -+#define F_GETFD 1 -+#define F_SETFD 2 -+#define F_GETFL 3 -+#define F_SETFL 4 -+ -+#define F_SETOWN 8 -+#define F_GETOWN 9 -+#define F_SETSIG 10 -+#define F_GETSIG 11 -+ -+#define F_GETLK 5 -+#define F_SETLK 6 -+#define F_SETLKW 7 -+ -+#define F_SETOWN_EX 15 -+#define F_GETOWN_EX 16 -+ -+#define F_GETOWNER_UIDS 17 -diff -Nur musl-0.9.15/arch/x32/bits/fenv.h musl-git/arch/x32/bits/fenv.h ---- musl-0.9.15/arch/x32/bits/fenv.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/fenv.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,34 @@ -+#define FE_INVALID 1 -+#define __FE_DENORM 2 -+#define FE_DIVBYZERO 4 -+#define FE_OVERFLOW 8 -+#define FE_UNDERFLOW 16 -+#define FE_INEXACT 32 -+ -+#define FE_ALL_EXCEPT 63 -+ -+#define FE_TONEAREST 0 -+#define FE_DOWNWARD 0x400 -+#define FE_UPWARD 0x800 -+#define FE_TOWARDZERO 0xc00 -+ -+typedef unsigned short fexcept_t; -+ -+typedef struct { -+ unsigned short __control_word; -+ unsigned short __unused1; -+ unsigned short __status_word; -+ unsigned short __unused2; -+ unsigned short __tags; -+ unsigned short __unused3; -+ unsigned int __eip; -+ unsigned short __cs_selector; -+ unsigned int __opcode:11; -+ unsigned int __unused4:5; -+ unsigned int __data_offset; -+ unsigned short __data_selector; -+ unsigned short __unused5; -+ unsigned int __mxcsr; -+} fenv_t; -+ -+#define FE_DFL_ENV ((const fenv_t *) -1) -diff -Nur musl-0.9.15/arch/x32/bits/float.h musl-git/arch/x32/bits/float.h ---- musl-0.9.15/arch/x32/bits/float.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/float.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,21 @@ -+#define FLT_ROUNDS 1 -+#ifdef __FLT_EVAL_METHOD__ -+#define FLT_EVAL_METHOD __FLT_EVAL_METHOD__ -+#else -+#define FLT_EVAL_METHOD 0 -+#endif -+ -+#define LDBL_TRUE_MIN 3.6451995318824746025e-4951L -+#define LDBL_MIN 3.3621031431120935063e-4932L -+#define LDBL_MAX 1.1897314953572317650e+4932L -+#define LDBL_EPSILON 1.0842021724855044340e-19L -+ -+#define LDBL_MANT_DIG 64 -+#define LDBL_MIN_EXP (-16381) -+#define LDBL_MAX_EXP 16384 -+ -+#define LDBL_DIG 18 -+#define LDBL_MIN_10_EXP (-4931) -+#define LDBL_MAX_10_EXP 4932 -+ -+#define DECIMAL_DIG 21 -diff -Nur musl-0.9.15/arch/x32/bits/ioctl.h musl-git/arch/x32/bits/ioctl.h ---- musl-0.9.15/arch/x32/bits/ioctl.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/ioctl.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,197 @@ -+#define _IOC(a,b,c,d) ( ((a)<<30) | ((b)<<8) | (c) | ((d)<<16) ) -+#define _IOC_NONE 0U -+#define _IOC_WRITE 1U -+#define _IOC_READ 2U -+ -+#define _IO(a,b) _IOC(_IOC_NONE,(a),(b),0) -+#define _IOW(a,b,c) _IOC(_IOC_WRITE,(a),(b),sizeof(c)) -+#define _IOR(a,b,c) _IOC(_IOC_READ,(a),(b),sizeof(c)) -+#define _IOWR(a,b,c) _IOC(_IOC_READ|_IOC_WRITE,(a),(b),sizeof(c)) -+ -+#define TCGETS 0x5401 -+#define TCSETS 0x5402 -+#define TCSETSW 0x5403 -+#define TCSETSF 0x5404 -+#define TCGETA 0x5405 -+#define TCSETA 0x5406 -+#define TCSETAW 0x5407 -+#define TCSETAF 0x5408 -+#define TCSBRK 0x5409 -+#define TCXONC 0x540A -+#define TCFLSH 0x540B -+#define TIOCEXCL 0x540C -+#define TIOCNXCL 0x540D -+#define TIOCSCTTY 0x540E -+#define TIOCGPGRP 0x540F -+#define TIOCSPGRP 0x5410 -+#define TIOCOUTQ 0x5411 -+#define TIOCSTI 0x5412 -+#define TIOCGWINSZ 0x5413 -+#define TIOCSWINSZ 0x5414 -+#define TIOCMGET 0x5415 -+#define TIOCMBIS 0x5416 -+#define TIOCMBIC 0x5417 -+#define TIOCMSET 0x5418 -+#define TIOCGSOFTCAR 0x5419 -+#define TIOCSSOFTCAR 0x541A -+#define FIONREAD 0x541B -+#define TIOCINQ FIONREAD -+#define TIOCLINUX 0x541C -+#define TIOCCONS 0x541D -+#define TIOCGSERIAL 0x541E -+#define TIOCSSERIAL 0x541F -+#define TIOCPKT 0x5420 -+#define FIONBIO 0x5421 -+#define TIOCNOTTY 0x5422 -+#define TIOCSETD 0x5423 -+#define TIOCGETD 0x5424 -+#define TCSBRKP 0x5425 -+#define TIOCTTYGSTRUCT 0x5426 -+#define TIOCSBRK 0x5427 -+#define TIOCCBRK 0x5428 -+#define TIOCGSID 0x5429 -+#define TIOCGPTN 0x80045430 -+#define TIOCSPTLCK 0x40045431 -+#define TCGETX 0x5432 -+#define TCSETX 0x5433 -+#define TCSETXF 0x5434 -+#define TCSETXW 0x5435 -+ -+#define FIONCLEX 0x5450 -+#define FIOCLEX 0x5451 -+#define FIOASYNC 0x5452 -+#define TIOCSERCONFIG 0x5453 -+#define TIOCSERGWILD 0x5454 -+#define TIOCSERSWILD 0x5455 -+#define TIOCGLCKTRMIOS 0x5456 -+#define TIOCSLCKTRMIOS 0x5457 -+#define TIOCSERGSTRUCT 0x5458 -+#define TIOCSERGETLSR 0x5459 -+#define TIOCSERGETMULTI 0x545A -+#define TIOCSERSETMULTI 0x545B -+ -+#define TIOCMIWAIT 0x545C -+#define TIOCGICOUNT 0x545D -+#define TIOCGHAYESESP 0x545E -+#define TIOCSHAYESESP 0x545F -+#define FIOQSIZE 0x5460 -+ -+#define TIOCPKT_DATA 0 -+#define TIOCPKT_FLUSHREAD 1 -+#define TIOCPKT_FLUSHWRITE 2 -+#define TIOCPKT_STOP 4 -+#define TIOCPKT_START 8 -+#define TIOCPKT_NOSTOP 16 -+#define TIOCPKT_DOSTOP 32 -+#define TIOCPKT_IOCTL 64 -+ -+#define TIOCSER_TEMT 0x01 -+ -+struct winsize { -+ unsigned short ws_row; -+ unsigned short ws_col; -+ unsigned short ws_xpixel; -+ unsigned short ws_ypixel; -+}; -+ -+#define TIOCM_LE 0x001 -+#define TIOCM_DTR 0x002 -+#define TIOCM_RTS 0x004 -+#define TIOCM_ST 0x008 -+#define TIOCM_SR 0x010 -+#define TIOCM_CTS 0x020 -+#define TIOCM_CAR 0x040 -+#define TIOCM_RNG 0x080 -+#define TIOCM_DSR 0x100 -+#define TIOCM_CD TIOCM_CAR -+#define TIOCM_RI TIOCM_RNG -+#define TIOCM_OUT1 0x2000 -+#define TIOCM_OUT2 0x4000 -+#define TIOCM_LOOP 0x8000 -+#define TIOCM_MODEM_BITS TIOCM_OUT2 -+ -+#define N_TTY 0 -+#define N_SLIP 1 -+#define N_MOUSE 2 -+#define N_PPP 3 -+#define N_STRIP 4 -+#define N_AX25 5 -+#define N_X25 6 -+#define N_6PACK 7 -+#define N_MASC 8 -+#define N_R3964 9 -+#define N_PROFIBUS_FDL 10 -+#define N_IRDA 11 -+#define N_SMSBLOCK 12 -+#define N_HDLC 13 -+#define N_SYNC_PPP 14 -+#define N_HCI 15 -+ -+#define FIOSETOWN 0x8901 -+#define SIOCSPGRP 0x8902 -+#define FIOGETOWN 0x8903 -+#define SIOCGPGRP 0x8904 -+#define SIOCATMARK 0x8905 -+#define SIOCGSTAMP 0x8906 -+ -+#define SIOCADDRT 0x890B -+#define SIOCDELRT 0x890C -+#define SIOCRTMSG 0x890D -+ -+#define SIOCGIFNAME 0x8910 -+#define SIOCSIFLINK 0x8911 -+#define SIOCGIFCONF 0x8912 -+#define SIOCGIFFLAGS 0x8913 -+#define SIOCSIFFLAGS 0x8914 -+#define SIOCGIFADDR 0x8915 -+#define SIOCSIFADDR 0x8916 -+#define SIOCGIFDSTADDR 0x8917 -+#define SIOCSIFDSTADDR 0x8918 -+#define SIOCGIFBRDADDR 0x8919 -+#define SIOCSIFBRDADDR 0x891a -+#define SIOCGIFNETMASK 0x891b -+#define SIOCSIFNETMASK 0x891c -+#define SIOCGIFMETRIC 0x891d -+#define SIOCSIFMETRIC 0x891e -+#define SIOCGIFMEM 0x891f -+#define SIOCSIFMEM 0x8920 -+#define SIOCGIFMTU 0x8921 -+#define SIOCSIFMTU 0x8922 -+#define SIOCSIFHWADDR 0x8924 -+#define SIOCGIFENCAP 0x8925 -+#define SIOCSIFENCAP 0x8926 -+#define SIOCGIFHWADDR 0x8927 -+#define SIOCGIFSLAVE 0x8929 -+#define SIOCSIFSLAVE 0x8930 -+#define SIOCADDMULTI 0x8931 -+#define SIOCDELMULTI 0x8932 -+#define SIOCGIFINDEX 0x8933 -+#define SIOGIFINDEX SIOCGIFINDEX -+#define SIOCSIFPFLAGS 0x8934 -+#define SIOCGIFPFLAGS 0x8935 -+#define SIOCDIFADDR 0x8936 -+#define SIOCSIFHWBROADCAST 0x8937 -+#define SIOCGIFCOUNT 0x8938 -+ -+#define SIOCGIFBR 0x8940 -+#define SIOCSIFBR 0x8941 -+ -+#define SIOCGIFTXQLEN 0x8942 -+#define SIOCSIFTXQLEN 0x8943 -+ -+#define SIOCDARP 0x8953 -+#define SIOCGARP 0x8954 -+#define SIOCSARP 0x8955 -+ -+#define SIOCDRARP 0x8960 -+#define SIOCGRARP 0x8961 -+#define SIOCSRARP 0x8962 -+ -+#define SIOCGIFMAP 0x8970 -+#define SIOCSIFMAP 0x8971 -+ -+#define SIOCADDDLCI 0x8980 -+#define SIOCDELDLCI 0x8981 -+ -+#define SIOCDEVPRIVATE 0x89F0 -+#define SIOCPROTOPRIVATE 0x89E0 -diff -Nur musl-0.9.15/arch/x32/bits/io.h musl-git/arch/x32/bits/io.h ---- musl-0.9.15/arch/x32/bits/io.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/io.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,77 @@ -+static __inline void outb(unsigned char __val, unsigned short __port) -+{ -+ __asm__ volatile ("outb %0,%1" : : "a" (__val), "dN" (__port)); -+} -+ -+static __inline void outw(unsigned short __val, unsigned short __port) -+{ -+ __asm__ volatile ("outw %0,%1" : : "a" (__val), "dN" (__port)); -+} -+ -+static __inline void outl(unsigned int __val, unsigned short __port) -+{ -+ __asm__ volatile ("outl %0,%1" : : "a" (__val), "dN" (__port)); -+} -+ -+static __inline unsigned char inb(unsigned short __port) -+{ -+ unsigned char __val; -+ __asm__ volatile ("inb %1,%0" : "=a" (__val) : "dN" (__port)); -+ return __val; -+} -+ -+static __inline unsigned short inw(unsigned short __port) -+{ -+ unsigned short __val; -+ __asm__ volatile ("inw %1,%0" : "=a" (__val) : "dN" (__port)); -+ return __val; -+} -+ -+static __inline unsigned int inl(unsigned short __port) -+{ -+ unsigned int __val; -+ __asm__ volatile ("inl %1,%0" : "=a" (__val) : "dN" (__port)); -+ return __val; -+} -+ -+static __inline void outsb(unsigned short __port, const void *__buf, unsigned long __n) -+{ -+ __asm__ volatile ("cld; rep; outsb" -+ : "+S" (__buf), "+c" (__n) -+ : "d" (__port)); -+} -+ -+static __inline void outsw(unsigned short __port, const void *__buf, unsigned long __n) -+{ -+ __asm__ volatile ("cld; rep; outsw" -+ : "+S" (__buf), "+c" (__n) -+ : "d" (__port)); -+} -+ -+static __inline void outsl(unsigned short __port, const void *__buf, unsigned long __n) -+{ -+ __asm__ volatile ("cld; rep; outsl" -+ : "+S" (__buf), "+c"(__n) -+ : "d" (__port)); -+} -+ -+static __inline void insb(unsigned short __port, void *__buf, unsigned long __n) -+{ -+ __asm__ volatile ("cld; rep; insb" -+ : "+D" (__buf), "+c" (__n) -+ : "d" (__port)); -+} -+ -+static __inline void insw(unsigned short __port, void *__buf, unsigned long __n) -+{ -+ __asm__ volatile ("cld; rep; insw" -+ : "+D" (__buf), "+c" (__n) -+ : "d" (__port)); -+} -+ -+static __inline void insl(unsigned short __port, void *__buf, unsigned long __n) -+{ -+ __asm__ volatile ("cld; rep; insl" -+ : "+D" (__buf), "+c" (__n) -+ : "d" (__port)); -+} -diff -Nur musl-0.9.15/arch/x32/bits/ipc.h musl-git/arch/x32/bits/ipc.h ---- musl-0.9.15/arch/x32/bits/ipc.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/ipc.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,14 @@ -+struct ipc_perm -+{ -+ key_t __ipc_perm_key; -+ uid_t uid; -+ gid_t gid; -+ uid_t cuid; -+ gid_t cgid; -+ mode_t mode; -+ int __ipc_perm_seq; -+ long long __pad1; -+ long long __pad2; -+}; -+ -+#define IPC_64 0 -diff -Nur musl-0.9.15/arch/x32/bits/limits.h musl-git/arch/x32/bits/limits.h ---- musl-0.9.15/arch/x32/bits/limits.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/limits.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,8 @@ -+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ -+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define PAGE_SIZE 4096 -+#define LONG_BIT 32 -+#endif -+ -+#define LONG_MAX 0x7fffffffL -+#define LLONG_MAX 0x7fffffffffffffffLL -diff -Nur musl-0.9.15/arch/x32/bits/mman.h musl-git/arch/x32/bits/mman.h ---- musl-0.9.15/arch/x32/bits/mman.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/mman.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,62 @@ -+#define MAP_FAILED ((void *) -1) -+ -+#define PROT_NONE 0 -+#define PROT_READ 1 -+#define PROT_WRITE 2 -+#define PROT_EXEC 4 -+#define PROT_GROWSDOWN 0x01000000 -+#define PROT_GROWSUP 0x02000000 -+ -+#define MAP_SHARED 0x01 -+#define MAP_PRIVATE 0x02 -+#define MAP_FIXED 0x10 -+ -+#define MAP_TYPE 0x0f -+#define MAP_FILE 0x00 -+#define MAP_ANON 0x20 -+#define MAP_ANONYMOUS MAP_ANON -+#define MAP_32BIT 0x40 -+#define MAP_NORESERVE 0x4000 -+#define MAP_GROWSDOWN 0x0100 -+#define MAP_DENYWRITE 0x0800 -+#define MAP_EXECUTABLE 0x1000 -+#define MAP_LOCKED 0x2000 -+#define MAP_POPULATE 0x8000 -+#define MAP_NONBLOCK 0x10000 -+#define MAP_STACK 0x20000 -+#define MAP_HUGETLB 0x40000 -+ -+#define POSIX_MADV_NORMAL 0 -+#define POSIX_MADV_RANDOM 1 -+#define POSIX_MADV_SEQUENTIAL 2 -+#define POSIX_MADV_WILLNEED 3 -+#define POSIX_MADV_DONTNEED 0 -+ -+#define MS_ASYNC 1 -+#define MS_INVALIDATE 2 -+#define MS_SYNC 4 -+ -+#define MCL_CURRENT 1 -+#define MCL_FUTURE 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define MADV_NORMAL 0 -+#define MADV_RANDOM 1 -+#define MADV_SEQUENTIAL 2 -+#define MADV_WILLNEED 3 -+#define MADV_DONTNEED 4 -+#define MADV_REMOVE 9 -+#define MADV_DONTFORK 10 -+#define MADV_DOFORK 11 -+#define MADV_MERGEABLE 12 -+#define MADV_UNMERGEABLE 13 -+#define MADV_HUGEPAGE 14 -+#define MADV_NOHUGEPAGE 15 -+#define MADV_DONTDUMP 16 -+#define MADV_DODUMP 17 -+#define MADV_HWPOISON 100 -+#define MADV_SOFT_OFFLINE 101 -+ -+#define MREMAP_MAYMOVE 1 -+#define MREMAP_FIXED 2 -+#endif -diff -Nur musl-0.9.15/arch/x32/bits/msg.h musl-git/arch/x32/bits/msg.h ---- musl-0.9.15/arch/x32/bits/msg.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/msg.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,16 @@ -+struct msqid_ds -+{ -+ struct ipc_perm msg_perm; -+ time_t msg_stime; -+ time_t msg_rtime; -+ time_t msg_ctime; -+ unsigned long msg_cbytes; -+ long __unused1; -+ msgqnum_t msg_qnum; -+ long __unused2; -+ msglen_t msg_qbytes; -+ long __unused3; -+ pid_t msg_lspid; -+ pid_t msg_lrpid; -+ unsigned long long __unused[2]; -+}; -diff -Nur musl-0.9.15/arch/x32/bits/posix.h musl-git/arch/x32/bits/posix.h ---- musl-0.9.15/arch/x32/bits/posix.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/posix.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,2 @@ -+#define _POSIX_V6_LP64_OFF64 1 -+#define _POSIX_V7_LP64_OFF64 1 -diff -Nur musl-0.9.15/arch/x32/bits/reg.h musl-git/arch/x32/bits/reg.h ---- musl-0.9.15/arch/x32/bits/reg.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/reg.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,29 @@ -+#undef __WORDSIZE -+#define __WORDSIZE 32 -+#define R15 0 -+#define R14 1 -+#define R13 2 -+#define R12 3 -+#define RBP 4 -+#define RBX 5 -+#define R11 6 -+#define R10 7 -+#define R9 8 -+#define R8 9 -+#define RAX 10 -+#define RCX 11 -+#define RDX 12 -+#define RSI 13 -+#define RDI 14 -+#define ORIG_RAX 15 -+#define RIP 16 -+#define CS 17 -+#define EFLAGS 18 -+#define RSP 19 -+#define SS 20 -+#define FS_BASE 21 -+#define GS_BASE 22 -+#define DS 23 -+#define ES 24 -+#define FS 25 -+#define GS 26 -diff -Nur musl-0.9.15/arch/x32/bits/setjmp.h musl-git/arch/x32/bits/setjmp.h ---- musl-0.9.15/arch/x32/bits/setjmp.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/setjmp.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+typedef unsigned long long __jmp_buf[8]; -diff -Nur musl-0.9.15/arch/x32/bits/shm.h musl-git/arch/x32/bits/shm.h ---- musl-0.9.15/arch/x32/bits/shm.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/shm.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,33 @@ -+#define SHMLBA 4096 -+ -+struct shmid_ds -+{ -+ struct ipc_perm shm_perm; -+ size_t shm_segsz; -+ time_t shm_atime; -+ time_t shm_dtime; -+ time_t shm_ctime; -+ pid_t shm_cpid; -+ pid_t shm_lpid; -+ unsigned long shm_nattch; -+ unsigned long __pad0; -+ unsigned long long __pad1; -+ unsigned long long __pad2; -+}; -+ -+struct shminfo { -+ unsigned long shmmax, __pad0, shmmin, __pad1, shmmni, __pad2, -+ shmseg, __pad3, shmall, __pad4; -+ unsigned long long __unused[4]; -+}; -+ -+struct shm_info { -+ int __used_ids; -+ int __pad_ids; -+ unsigned long shm_tot, __pad0, shm_rss, __pad1, shm_swp, __pad2; -+ unsigned long __swap_attempts, __pad3, __swap_successes, __pad4; -+} -+#ifdef __GNUC__ -+__attribute__((__aligned__(8))) -+#endif -+; -diff -Nur musl-0.9.15/arch/x32/bits/signal.h musl-git/arch/x32/bits/signal.h ---- musl-0.9.15/arch/x32/bits/signal.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/signal.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,119 @@ -+#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ -+ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+ -+#ifdef _GNU_SOURCE -+#define REG_R8 0 -+#define REG_R9 1 -+#define REG_R10 2 -+#define REG_R11 3 -+#define REG_R12 4 -+#define REG_R13 5 -+#define REG_R14 6 -+#define REG_R15 7 -+#define REG_RDI 8 -+#define REG_RSI 9 -+#define REG_RBP 10 -+#define REG_RBX 11 -+#define REG_RDX 12 -+#define REG_RAX 13 -+#define REG_RCX 14 -+#define REG_RSP 15 -+#define REG_RIP 16 -+#define REG_EFL 17 -+#define REG_CSGSFS 18 -+#define REG_ERR 19 -+#define REG_TRAPNO 20 -+#define REG_OLDMASK 21 -+#define REG_CR2 22 -+#endif -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+typedef long long greg_t, gregset_t[23]; -+typedef struct _fpstate { -+ unsigned short cwd, swd, ftw, fop; -+ unsigned long long rip, rdp; -+ unsigned mxcsr, mxcr_mask; -+ struct { -+ unsigned short significand[4], exponent, padding[3]; -+ } _st[8]; -+ struct { -+ unsigned element[4]; -+ } _xmm[16]; -+ unsigned padding[24]; -+} *fpregset_t; -+struct sigcontext { -+ unsigned long long r8, r9, r10, r11, r12, r13, r14, r15; -+ unsigned long long rdi, rsi, rbp, rbx, rdx, rax, rcx, rsp, rip, eflags; -+ unsigned short cs, gs, fs, __pad0; -+ unsigned long long err, trapno, oldmask, cr2; -+ struct _fpstate *fpstate; -+ unsigned long long __reserved1[8]; -+}; -+typedef struct { -+ gregset_t gregs; -+ fpregset_t fpregs; -+ unsigned long long __reserved1[8]; -+} mcontext_t; -+#else -+typedef struct { -+ unsigned long long __space[32]; -+} mcontext_t; -+#endif -+ -+typedef struct __ucontext { -+ unsigned long uc_flags; -+ struct __ucontext *uc_link; -+ stack_t uc_stack; -+ mcontext_t uc_mcontext; -+ sigset_t uc_sigmask; -+ unsigned long long __fpregs_mem[64]; -+} ucontext_t; -+ -+#define SA_NOCLDSTOP 1 -+#define SA_NOCLDWAIT 2 -+#define SA_SIGINFO 4 -+#define SA_ONSTACK 0x08000000 -+#define SA_RESTART 0x10000000 -+#define SA_NODEFER 0x40000000 -+#define SA_RESETHAND 0x80000000 -+#define SA_RESTORER 0x04000000 -+ -+#endif -+ -+#define SIGHUP 1 -+#define SIGINT 2 -+#define SIGQUIT 3 -+#define SIGILL 4 -+#define SIGTRAP 5 -+#define SIGABRT 6 -+#define SIGIOT SIGABRT -+#define SIGBUS 7 -+#define SIGFPE 8 -+#define SIGKILL 9 -+#define SIGUSR1 10 -+#define SIGSEGV 11 -+#define SIGUSR2 12 -+#define SIGPIPE 13 -+#define SIGALRM 14 -+#define SIGTERM 15 -+#define SIGSTKFLT 16 -+#define SIGCHLD 17 -+#define SIGCONT 18 -+#define SIGSTOP 19 -+#define SIGTSTP 20 -+#define SIGTTIN 21 -+#define SIGTTOU 22 -+#define SIGURG 23 -+#define SIGXCPU 24 -+#define SIGXFSZ 25 -+#define SIGVTALRM 26 -+#define SIGPROF 27 -+#define SIGWINCH 28 -+#define SIGIO 29 -+#define SIGPOLL 29 -+#define SIGPWR 30 -+#define SIGSYS 31 -+#define SIGUNUSED SIGSYS -+ -+#define _NSIG 65 -+ -diff -Nur musl-0.9.15/arch/x32/bits/socket.h musl-git/arch/x32/bits/socket.h ---- musl-0.9.15/arch/x32/bits/socket.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/socket.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,18 @@ -+struct msghdr -+{ -+ void *msg_name; -+ socklen_t msg_namelen; -+ struct iovec *msg_iov; -+ int msg_iovlen, __pad1; -+ void *msg_control; -+ socklen_t msg_controllen, __pad2; -+ int msg_flags; -+}; -+ -+struct cmsghdr -+{ -+ socklen_t cmsg_len; -+ int __pad1; -+ int cmsg_level; -+ int cmsg_type; -+}; -diff -Nur musl-0.9.15/arch/x32/bits/statfs.h musl-git/arch/x32/bits/statfs.h ---- musl-0.9.15/arch/x32/bits/statfs.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/statfs.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,7 @@ -+struct statfs { -+ unsigned long f_type, f_bsize; -+ fsblkcnt_t f_blocks, f_bfree, f_bavail; -+ fsfilcnt_t f_files, f_ffree; -+ fsid_t f_fsid; -+ unsigned long f_namelen, f_frsize, f_flags, f_spare[4]; -+}; -diff -Nur musl-0.9.15/arch/x32/bits/stat.h musl-git/arch/x32/bits/stat.h ---- musl-0.9.15/arch/x32/bits/stat.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/stat.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,22 @@ -+/* copied from kernel definition, but with padding replaced -+ * by the corresponding correctly-sized userspace types. */ -+ -+struct stat { -+ dev_t st_dev; -+ ino_t st_ino; -+ nlink_t st_nlink; -+ -+ mode_t st_mode; -+ uid_t st_uid; -+ gid_t st_gid; -+ unsigned int __pad0; -+ dev_t st_rdev; -+ off_t st_size; -+ blksize_t st_blksize; -+ blkcnt_t st_blocks; -+ -+ struct timespec st_atim; -+ struct timespec st_mtim; -+ struct timespec st_ctim; -+ long long __unused[3]; -+}; -diff -Nur musl-0.9.15/arch/x32/bits/stdarg.h musl-git/arch/x32/bits/stdarg.h ---- musl-0.9.15/arch/x32/bits/stdarg.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/stdarg.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,4 @@ -+#define va_start(v,l) __builtin_va_start(v,l) -+#define va_end(v) __builtin_va_end(v) -+#define va_arg(v,l) __builtin_va_arg(v,l) -+#define va_copy(d,s) __builtin_va_copy(d,s) -diff -Nur musl-0.9.15/arch/x32/bits/stdint.h musl-git/arch/x32/bits/stdint.h ---- musl-0.9.15/arch/x32/bits/stdint.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/stdint.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,20 @@ -+typedef int32_t int_fast16_t; -+typedef int32_t int_fast32_t; -+typedef uint32_t uint_fast16_t; -+typedef uint32_t uint_fast32_t; -+ -+#define INT_FAST16_MIN INT32_MIN -+#define INT_FAST32_MIN INT32_MIN -+ -+#define INT_FAST16_MAX INT32_MAX -+#define INT_FAST32_MAX INT32_MAX -+ -+#define UINT_FAST16_MAX UINT32_MAX -+#define UINT_FAST32_MAX UINT32_MAX -+ -+#define INTPTR_MIN INT32_MIN -+#define INTPTR_MAX INT32_MAX -+#define UINTPTR_MAX UINT32_MAX -+#define PTRDIFF_MIN INT32_MIN -+#define PTRDIFF_MAX INT32_MAX -+#define SIZE_MAX UINT32_MAX -diff -Nur musl-0.9.15/arch/x32/bits/syscall.h musl-git/arch/x32/bits/syscall.h ---- musl-0.9.15/arch/x32/bits/syscall.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/syscall.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,634 @@ -+#define __X32_SYSCALL_BIT 0x40000000 -+#define __NR_read (__X32_SYSCALL_BIT + 0) -+#define __NR_write (__X32_SYSCALL_BIT + 1) -+#define __NR_open (__X32_SYSCALL_BIT + 2) -+#define __NR_close (__X32_SYSCALL_BIT + 3) -+#define __NR_stat (__X32_SYSCALL_BIT + 4) -+#define __NR_fstat (__X32_SYSCALL_BIT + 5) -+#define __NR_lstat (__X32_SYSCALL_BIT + 6) -+#define __NR_poll (__X32_SYSCALL_BIT + 7) -+#define __NR_lseek (__X32_SYSCALL_BIT + 8) -+#define __NR_mmap (__X32_SYSCALL_BIT + 9) -+#define __NR_mprotect (__X32_SYSCALL_BIT + 10) -+#define __NR_munmap (__X32_SYSCALL_BIT + 11) -+#define __NR_brk (__X32_SYSCALL_BIT + 12) -+#define __NR_rt_sigprocmask (__X32_SYSCALL_BIT + 14) -+#define __NR_pread64 (__X32_SYSCALL_BIT + 17) -+#define __NR_pwrite64 (__X32_SYSCALL_BIT + 18) -+#define __NR_access (__X32_SYSCALL_BIT + 21) -+#define __NR_pipe (__X32_SYSCALL_BIT + 22) -+#define __NR_select (__X32_SYSCALL_BIT + 23) -+#define __NR_sched_yield (__X32_SYSCALL_BIT + 24) -+#define __NR_mremap (__X32_SYSCALL_BIT + 25) -+#define __NR_msync (__X32_SYSCALL_BIT + 26) -+#define __NR_mincore (__X32_SYSCALL_BIT + 27) -+#define __NR_madvise (__X32_SYSCALL_BIT + 28) -+#define __NR_shmget (__X32_SYSCALL_BIT + 29) -+#define __NR_shmat (__X32_SYSCALL_BIT + 30) -+#define __NR_shmctl (__X32_SYSCALL_BIT + 31) -+#define __NR_dup (__X32_SYSCALL_BIT + 32) -+#define __NR_dup2 (__X32_SYSCALL_BIT + 33) -+#define __NR_pause (__X32_SYSCALL_BIT + 34) -+#define __NR_nanosleep (__X32_SYSCALL_BIT + 35) -+#define __NR_getitimer (__X32_SYSCALL_BIT + 36) -+#define __NR_alarm (__X32_SYSCALL_BIT + 37) -+#define __NR_setitimer (__X32_SYSCALL_BIT + 38) -+#define __NR_getpid (__X32_SYSCALL_BIT + 39) -+#define __NR_sendfile (__X32_SYSCALL_BIT + 40) -+#define __NR_socket (__X32_SYSCALL_BIT + 41) -+#define __NR_connect (__X32_SYSCALL_BIT + 42) -+#define __NR_accept (__X32_SYSCALL_BIT + 43) -+#define __NR_sendto (__X32_SYSCALL_BIT + 44) -+#define __NR_shutdown (__X32_SYSCALL_BIT + 48) -+#define __NR_bind (__X32_SYSCALL_BIT + 49) -+#define __NR_listen (__X32_SYSCALL_BIT + 50) -+#define __NR_getsockname (__X32_SYSCALL_BIT + 51) -+#define __NR_getpeername (__X32_SYSCALL_BIT + 52) -+#define __NR_socketpair (__X32_SYSCALL_BIT + 53) -+#define __NR_clone (__X32_SYSCALL_BIT + 56) -+#define __NR_fork (__X32_SYSCALL_BIT + 57) -+#define __NR_vfork (__X32_SYSCALL_BIT + 58) -+#define __NR_exit (__X32_SYSCALL_BIT + 60) -+#define __NR_wait4 (__X32_SYSCALL_BIT + 61) -+#define __NR_kill (__X32_SYSCALL_BIT + 62) -+#define __NR_uname (__X32_SYSCALL_BIT + 63) -+#define __NR_semget (__X32_SYSCALL_BIT + 64) -+#define __NR_semop (__X32_SYSCALL_BIT + 65) -+#define __NR_semctl (__X32_SYSCALL_BIT + 66) -+#define __NR_shmdt (__X32_SYSCALL_BIT + 67) -+#define __NR_msgget (__X32_SYSCALL_BIT + 68) -+#define __NR_msgsnd (__X32_SYSCALL_BIT + 69) -+#define __NR_msgrcv (__X32_SYSCALL_BIT + 70) -+#define __NR_msgctl (__X32_SYSCALL_BIT + 71) -+#define __NR_fcntl (__X32_SYSCALL_BIT + 72) -+#define __NR_flock (__X32_SYSCALL_BIT + 73) -+#define __NR_fsync (__X32_SYSCALL_BIT + 74) -+#define __NR_fdatasync (__X32_SYSCALL_BIT + 75) -+#define __NR_truncate (__X32_SYSCALL_BIT + 76) -+#define __NR_ftruncate (__X32_SYSCALL_BIT + 77) -+#define __NR_getdents (__X32_SYSCALL_BIT + 78) -+#define __NR_getcwd (__X32_SYSCALL_BIT + 79) -+#define __NR_chdir (__X32_SYSCALL_BIT + 80) -+#define __NR_fchdir (__X32_SYSCALL_BIT + 81) -+#define __NR_rename (__X32_SYSCALL_BIT + 82) -+#define __NR_mkdir (__X32_SYSCALL_BIT + 83) -+#define __NR_rmdir (__X32_SYSCALL_BIT + 84) -+#define __NR_creat (__X32_SYSCALL_BIT + 85) -+#define __NR_link (__X32_SYSCALL_BIT + 86) -+#define __NR_unlink (__X32_SYSCALL_BIT + 87) -+#define __NR_symlink (__X32_SYSCALL_BIT + 88) -+#define __NR_readlink (__X32_SYSCALL_BIT + 89) -+#define __NR_chmod (__X32_SYSCALL_BIT + 90) -+#define __NR_fchmod (__X32_SYSCALL_BIT + 91) -+#define __NR_chown (__X32_SYSCALL_BIT + 92) -+#define __NR_fchown (__X32_SYSCALL_BIT + 93) -+#define __NR_lchown (__X32_SYSCALL_BIT + 94) -+#define __NR_umask (__X32_SYSCALL_BIT + 95) -+#define __NR_gettimeofday (__X32_SYSCALL_BIT + 96) -+#define __NR_getrlimit (__X32_SYSCALL_BIT + 97) -+#define __NR_getrusage (__X32_SYSCALL_BIT + 98) -+#define __NR_sysinfo (__X32_SYSCALL_BIT + 99) -+#define __NR_times (__X32_SYSCALL_BIT + 100) -+#define __NR_getuid (__X32_SYSCALL_BIT + 102) -+#define __NR_syslog (__X32_SYSCALL_BIT + 103) -+#define __NR_getgid (__X32_SYSCALL_BIT + 104) -+#define __NR_setuid (__X32_SYSCALL_BIT + 105) -+#define __NR_setgid (__X32_SYSCALL_BIT + 106) -+#define __NR_geteuid (__X32_SYSCALL_BIT + 107) -+#define __NR_getegid (__X32_SYSCALL_BIT + 108) -+#define __NR_setpgid (__X32_SYSCALL_BIT + 109) -+#define __NR_getppid (__X32_SYSCALL_BIT + 110) -+#define __NR_getpgrp (__X32_SYSCALL_BIT + 111) -+#define __NR_setsid (__X32_SYSCALL_BIT + 112) -+#define __NR_setreuid (__X32_SYSCALL_BIT + 113) -+#define __NR_setregid (__X32_SYSCALL_BIT + 114) -+#define __NR_getgroups (__X32_SYSCALL_BIT + 115) -+#define __NR_setgroups (__X32_SYSCALL_BIT + 116) -+#define __NR_setresuid (__X32_SYSCALL_BIT + 117) -+#define __NR_getresuid (__X32_SYSCALL_BIT + 118) -+#define __NR_setresgid (__X32_SYSCALL_BIT + 119) -+#define __NR_getresgid (__X32_SYSCALL_BIT + 120) -+#define __NR_getpgid (__X32_SYSCALL_BIT + 121) -+#define __NR_setfsuid (__X32_SYSCALL_BIT + 122) -+#define __NR_setfsgid (__X32_SYSCALL_BIT + 123) -+#define __NR_getsid (__X32_SYSCALL_BIT + 124) -+#define __NR_capget (__X32_SYSCALL_BIT + 125) -+#define __NR_capset (__X32_SYSCALL_BIT + 126) -+#define __NR_rt_sigsuspend (__X32_SYSCALL_BIT + 130) -+#define __NR_utime (__X32_SYSCALL_BIT + 132) -+#define __NR_mknod (__X32_SYSCALL_BIT + 133) -+#define __NR_personality (__X32_SYSCALL_BIT + 135) -+#define __NR_ustat (__X32_SYSCALL_BIT + 136) -+#define __NR_statfs (__X32_SYSCALL_BIT + 137) -+#define __NR_fstatfs (__X32_SYSCALL_BIT + 138) -+#define __NR_sysfs (__X32_SYSCALL_BIT + 139) -+#define __NR_getpriority (__X32_SYSCALL_BIT + 140) -+#define __NR_setpriority (__X32_SYSCALL_BIT + 141) -+#define __NR_sched_setparam (__X32_SYSCALL_BIT + 142) -+#define __NR_sched_getparam (__X32_SYSCALL_BIT + 143) -+#define __NR_sched_setscheduler (__X32_SYSCALL_BIT + 144) -+#define __NR_sched_getscheduler (__X32_SYSCALL_BIT + 145) -+#define __NR_sched_get_priority_max (__X32_SYSCALL_BIT + 146) -+#define __NR_sched_get_priority_min (__X32_SYSCALL_BIT + 147) -+#define __NR_sched_rr_get_interval (__X32_SYSCALL_BIT + 148) -+#define __NR_mlock (__X32_SYSCALL_BIT + 149) -+#define __NR_munlock (__X32_SYSCALL_BIT + 150) -+#define __NR_mlockall (__X32_SYSCALL_BIT + 151) -+#define __NR_munlockall (__X32_SYSCALL_BIT + 152) -+#define __NR_vhangup (__X32_SYSCALL_BIT + 153) -+#define __NR_modify_ldt (__X32_SYSCALL_BIT + 154) -+#define __NR_pivot_root (__X32_SYSCALL_BIT + 155) -+#define __NR_prctl (__X32_SYSCALL_BIT + 157) -+#define __NR_arch_prctl (__X32_SYSCALL_BIT + 158) -+#define __NR_adjtimex (__X32_SYSCALL_BIT + 159) -+#define __NR_setrlimit (__X32_SYSCALL_BIT + 160) -+#define __NR_chroot (__X32_SYSCALL_BIT + 161) -+#define __NR_sync (__X32_SYSCALL_BIT + 162) -+#define __NR_acct (__X32_SYSCALL_BIT + 163) -+#define __NR_settimeofday (__X32_SYSCALL_BIT + 164) -+#define __NR_mount (__X32_SYSCALL_BIT + 165) -+#define __NR_umount2 (__X32_SYSCALL_BIT + 166) -+#define __NR_swapon (__X32_SYSCALL_BIT + 167) -+#define __NR_swapoff (__X32_SYSCALL_BIT + 168) -+#define __NR_reboot (__X32_SYSCALL_BIT + 169) -+#define __NR_sethostname (__X32_SYSCALL_BIT + 170) -+#define __NR_setdomainname (__X32_SYSCALL_BIT + 171) -+#define __NR_iopl (__X32_SYSCALL_BIT + 172) -+#define __NR_ioperm (__X32_SYSCALL_BIT + 173) -+#define __NR_init_module (__X32_SYSCALL_BIT + 175) -+#define __NR_delete_module (__X32_SYSCALL_BIT + 176) -+#define __NR_quotactl (__X32_SYSCALL_BIT + 179) -+#define __NR_getpmsg (__X32_SYSCALL_BIT + 181) -+#define __NR_putpmsg (__X32_SYSCALL_BIT + 182) -+#define __NR_afs_syscall (__X32_SYSCALL_BIT + 183) -+#define __NR_tuxcall (__X32_SYSCALL_BIT + 184) -+#define __NR_security (__X32_SYSCALL_BIT + 185) -+#define __NR_gettid (__X32_SYSCALL_BIT + 186) -+#define __NR_readahead (__X32_SYSCALL_BIT + 187) -+#define __NR_setxattr (__X32_SYSCALL_BIT + 188) -+#define __NR_lsetxattr (__X32_SYSCALL_BIT + 189) -+#define __NR_fsetxattr (__X32_SYSCALL_BIT + 190) -+#define __NR_getxattr (__X32_SYSCALL_BIT + 191) -+#define __NR_lgetxattr (__X32_SYSCALL_BIT + 192) -+#define __NR_fgetxattr (__X32_SYSCALL_BIT + 193) -+#define __NR_listxattr (__X32_SYSCALL_BIT + 194) -+#define __NR_llistxattr (__X32_SYSCALL_BIT + 195) -+#define __NR_flistxattr (__X32_SYSCALL_BIT + 196) -+#define __NR_removexattr (__X32_SYSCALL_BIT + 197) -+#define __NR_lremovexattr (__X32_SYSCALL_BIT + 198) -+#define __NR_fremovexattr (__X32_SYSCALL_BIT + 199) -+#define __NR_tkill (__X32_SYSCALL_BIT + 200) -+#define __NR_time (__X32_SYSCALL_BIT + 201) -+#define __NR_futex (__X32_SYSCALL_BIT + 202) -+#define __NR_sched_setaffinity (__X32_SYSCALL_BIT + 203) -+#define __NR_sched_getaffinity (__X32_SYSCALL_BIT + 204) -+#define __NR_io_setup (__X32_SYSCALL_BIT + 206) -+#define __NR_io_destroy (__X32_SYSCALL_BIT + 207) -+#define __NR_io_getevents (__X32_SYSCALL_BIT + 208) -+#define __NR_io_submit (__X32_SYSCALL_BIT + 209) -+#define __NR_io_cancel (__X32_SYSCALL_BIT + 210) -+#define __NR_lookup_dcookie (__X32_SYSCALL_BIT + 212) -+#define __NR_epoll_create (__X32_SYSCALL_BIT + 213) -+#define __NR_remap_file_pages (__X32_SYSCALL_BIT + 216) -+#define __NR_getdents64 (__X32_SYSCALL_BIT + 217) -+#define __NR_set_tid_address (__X32_SYSCALL_BIT + 218) -+#define __NR_restart_syscall (__X32_SYSCALL_BIT + 219) -+#define __NR_semtimedop (__X32_SYSCALL_BIT + 220) -+#define __NR_fadvise64 (__X32_SYSCALL_BIT + 221) -+#define __NR_timer_settime (__X32_SYSCALL_BIT + 223) -+#define __NR_timer_gettime (__X32_SYSCALL_BIT + 224) -+#define __NR_timer_getoverrun (__X32_SYSCALL_BIT + 225) -+#define __NR_timer_delete (__X32_SYSCALL_BIT + 226) -+#define __NR_clock_settime (__X32_SYSCALL_BIT + 227) -+#define __NR_clock_gettime (__X32_SYSCALL_BIT + 228) -+#define __NR_clock_getres (__X32_SYSCALL_BIT + 229) -+#define __NR_clock_nanosleep (__X32_SYSCALL_BIT + 230) -+#define __NR_exit_group (__X32_SYSCALL_BIT + 231) -+#define __NR_epoll_wait (__X32_SYSCALL_BIT + 232) -+#define __NR_epoll_ctl (__X32_SYSCALL_BIT + 233) -+#define __NR_tgkill (__X32_SYSCALL_BIT + 234) -+#define __NR_utimes (__X32_SYSCALL_BIT + 235) -+#define __NR_mbind (__X32_SYSCALL_BIT + 237) -+#define __NR_set_mempolicy (__X32_SYSCALL_BIT + 238) -+#define __NR_get_mempolicy (__X32_SYSCALL_BIT + 239) -+#define __NR_mq_open (__X32_SYSCALL_BIT + 240) -+#define __NR_mq_unlink (__X32_SYSCALL_BIT + 241) -+#define __NR_mq_timedsend (__X32_SYSCALL_BIT + 242) -+#define __NR_mq_timedreceive (__X32_SYSCALL_BIT + 243) -+#define __NR_mq_getsetattr (__X32_SYSCALL_BIT + 245) -+#define __NR_add_key (__X32_SYSCALL_BIT + 248) -+#define __NR_request_key (__X32_SYSCALL_BIT + 249) -+#define __NR_keyctl (__X32_SYSCALL_BIT + 250) -+#define __NR_ioprio_set (__X32_SYSCALL_BIT + 251) -+#define __NR_ioprio_get (__X32_SYSCALL_BIT + 252) -+#define __NR_inotify_init (__X32_SYSCALL_BIT + 253) -+#define __NR_inotify_add_watch (__X32_SYSCALL_BIT + 254) -+#define __NR_inotify_rm_watch (__X32_SYSCALL_BIT + 255) -+#define __NR_migrate_pages (__X32_SYSCALL_BIT + 256) -+#define __NR_openat (__X32_SYSCALL_BIT + 257) -+#define __NR_mkdirat (__X32_SYSCALL_BIT + 258) -+#define __NR_mknodat (__X32_SYSCALL_BIT + 259) -+#define __NR_fchownat (__X32_SYSCALL_BIT + 260) -+#define __NR_futimesat (__X32_SYSCALL_BIT + 261) -+#define __NR_newfstatat (__X32_SYSCALL_BIT + 262) -+#define __NR_unlinkat (__X32_SYSCALL_BIT + 263) -+#define __NR_renameat (__X32_SYSCALL_BIT + 264) -+#define __NR_linkat (__X32_SYSCALL_BIT + 265) -+#define __NR_symlinkat (__X32_SYSCALL_BIT + 266) -+#define __NR_readlinkat (__X32_SYSCALL_BIT + 267) -+#define __NR_fchmodat (__X32_SYSCALL_BIT + 268) -+#define __NR_faccessat (__X32_SYSCALL_BIT + 269) -+#define __NR_pselect6 (__X32_SYSCALL_BIT + 270) -+#define __NR_ppoll (__X32_SYSCALL_BIT + 271) -+#define __NR_unshare (__X32_SYSCALL_BIT + 272) -+#define __NR_splice (__X32_SYSCALL_BIT + 275) -+#define __NR_tee (__X32_SYSCALL_BIT + 276) -+#define __NR_sync_file_range (__X32_SYSCALL_BIT + 277) -+#define __NR_utimensat (__X32_SYSCALL_BIT + 280) -+#define __NR_epoll_pwait (__X32_SYSCALL_BIT + 281) -+#define __NR_signalfd (__X32_SYSCALL_BIT + 282) -+#define __NR_timerfd_create (__X32_SYSCALL_BIT + 283) -+#define __NR_eventfd (__X32_SYSCALL_BIT + 284) -+#define __NR_fallocate (__X32_SYSCALL_BIT + 285) -+#define __NR_timerfd_settime (__X32_SYSCALL_BIT + 286) -+#define __NR_timerfd_gettime (__X32_SYSCALL_BIT + 287) -+#define __NR_accept4 (__X32_SYSCALL_BIT + 288) -+#define __NR_signalfd4 (__X32_SYSCALL_BIT + 289) -+#define __NR_eventfd2 (__X32_SYSCALL_BIT + 290) -+#define __NR_epoll_create1 (__X32_SYSCALL_BIT + 291) -+#define __NR_dup3 (__X32_SYSCALL_BIT + 292) -+#define __NR_pipe2 (__X32_SYSCALL_BIT + 293) -+#define __NR_inotify_init1 (__X32_SYSCALL_BIT + 294) -+#define __NR_perf_event_open (__X32_SYSCALL_BIT + 298) -+#define __NR_fanotify_init (__X32_SYSCALL_BIT + 300) -+#define __NR_fanotify_mark (__X32_SYSCALL_BIT + 301) -+#define __NR_prlimit64 (__X32_SYSCALL_BIT + 302) -+#define __NR_name_to_handle_at (__X32_SYSCALL_BIT + 303) -+#define __NR_open_by_handle_at (__X32_SYSCALL_BIT + 304) -+#define __NR_clock_adjtime (__X32_SYSCALL_BIT + 305) -+#define __NR_syncfs (__X32_SYSCALL_BIT + 306) -+#define __NR_setns (__X32_SYSCALL_BIT + 308) -+#define __NR_getcpu (__X32_SYSCALL_BIT + 309) -+#define __NR_kcmp (__X32_SYSCALL_BIT + 312) -+#define __NR_finit_module (__X32_SYSCALL_BIT + 313) -+#define __NR_rt_sigaction (__X32_SYSCALL_BIT + 512) -+#define __NR_rt_sigreturn (__X32_SYSCALL_BIT + 513) -+#define __NR_ioctl (__X32_SYSCALL_BIT + 514) -+#define __NR_readv (__X32_SYSCALL_BIT + 515) -+#define __NR_writev (__X32_SYSCALL_BIT + 516) -+#define __NR_recvfrom (__X32_SYSCALL_BIT + 517) -+#define __NR_sendmsg (__X32_SYSCALL_BIT + 518) -+#define __NR_recvmsg (__X32_SYSCALL_BIT + 519) -+#define __NR_execve (__X32_SYSCALL_BIT + 520) -+#define __NR_ptrace (__X32_SYSCALL_BIT + 521) -+#define __NR_rt_sigpending (__X32_SYSCALL_BIT + 522) -+#define __NR_rt_sigtimedwait (__X32_SYSCALL_BIT + 523) -+#define __NR_rt_sigqueueinfo (__X32_SYSCALL_BIT + 524) -+#define __NR_sigaltstack (__X32_SYSCALL_BIT + 525) -+#define __NR_timer_create (__X32_SYSCALL_BIT + 526) -+#define __NR_mq_notify (__X32_SYSCALL_BIT + 527) -+#define __NR_kexec_load (__X32_SYSCALL_BIT + 528) -+#define __NR_waitid (__X32_SYSCALL_BIT + 529) -+#define __NR_set_robust_list (__X32_SYSCALL_BIT + 530) -+#define __NR_get_robust_list (__X32_SYSCALL_BIT + 531) -+#define __NR_vmsplice (__X32_SYSCALL_BIT + 532) -+#define __NR_move_pages (__X32_SYSCALL_BIT + 533) -+#define __NR_preadv (__X32_SYSCALL_BIT + 534) -+#define __NR_pwritev (__X32_SYSCALL_BIT + 535) -+#define __NR_rt_tgsigqueueinfo (__X32_SYSCALL_BIT + 536) -+#define __NR_recvmmsg (__X32_SYSCALL_BIT + 537) -+#define __NR_sendmmsg (__X32_SYSCALL_BIT + 538) -+#define __NR_process_vm_readv (__X32_SYSCALL_BIT + 539) -+#define __NR_process_vm_writev (__X32_SYSCALL_BIT + 540) -+#define __NR_setsockopt (__X32_SYSCALL_BIT + 541) -+#define __NR_getsockopt (__X32_SYSCALL_BIT + 542) -+ -+#undef __NR_fstatat -+#undef __NR_pread -+#undef __NR_pwrite -+#undef __NR_getdents -+#define __NR_fstatat __NR_newfstatat -+#define __NR_pread __NR_pread64 -+#define __NR_pwrite __NR_pwrite64 -+#define __NR_getdents __NR_getdents64 -+#define __NR_fadvise __NR_fadvise64 -+ -+ -+ -+/* Repeat with SYS_ prefix */ -+ -+ -+ -+#define SYS_read __NR_read -+#define SYS_write __NR_write -+#define SYS_open __NR_open -+#define SYS_close __NR_close -+#define SYS_stat __NR_stat -+#define SYS_fstat __NR_fstat -+#define SYS_lstat __NR_lstat -+#define SYS_poll __NR_poll -+#define SYS_lseek __NR_lseek -+#define SYS_mmap __NR_mmap -+#define SYS_mprotect __NR_mprotect -+#define SYS_munmap __NR_munmap -+#define SYS_brk __NR_brk -+#define SYS_rt_sigprocmask __NR_rt_sigprocmask -+#define SYS_pread64 __NR_pread64 -+#define SYS_pwrite64 __NR_pwrite64 -+#define SYS_access __NR_access -+#define SYS_pipe __NR_pipe -+#define SYS_select __NR_select -+#define SYS_sched_yield __NR_sched_yield -+#define SYS_mremap __NR_mremap -+#define SYS_msync __NR_msync -+#define SYS_mincore __NR_mincore -+#define SYS_madvise __NR_madvise -+#define SYS_shmget __NR_shmget -+#define SYS_shmat __NR_shmat -+#define SYS_shmctl __NR_shmctl -+#define SYS_dup __NR_dup -+#define SYS_dup2 __NR_dup2 -+#define SYS_pause __NR_pause -+#define SYS_nanosleep __NR_nanosleep -+#define SYS_getitimer __NR_getitimer -+#define SYS_alarm __NR_alarm -+#define SYS_setitimer __NR_setitimer -+#define SYS_getpid __NR_getpid -+#define SYS_sendfile __NR_sendfile -+#define SYS_socket __NR_socket -+#define SYS_connect __NR_connect -+#define SYS_accept __NR_accept -+#define SYS_sendto __NR_sendto -+#define SYS_shutdown __NR_shutdown -+#define SYS_bind __NR_bind -+#define SYS_listen __NR_listen -+#define SYS_getsockname __NR_getsockname -+#define SYS_getpeername __NR_getpeername -+#define SYS_socketpair __NR_socketpair -+#define SYS_clone __NR_clone -+#define SYS_fork __NR_fork -+#define SYS_vfork __NR_vfork -+#define SYS_exit __NR_exit -+#define SYS_wait4 __NR_wait4 -+#define SYS_kill __NR_kill -+#define SYS_uname __NR_uname -+#define SYS_semget __NR_semget -+#define SYS_semop __NR_semop -+#define SYS_semctl __NR_semctl -+#define SYS_shmdt __NR_shmdt -+#define SYS_msgget __NR_msgget -+#define SYS_msgsnd __NR_msgsnd -+#define SYS_msgrcv __NR_msgrcv -+#define SYS_msgctl __NR_msgctl -+#define SYS_fcntl __NR_fcntl -+#define SYS_flock __NR_flock -+#define SYS_fsync __NR_fsync -+#define SYS_fdatasync __NR_fdatasync -+#define SYS_truncate __NR_truncate -+#define SYS_ftruncate __NR_ftruncate -+#define SYS_getdents __NR_getdents -+#define SYS_getcwd __NR_getcwd -+#define SYS_chdir __NR_chdir -+#define SYS_fchdir __NR_fchdir -+#define SYS_rename __NR_rename -+#define SYS_mkdir __NR_mkdir -+#define SYS_rmdir __NR_rmdir -+#define SYS_creat __NR_creat -+#define SYS_link __NR_link -+#define SYS_unlink __NR_unlink -+#define SYS_symlink __NR_symlink -+#define SYS_readlink __NR_readlink -+#define SYS_chmod __NR_chmod -+#define SYS_fchmod __NR_fchmod -+#define SYS_chown __NR_chown -+#define SYS_fchown __NR_fchown -+#define SYS_lchown __NR_lchown -+#define SYS_umask __NR_umask -+#define SYS_gettimeofday __NR_gettimeofday -+#define SYS_getrlimit __NR_getrlimit -+#define SYS_getrusage __NR_getrusage -+#define SYS_sysinfo __NR_sysinfo -+#define SYS_times __NR_times -+#define SYS_getuid __NR_getuid -+#define SYS_syslog __NR_syslog -+#define SYS_getgid __NR_getgid -+#define SYS_setuid __NR_setuid -+#define SYS_setgid __NR_setgid -+#define SYS_geteuid __NR_geteuid -+#define SYS_getegid __NR_getegid -+#define SYS_setpgid __NR_setpgid -+#define SYS_getppid __NR_getppid -+#define SYS_getpgrp __NR_getpgrp -+#define SYS_setsid __NR_setsid -+#define SYS_setreuid __NR_setreuid -+#define SYS_setregid __NR_setregid -+#define SYS_getgroups __NR_getgroups -+#define SYS_setgroups __NR_setgroups -+#define SYS_setresuid __NR_setresuid -+#define SYS_getresuid __NR_getresuid -+#define SYS_setresgid __NR_setresgid -+#define SYS_getresgid __NR_getresgid -+#define SYS_getpgid __NR_getpgid -+#define SYS_setfsuid __NR_setfsuid -+#define SYS_setfsgid __NR_setfsgid -+#define SYS_getsid __NR_getsid -+#define SYS_capget __NR_capget -+#define SYS_capset __NR_capset -+#define SYS_rt_sigsuspend __NR_rt_sigsuspend -+#define SYS_utime __NR_utime -+#define SYS_mknod __NR_mknod -+#define SYS_personality __NR_personality -+#define SYS_ustat __NR_ustat -+#define SYS_statfs __NR_statfs -+#define SYS_fstatfs __NR_fstatfs -+#define SYS_sysfs __NR_sysfs -+#define SYS_getpriority __NR_getpriority -+#define SYS_setpriority __NR_setpriority -+#define SYS_sched_setparam __NR_sched_setparam -+#define SYS_sched_getparam __NR_sched_getparam -+#define SYS_sched_setscheduler __NR_sched_setscheduler -+#define SYS_sched_getscheduler __NR_sched_getscheduler -+#define SYS_sched_get_priority_max __NR_sched_get_priority_max -+#define SYS_sched_get_priority_min __NR_sched_get_priority_min -+#define SYS_sched_rr_get_interval __NR_sched_rr_get_interval -+#define SYS_mlock __NR_mlock -+#define SYS_munlock __NR_munlock -+#define SYS_mlockall __NR_mlockall -+#define SYS_munlockall __NR_munlockall -+#define SYS_vhangup __NR_vhangup -+#define SYS_modify_ldt __NR_modify_ldt -+#define SYS_pivot_root __NR_pivot_root -+#define SYS_prctl __NR_prctl -+#define SYS_arch_prctl __NR_arch_prctl -+#define SYS_adjtimex __NR_adjtimex -+#define SYS_setrlimit __NR_setrlimit -+#define SYS_chroot __NR_chroot -+#define SYS_sync __NR_sync -+#define SYS_acct __NR_acct -+#define SYS_settimeofday __NR_settimeofday -+#define SYS_mount __NR_mount -+#define SYS_umount2 __NR_umount2 -+#define SYS_swapon __NR_swapon -+#define SYS_swapoff __NR_swapoff -+#define SYS_reboot __NR_reboot -+#define SYS_sethostname __NR_sethostname -+#define SYS_setdomainname __NR_setdomainname -+#define SYS_iopl __NR_iopl -+#define SYS_ioperm __NR_ioperm -+#define SYS_init_module __NR_init_module -+#define SYS_delete_module __NR_delete_module -+#define SYS_quotactl __NR_quotactl -+#define SYS_getpmsg __NR_getpmsg -+#define SYS_putpmsg __NR_putpmsg -+#define SYS_afs_syscall __NR_afs_syscall -+#define SYS_tuxcall __NR_tuxcall -+#define SYS_security __NR_security -+#define SYS_gettid __NR_gettid -+#define SYS_readahead __NR_readahead -+#define SYS_setxattr __NR_setxattr -+#define SYS_lsetxattr __NR_lsetxattr -+#define SYS_fsetxattr __NR_fsetxattr -+#define SYS_getxattr __NR_getxattr -+#define SYS_lgetxattr __NR_lgetxattr -+#define SYS_fgetxattr __NR_fgetxattr -+#define SYS_listxattr __NR_listxattr -+#define SYS_llistxattr __NR_llistxattr -+#define SYS_flistxattr __NR_flistxattr -+#define SYS_removexattr __NR_removexattr -+#define SYS_lremovexattr __NR_lremovexattr -+#define SYS_fremovexattr __NR_fremovexattr -+#define SYS_tkill __NR_tkill -+#define SYS_time __NR_time -+#define SYS_futex __NR_futex -+#define SYS_sched_setaffinity __NR_sched_setaffinity -+#define SYS_sched_getaffinity __NR_sched_getaffinity -+#define SYS_io_setup __NR_io_setup -+#define SYS_io_destroy __NR_io_destroy -+#define SYS_io_getevents __NR_io_getevents -+#define SYS_io_submit __NR_io_submit -+#define SYS_io_cancel __NR_io_cancel -+#define SYS_lookup_dcookie __NR_lookup_dcookie -+#define SYS_epoll_create __NR_epoll_create -+#define SYS_remap_file_pages __NR_remap_file_pages -+#define SYS_getdents64 __NR_getdents64 -+#define SYS_set_tid_address __NR_set_tid_address -+#define SYS_restart_syscall __NR_restart_syscall -+#define SYS_semtimedop __NR_semtimedop -+#define SYS_fadvise64 __NR_fadvise64 -+#define SYS_timer_settime __NR_timer_settime -+#define SYS_timer_gettime __NR_timer_gettime -+#define SYS_timer_getoverrun __NR_timer_getoverrun -+#define SYS_timer_delete __NR_timer_delete -+#define SYS_clock_settime __NR_clock_settime -+#define SYS_clock_gettime __NR_clock_gettime -+#define SYS_clock_getres __NR_clock_getres -+#define SYS_clock_nanosleep __NR_clock_nanosleep -+#define SYS_exit_group __NR_exit_group -+#define SYS_epoll_wait __NR_epoll_wait -+#define SYS_epoll_ctl __NR_epoll_ctl -+#define SYS_tgkill __NR_tgkill -+#define SYS_utimes __NR_utimes -+#define SYS_mbind __NR_mbind -+#define SYS_set_mempolicy __NR_set_mempolicy -+#define SYS_get_mempolicy __NR_get_mempolicy -+#define SYS_mq_open __NR_mq_open -+#define SYS_mq_unlink __NR_mq_unlink -+#define SYS_mq_timedsend __NR_mq_timedsend -+#define SYS_mq_timedreceive __NR_mq_timedreceive -+#define SYS_mq_getsetattr __NR_mq_getsetattr -+#define SYS_add_key __NR_add_key -+#define SYS_request_key __NR_request_key -+#define SYS_keyctl __NR_keyctl -+#define SYS_ioprio_set __NR_ioprio_set -+#define SYS_ioprio_get __NR_ioprio_get -+#define SYS_inotify_init __NR_inotify_init -+#define SYS_inotify_add_watch __NR_inotify_add_watch -+#define SYS_inotify_rm_watch __NR_inotify_rm_watch -+#define SYS_migrate_pages __NR_migrate_pages -+#define SYS_openat __NR_openat -+#define SYS_mkdirat __NR_mkdirat -+#define SYS_mknodat __NR_mknodat -+#define SYS_fchownat __NR_fchownat -+#define SYS_futimesat __NR_futimesat -+#define SYS_newfstatat __NR_newfstatat -+#define SYS_unlinkat __NR_unlinkat -+#define SYS_renameat __NR_renameat -+#define SYS_linkat __NR_linkat -+#define SYS_symlinkat __NR_symlinkat -+#define SYS_readlinkat __NR_readlinkat -+#define SYS_fchmodat __NR_fchmodat -+#define SYS_faccessat __NR_faccessat -+#define SYS_pselect6 __NR_pselect6 -+#define SYS_ppoll __NR_ppoll -+#define SYS_unshare __NR_unshare -+#define SYS_splice __NR_splice -+#define SYS_tee __NR_tee -+#define SYS_sync_file_range __NR_sync_file_range -+#define SYS_utimensat __NR_utimensat -+#define SYS_epoll_pwait __NR_epoll_pwait -+#define SYS_signalfd __NR_signalfd -+#define SYS_timerfd_create __NR_timerfd_create -+#define SYS_eventfd __NR_eventfd -+#define SYS_fallocate __NR_fallocate -+#define SYS_timerfd_settime __NR_timerfd_settime -+#define SYS_timerfd_gettime __NR_timerfd_gettime -+#define SYS_accept4 __NR_accept4 -+#define SYS_signalfd4 __NR_signalfd4 -+#define SYS_eventfd2 __NR_eventfd2 -+#define SYS_epoll_create1 __NR_epoll_create1 -+#define SYS_dup3 __NR_dup3 -+#define SYS_pipe2 __NR_pipe2 -+#define SYS_inotify_init1 __NR_inotify_init1 -+#define SYS_perf_event_open __NR_perf_event_open -+#define SYS_fanotify_init __NR_fanotify_init -+#define SYS_fanotify_mark __NR_fanotify_mark -+#define SYS_prlimit64 __NR_prlimit64 -+#define SYS_name_to_handle_at __NR_name_to_handle_at -+#define SYS_open_by_handle_at __NR_open_by_handle_at -+#define SYS_clock_adjtime __NR_clock_adjtime -+#define SYS_syncfs __NR_syncfs -+#define SYS_setns __NR_setns -+#define SYS_getcpu __NR_getcpu -+#define SYS_kcmp __NR_kcmp -+#define SYS_finit_module __NR_finit_module -+#define SYS_rt_sigaction __NR_rt_sigaction -+#define SYS_rt_sigreturn __NR_rt_sigreturn -+#define SYS_ioctl __NR_ioctl -+#define SYS_readv __NR_readv -+#define SYS_writev __NR_writev -+#define SYS_recvfrom __NR_recvfrom -+#define SYS_sendmsg __NR_sendmsg -+#define SYS_recvmsg __NR_recvmsg -+#define SYS_execve __NR_execve -+#define SYS_ptrace __NR_ptrace -+#define SYS_rt_sigpending __NR_rt_sigpending -+#define SYS_rt_sigtimedwait __NR_rt_sigtimedwait -+#define SYS_rt_sigqueueinfo __NR_rt_sigqueueinfo -+#define SYS_sigaltstack __NR_sigaltstack -+#define SYS_timer_create __NR_timer_create -+#define SYS_mq_notify __NR_mq_notify -+#define SYS_kexec_load __NR_kexec_load -+#define SYS_waitid __NR_waitid -+#define SYS_set_robust_list __NR_set_robust_list -+#define SYS_get_robust_list __NR_get_robust_list -+#define SYS_vmsplice __NR_vmsplice -+#define SYS_move_pages __NR_move_pages -+#define SYS_preadv __NR_preadv -+#define SYS_pwritev __NR_pwritev -+#define SYS_rt_tgsigqueueinfo __NR_rt_tgsigqueueinfo -+#define SYS_recvmmsg __NR_recvmmsg -+#define SYS_sendmmsg __NR_sendmmsg -+#define SYS_process_vm_readv __NR_process_vm_readv -+#define SYS_process_vm_writev __NR_process_vm_writev -+#define SYS_setsockopt __NR_setsockopt -+#define SYS_getsockopt __NR_getsockopt -+ -+#undef SYS_fstatat -+#undef SYS_pread -+#undef SYS_pwrite -+#undef SYS_getdents -+#define SYS_fstatat SYS_newfstatat -+#define SYS_pread SYS_pread64 -+#define SYS_pwrite SYS_pwrite64 -+#define SYS_getdents SYS_getdents64 -+#define SYS_fadvise SYS_fadvise64 -diff -Nur musl-0.9.15/arch/x32/bits/termios.h musl-git/arch/x32/bits/termios.h ---- musl-0.9.15/arch/x32/bits/termios.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/termios.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,160 @@ -+struct termios -+{ -+ tcflag_t c_iflag; -+ tcflag_t c_oflag; -+ tcflag_t c_cflag; -+ tcflag_t c_lflag; -+ cc_t c_line; -+ cc_t c_cc[NCCS]; -+ speed_t __c_ispeed; -+ speed_t __c_ospeed; -+}; -+ -+#define VINTR 0 -+#define VQUIT 1 -+#define VERASE 2 -+#define VKILL 3 -+#define VEOF 4 -+#define VTIME 5 -+#define VMIN 6 -+#define VSWTC 7 -+#define VSTART 8 -+#define VSTOP 9 -+#define VSUSP 10 -+#define VEOL 11 -+#define VREPRINT 12 -+#define VDISCARD 13 -+#define VWERASE 14 -+#define VLNEXT 15 -+#define VEOL2 16 -+ -+#define IGNBRK 0000001 -+#define BRKINT 0000002 -+#define IGNPAR 0000004 -+#define PARMRK 0000010 -+#define INPCK 0000020 -+#define ISTRIP 0000040 -+#define INLCR 0000100 -+#define IGNCR 0000200 -+#define ICRNL 0000400 -+#define IUCLC 0001000 -+#define IXON 0002000 -+#define IXANY 0004000 -+#define IXOFF 0010000 -+#define IMAXBEL 0020000 -+#define IUTF8 0040000 -+ -+#define OPOST 0000001 -+#define OLCUC 0000002 -+#define ONLCR 0000004 -+#define OCRNL 0000010 -+#define ONOCR 0000020 -+#define ONLRET 0000040 -+#define OFILL 0000100 -+#define OFDEL 0000200 -+#define NLDLY 0000400 -+#define NL0 0000000 -+#define NL1 0000400 -+#define CRDLY 0003000 -+#define CR0 0000000 -+#define CR1 0001000 -+#define CR2 0002000 -+#define CR3 0003000 -+#define TABDLY 0014000 -+#define TAB0 0000000 -+#define TAB1 0004000 -+#define TAB2 0010000 -+#define TAB3 0014000 -+#define BSDLY 0020000 -+#define BS0 0000000 -+#define BS1 0020000 -+#define FFDLY 0100000 -+#define FF0 0000000 -+#define FF1 0100000 -+ -+#define VTDLY 0040000 -+#define VT0 0000000 -+#define VT1 0040000 -+ -+#define B0 0000000 -+#define B50 0000001 -+#define B75 0000002 -+#define B110 0000003 -+#define B134 0000004 -+#define B150 0000005 -+#define B200 0000006 -+#define B300 0000007 -+#define B600 0000010 -+#define B1200 0000011 -+#define B1800 0000012 -+#define B2400 0000013 -+#define B4800 0000014 -+#define B9600 0000015 -+#define B19200 0000016 -+#define B38400 0000017 -+ -+#define B57600 0010001 -+#define B115200 0010002 -+#define B230400 0010003 -+#define B460800 0010004 -+#define B500000 0010005 -+#define B576000 0010006 -+#define B921600 0010007 -+#define B1000000 0010010 -+#define B1152000 0010011 -+#define B1500000 0010012 -+#define B2000000 0010013 -+#define B2500000 0010014 -+#define B3000000 0010015 -+#define B3500000 0010016 -+#define B4000000 0010017 -+ -+#define CBAUD 0010017 -+ -+#define CSIZE 0000060 -+#define CS5 0000000 -+#define CS6 0000020 -+#define CS7 0000040 -+#define CS8 0000060 -+#define CSTOPB 0000100 -+#define CREAD 0000200 -+#define PARENB 0000400 -+#define PARODD 0001000 -+#define HUPCL 0002000 -+#define CLOCAL 0004000 -+ -+#define ISIG 0000001 -+#define ICANON 0000002 -+#define ECHO 0000010 -+#define ECHOE 0000020 -+#define ECHOK 0000040 -+#define ECHONL 0000100 -+#define NOFLSH 0000200 -+#define TOSTOP 0000400 -+#define IEXTEN 0100000 -+ -+#define ECHOCTL 0001000 -+#define ECHOPRT 0002000 -+#define ECHOKE 0004000 -+#define FLUSHO 0010000 -+#define PENDIN 0040000 -+ -+#define TCOOFF 0 -+#define TCOON 1 -+#define TCIOFF 2 -+#define TCION 3 -+ -+#define TCIFLUSH 0 -+#define TCOFLUSH 1 -+#define TCIOFLUSH 2 -+ -+#define TCSANOW 0 -+#define TCSADRAIN 1 -+#define TCSAFLUSH 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define CBAUDEX 0010000 -+#define CRTSCTS 020000000000 -+#define EXTPROC 0200000 -+#define XTABS 0014000 -+#endif -diff -Nur musl-0.9.15/arch/x32/bits/user.h musl-git/arch/x32/bits/user.h ---- musl-0.9.15/arch/x32/bits/user.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/bits/user.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,44 @@ -+#undef __WORDSIZE -+#define __WORDSIZE 64 -+ -+typedef struct user_fpregs_struct -+{ -+ uint16_t cwd, swd, ftw, fop; -+ uint64_t rip, rdp; -+ uint32_t mxcsr, mxcs_mask; -+ uint32_t st_space[32], xmm_space[64], padding[24]; -+} elf_fpregset_t; -+ -+struct user_regs_struct -+{ -+ unsigned long r15, r14, r13, r12, rbp, rbx, r11, r10, r9, r8; -+ unsigned long rax, rcx, rdx, rsi, rdi, orig_rax, rip; -+ unsigned long cs, eflags, rsp, ss, fs_base, gs_base, ds, es, fs, gs; -+}; -+#define ELF_NGREG 27 -+typedef unsigned long long elf_greg_t, elf_gregset_t[ELF_NGREG]; -+ -+struct user -+{ -+ struct user_regs_struct regs; -+ int u_fpvalid; -+ struct user_fpregs_struct i387; -+ unsigned long u_tsize; -+ unsigned long u_dsize; -+ unsigned long u_ssize; -+ unsigned long start_code; -+ unsigned long start_stack; -+ long signal; -+ int reserved; -+ struct user_regs_struct *u_ar0; -+ struct user_fpregs_struct *u_fpstate; -+ unsigned long magic; -+ char u_comm[32]; -+ unsigned long u_debugreg[8]; -+}; -+ -+#define PAGE_MASK (~(PAGE_SIZE-1)) -+#define NBPG PAGE_SIZE -+#define UPAGES 1 -+#define HOST_TEXT_START_ADDR (u.start_code) -+#define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG) -diff -Nur musl-0.9.15/arch/x32/crt_arch.h musl-git/arch/x32/crt_arch.h ---- musl-0.9.15/arch/x32/crt_arch.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/crt_arch.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,9 @@ -+__asm__("\ -+.text \n\ -+.global _start \n\ -+_start: \n\ -+ xor %rbp,%rbp \n\ -+ mov %rsp,%rdi \n\ -+ andq $-16,%rsp \n\ -+ call __cstart \n\ -+"); -diff -Nur musl-0.9.15/arch/x32/pthread_arch.h musl-git/arch/x32/pthread_arch.h ---- musl-0.9.15/arch/x32/pthread_arch.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/pthread_arch.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,10 @@ -+static inline struct pthread *__pthread_self() -+{ -+ struct pthread *self; -+ __asm__ __volatile__ ("mov %%fs:0,%0" : "=r" (self) ); -+ return self; -+} -+ -+#define TP_ADJ(p) (p) -+ -+#define CANCEL_REG_IP 16 -diff -Nur musl-0.9.15/arch/x32/reloc.h musl-git/arch/x32/reloc.h ---- musl-0.9.15/arch/x32/reloc.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/reloc.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,46 @@ -+#include <stdint.h> -+#include <string.h> -+#include <elf.h> -+ -+#define LDSO_ARCH "x32" -+ -+#define IS_COPY(x) ((x)==R_X86_64_COPY) -+#define IS_PLT(x) ((x)==R_X86_64_JUMP_SLOT) -+ -+static inline void do_single_reloc( -+ struct dso *self, unsigned char *base_addr, -+ size_t *reloc_addr, int type, size_t addend, -+ Sym *sym, size_t sym_size, -+ struct symdef def, size_t sym_val) -+{ -+ switch(type) { -+ case R_X86_64_GLOB_DAT: -+ case R_X86_64_JUMP_SLOT: -+ case R_X86_64_64: -+ *reloc_addr = sym_val + addend; -+ break; -+ case R_X86_64_32: -+ *(uint32_t *)reloc_addr = sym_val + addend; -+ break; -+ case R_X86_64_PC32: -+ *reloc_addr = sym_val + addend - (size_t)reloc_addr + (size_t)base_addr; -+ break; -+ case R_X86_64_RELATIVE: -+ *reloc_addr = (size_t)base_addr + addend; -+ break; -+ case R_X86_64_COPY: -+ memcpy(reloc_addr, (void *)sym_val, sym_size); -+ break; -+ case R_X86_64_DTPMOD64: -+ *reloc_addr = def.dso ? def.dso->tls_id : self->tls_id; -+ break; -+ case R_X86_64_DTPOFF64: -+ *reloc_addr = def.sym->st_value + addend; -+ break; -+ case R_X86_64_TPOFF64: -+ *reloc_addr = (def.sym -+ ? def.sym->st_value - def.dso->tls_offset -+ : 0 - self->tls_offset) + addend; -+ break; -+ } -+} -diff -Nur musl-0.9.15/arch/x32/src/syscall_cp_fixup.c musl-git/arch/x32/src/syscall_cp_fixup.c ---- musl-0.9.15/arch/x32/src/syscall_cp_fixup.c 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/src/syscall_cp_fixup.c 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,31 @@ -+#include <sys/syscall.h> -+long __syscall_cp_internal(volatile void*, long long, long long, long long, long long, -+ long long, long long, long long); -+ -+struct __timespec { long long tv_sec; long tv_nsec; }; -+struct __timespec_kernel { long long tv_sec; long long tv_nsec; }; -+#define __tsc(X) ((struct __timespec*)(unsigned long)(X)) -+#define __fixup(X) do { if(X) X = (unsigned long) (&(struct __timespec_kernel) \ -+ { .tv_sec = __tsc(X)->tv_sec, .tv_nsec = __tsc(X)->tv_nsec}); } while(0) -+ -+long __syscall_cp_asm (volatile void * foo, long long n, long long a1, long long a2, long long a3, -+ long long a4, long long a5, long long a6) { -+ switch (n) { -+ case SYS_mq_timedsend: case SYS_mq_timedreceive: case SYS_pselect6: -+ __fixup(a5); -+ break; -+ case SYS_futex: -+ if((a2 & (~128 /* FUTEX_PRIVATE_FLAG */)) == 0 /* FUTEX_WAIT */) -+ __fixup(a4); -+ break; -+ case SYS_clock_nanosleep: -+ case SYS_rt_sigtimedwait: case SYS_ppoll: -+ __fixup(a3); -+ break; -+ case SYS_nanosleep: -+ __fixup(a1); -+ break; -+ } -+ return __syscall_cp_internal(foo, n, a1, a2, a3, a4, a5, a6); -+} -+ -diff -Nur musl-0.9.15/arch/x32/src/sysinfo.c musl-git/arch/x32/src/sysinfo.c ---- musl-0.9.15/arch/x32/src/sysinfo.c 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/src/sysinfo.c 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,47 @@ -+#include <sys/sysinfo.h> -+#include "syscall.h" -+ -+#define klong long long -+#define kulong unsigned long long -+ -+struct kernel_sysinfo { -+ klong uptime; -+ kulong loads[3]; -+ kulong totalram; -+ kulong freeram; -+ kulong sharedram; -+ kulong bufferram; -+ kulong totalswap; -+ kulong freeswap; -+ short procs; -+ short pad; -+ kulong totalhigh; -+ kulong freehigh; -+ unsigned mem_unit; -+}; -+ -+int __x32_sysinfo(struct sysinfo *info) -+{ -+ struct kernel_sysinfo tmp; -+ int ret = syscall(SYS_sysinfo, &tmp); -+ if(ret == -1) return ret; -+ info->uptime = tmp.uptime; -+ info->loads[0] = tmp.loads[0]; -+ info->loads[1] = tmp.loads[1]; -+ info->loads[2] = tmp.loads[2]; -+ kulong shifts; -+ kulong max = tmp.totalram | tmp.totalswap; -+ __asm__("bsr %1,%0" : "=r"(shifts) : "r"(max)); -+ shifts = shifts >= 32 ? shifts - 31 : 0; -+ info->totalram = tmp.totalram >> shifts; -+ info->freeram = tmp.freeram >> shifts; -+ info->sharedram = tmp.sharedram >> shifts; -+ info->bufferram = tmp.bufferram >> shifts; -+ info->totalswap = tmp.totalswap >> shifts; -+ info->freeswap = tmp.freeswap >> shifts; -+ info->procs = tmp.procs ; -+ info->totalhigh = tmp.totalhigh >> shifts; -+ info->freehigh = tmp.freehigh >> shifts; -+ info->mem_unit = (tmp.mem_unit ? tmp.mem_unit : 1) << shifts; -+ return ret; -+} -diff -Nur musl-0.9.15/arch/x32/syscall_arch.h musl-git/arch/x32/syscall_arch.h ---- musl-0.9.15/arch/x32/syscall_arch.h 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/arch/x32/syscall_arch.h 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,117 @@ -+#define __SYSCALL_LL_E(x) (x) -+#define __SYSCALL_LL_O(x) (x) -+ -+#define __scc(X) sizeof(1?(X):0ULL) < 8 ? (unsigned long) (X) : (long long) (X) -+typedef long long syscall_arg_t; -+struct __timespec { long long tv_sec; long tv_nsec; }; -+struct __timespec_kernel { long long tv_sec; long long tv_nsec; }; -+#define __tsc(X) ((struct __timespec*)(unsigned long)(X)) -+#define __fixup(X) do { if(X) X = (unsigned long) (&(struct __timespec_kernel) \ -+ { .tv_sec = __tsc(X)->tv_sec, .tv_nsec = __tsc(X)->tv_nsec}); } while(0) -+#define __fixup_case_2 \ -+ case SYS_nanosleep: \ -+ __fixup(a1); break; \ -+ case SYS_clock_settime: \ -+ __fixup(a2); break; -+#define __fixup_case_3 \ -+ case SYS_clock_nanosleep: case SYS_rt_sigtimedwait: case SYS_ppoll: \ -+ __fixup(a3); break; \ -+ case SYS_utimensat: \ -+ if(a3) a3 = (unsigned long) ((struct __timespec_kernel[2]) { \ -+ [0] = {.tv_sec = __tsc(a3)[0].tv_sec, .tv_nsec = __tsc(a3)[0].tv_nsec}, \ -+ [1] = {.tv_sec = __tsc(a3)[1].tv_sec, .tv_nsec = __tsc(a3)[1].tv_nsec}, \ -+ }); break; -+#define __fixup_case_4 \ -+ case SYS_futex: \ -+ if((a2 & (~128 /* FUTEX_PRIVATE_FLAG */)) == 0 /* FUTEX_WAIT */) __fixup(a4); break; -+#define __fixup_case_5 \ -+ case SYS_mq_timedsend: case SYS_mq_timedreceive: case SYS_pselect6: \ -+ __fixup(a5); break; -+ -+static __inline long __syscall0(long long n) -+{ -+ unsigned long ret; -+ __asm__ __volatile__ ("syscall" : "=a"(ret) : "a"(n) : "rcx", "r11", "memory"); -+ return ret; -+} -+ -+static __inline long __syscall1(long long n, long long a1) -+{ -+ unsigned long ret; -+ __asm__ __volatile__ ("syscall" : "=a"(ret) : "a"(n), "D"(a1) : "rcx", "r11", "memory"); -+ return ret; -+} -+ -+static __inline long __syscall2(long long n, long long a1, long long a2) -+{ -+ unsigned long ret; -+ struct __timespec *ts2 = 0; -+ switch (n) { -+ __fixup_case_2; -+ } -+ __asm__ __volatile__ ("syscall" : "=a"(ret) : "a"(n), "D"(a1), "S"(a2) -+ : "rcx", "r11", "memory"); -+ return ret; -+} -+ -+static __inline long __syscall3(long long n, long long a1, long long a2, long long a3) -+{ -+ unsigned long ret; -+ switch (n) { -+ __fixup_case_2; -+ __fixup_case_3; -+ } -+ __asm__ __volatile__ ("syscall" : "=a"(ret) : "a"(n), "D"(a1), "S"(a2), -+ "d"(a3) : "rcx", "r11", "memory"); -+ return ret; -+} -+ -+static __inline long __syscall4(long long n, long long a1, long long a2, long long a3, -+ long long a4_) -+{ -+ unsigned long ret; -+ register long long a4 __asm__("r10") = a4_; -+ switch (n) { -+ __fixup_case_2; -+ __fixup_case_3; -+ __fixup_case_4; -+ } -+ __asm__ __volatile__ ("syscall" : "=a"(ret) : "a"(n), "D"(a1), "S"(a2), -+ "d"(a3), "r"(a4): "rcx", "r11", "memory"); -+ return ret; -+} -+ -+static __inline long __syscall5(long long n, long long a1, long long a2, long long a3, -+ long long a4_, long long a5_) -+{ -+ unsigned long ret; -+ register long long a4 __asm__("r10") = a4_; -+ register long long a5 __asm__("r8") = a5_; -+ switch (n) { -+ __fixup_case_2; -+ __fixup_case_3; -+ __fixup_case_4; -+ __fixup_case_5; -+ } -+ __asm__ __volatile__ ("syscall" : "=a"(ret) : "a"(n), "D"(a1), "S"(a2), -+ "d"(a3), "r"(a4), "r"(a5) : "rcx", "r11", "memory"); -+ return ret; -+} -+ -+static __inline long __syscall6(long long n, long long a1, long long a2, long long a3, -+ long long a4_, long long a5_, long long a6_) -+{ -+ unsigned long ret; -+ register long long a4 __asm__("r10") = a4_; -+ register long long a5 __asm__("r8") = a5_; -+ register long long a6 __asm__("r9") = a6_; -+ switch (n) { -+ __fixup_case_2; -+ __fixup_case_3; -+ __fixup_case_4; -+ __fixup_case_5; -+ } -+ __asm__ __volatile__ ("syscall" : "=a"(ret) : "a"(n), "D"(a1), "S"(a2), -+ "d"(a3), "r"(a4), "r"(a5), "r"(a6) : "rcx", "r11", "memory"); -+ return ret; -+} -diff -Nur musl-0.9.15/arch/x86_64/atomic.h musl-git/arch/x86_64/atomic.h ---- musl-0.9.15/arch/x86_64/atomic.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/x86_64/atomic.h 2014-03-10 16:52:06.000000000 +0100 -@@ -5,38 +5,36 @@ - - static inline int a_ctz_64(uint64_t x) - { -- long r; -- __asm__( "bsf %1,%0" : "=r"(r) : "r"(x) ); -- return r; -+ __asm__( "bsf %1,%0" : "=r"(x) : "r"(x) ); -+ return x; - } - - static inline int a_ctz_l(unsigned long x) - { -- long r; -- __asm__( "bsf %1,%0" : "=r"(r) : "r"(x) ); -- return r; -+ __asm__( "bsf %1,%0" : "=r"(x) : "r"(x) ); -+ return x; - } - - static inline void a_and_64(volatile uint64_t *p, uint64_t v) - { -- __asm__( "lock ; andq %1, %0" -- : "=m"(*(long *)p) : "r"(v) : "memory" ); -+ __asm__( "lock ; and %1, %0" -+ : "=m"(*p) : "r"(v) : "memory" ); - } - - static inline void a_or_64(volatile uint64_t *p, uint64_t v) - { -- __asm__( "lock ; orq %1, %0" -- : "=m"(*(long *)p) : "r"(v) : "memory" ); -+ __asm__( "lock ; or %1, %0" -+ : "=m"(*p) : "r"(v) : "memory" ); - } - - static inline void a_store_l(volatile void *p, long x) - { -- __asm__( "movq %1, %0" : "=m"(*(long *)p) : "r"(x) : "memory" ); -+ __asm__( "mov %1, %0" : "=m"(*(long *)p) : "r"(x) : "memory" ); - } - - static inline void a_or_l(volatile void *p, long v) - { -- __asm__( "lock ; orq %1, %0" -+ __asm__( "lock ; or %1, %0" - : "=m"(*(long *)p) : "r"(v) : "memory" ); - } - -@@ -56,7 +54,7 @@ - - static inline int a_cas(volatile int *p, int t, int s) - { -- __asm__( "lock ; cmpxchgl %3, %1" -+ __asm__( "lock ; cmpxchg %3, %1" - : "=a"(t), "=m"(*p) : "a"(t), "r"(s) : "memory" ); - return t; - } -@@ -74,13 +72,13 @@ - - static inline void a_or(volatile void *p, int v) - { -- __asm__( "lock ; orl %1, %0" -+ __asm__( "lock ; or %1, %0" - : "=m"(*(int *)p) : "r"(v) : "memory" ); - } - - static inline void a_and(volatile void *p, int v) - { -- __asm__( "lock ; andl %1, %0" -+ __asm__( "lock ; and %1, %0" - : "=m"(*(int *)p) : "r"(v) : "memory" ); - } - -@@ -110,7 +108,7 @@ - - static inline void a_store(volatile int *p, int x) - { -- __asm__( "movl %1, %0" : "=m"(*p) : "r"(x) : "memory" ); -+ __asm__( "mov %1, %0" : "=m"(*p) : "r"(x) : "memory" ); - } - - static inline void a_spin() -diff -Nur musl-0.9.15/arch/x86_64/bits/shm.h musl-git/arch/x86_64/bits/shm.h ---- musl-0.9.15/arch/x86_64/bits/shm.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/x86_64/bits/shm.h 2014-03-10 16:52:06.000000000 +0100 -@@ -13,3 +13,14 @@ - unsigned long __pad1; - unsigned long __pad2; - }; -+ -+struct shminfo { -+ unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4]; -+}; -+ -+struct shm_info { -+ int __used_ids; -+ unsigned long shm_tot, shm_rss, shm_swp; -+ unsigned long __swap_attempts, __swap_successes; -+}; -+ -diff -Nur musl-0.9.15/arch/x86_64/bits/stat.h musl-git/arch/x86_64/bits/stat.h ---- musl-0.9.15/arch/x86_64/bits/stat.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/x86_64/bits/stat.h 2014-03-10 16:52:06.000000000 +0100 -@@ -2,7 +2,7 @@ - * by the corresponding correctly-sized userspace types. */ - - struct stat { -- unsigned long st_dev; -+ dev_t st_dev; - ino_t st_ino; - nlink_t st_nlink; - -diff -Nur musl-0.9.15/arch/x86_64/bits/termios.h musl-git/arch/x86_64/bits/termios.h ---- musl-0.9.15/arch/x86_64/bits/termios.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/x86_64/bits/termios.h 2014-03-10 16:52:06.000000000 +0100 -@@ -42,6 +42,7 @@ - #define IXANY 0004000 - #define IXOFF 0010000 - #define IMAXBEL 0020000 -+#define IUTF8 0040000 - - #define OPOST 0000001 - #define OLCUC 0000002 -@@ -75,9 +76,6 @@ - #define VT0 0000000 - #define VT1 0040000 - --/* ?? */ --#define XTABS 0014000 -- - #define B0 0000000 - #define B50 0000001 - #define B75 0000002 -@@ -125,8 +123,6 @@ - #define HUPCL 0002000 - #define CLOCAL 0004000 - --#define CRTSCTS 020000000000 -- - #define ISIG 0000001 - #define ICANON 0000002 - #define ECHO 0000010 -@@ -137,14 +133,11 @@ - #define TOSTOP 0000400 - #define IEXTEN 0100000 - --/* Extensions? */ --#define CBAUDEX 0010000 - #define ECHOCTL 0001000 - #define ECHOPRT 0002000 - #define ECHOKE 0004000 - #define FLUSHO 0010000 - #define PENDIN 0040000 --#define EXTPROC 0200000 - - #define TCOOFF 0 - #define TCOON 1 -@@ -158,3 +151,10 @@ - #define TCSANOW 0 - #define TCSADRAIN 1 - #define TCSAFLUSH 2 -+ -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+#define CBAUDEX 0010000 -+#define CRTSCTS 020000000000 -+#define EXTPROC 0200000 -+#define XTABS 0014000 -+#endif -diff -Nur musl-0.9.15/arch/x86_64/pthread_arch.h musl-git/arch/x86_64/pthread_arch.h ---- musl-0.9.15/arch/x86_64/pthread_arch.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/arch/x86_64/pthread_arch.h 2014-03-10 16:52:06.000000000 +0100 -@@ -1,7 +1,7 @@ - static inline struct pthread *__pthread_self() - { - struct pthread *self; -- __asm__ __volatile__ ("movq %%fs:0,%0" : "=r" (self) ); -+ __asm__ __volatile__ ("mov %%fs:0,%0" : "=r" (self) ); - return self; - } - -diff -Nur musl-0.9.15/configure musl-git/configure ---- musl-0.9.15/configure 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/configure 2014-03-10 16:52:06.000000000 +0100 -@@ -222,12 +222,16 @@ - # Convert to just ARCH - # - case "$target" in -+# Catch these early to simplify matching for 32-bit archs -+mips64*|powerpc64*) fail "$0: unsupported target \"$target\"" ;; - arm*) ARCH=arm ;; - i?86*) ARCH=i386 ;; -+x86_64-x32*|x32*) ARCH=x32 ;; - x86_64*) ARCH=x86_64 ;; --mips-*|mipsel-*) ARCH=mips ;; --microblaze-*) ARCH=microblaze ;; --powerpc-*) ARCH=powerpc ;; -+mips*) ARCH=mips ;; -+microblaze*) ARCH=microblaze ;; -+powerpc*) ARCH=powerpc ;; -+sh[1-9bel-]*|sh|superh*) ARCH=sh ;; - unknown) fail "$0: unable to detect target arch; try $0 --target=..." ;; - *) fail "$0: unknown or unsupported target \"$target\"" ;; - esac -@@ -381,6 +385,7 @@ - tryflag CFLAGS_AUTO -Wno-unused-value - tryflag CFLAGS_AUTO -Wno-unused-but-set-variable - tryflag CFLAGS_AUTO -Wno-unknown-pragmas -+tryflag CFLAGS_AUTO -Wno-pointer-to-int-cast - fi - - # Some patched GCC builds have these defaults messed up... -@@ -410,12 +415,33 @@ - trycppif __ARM_PCS_VFP "$t" && SUBARCH=${SUBARCH}hf - fi - --test "$ARCH" = "mips" && trycppif "_MIPSEL || __MIPSEL || __MIPSEL__" "$t" \ --&& SUBARCH=${SUBARCH}el -+if test "$ARCH" = "mips" ; then -+trycppif "_MIPSEL || __MIPSEL || __MIPSEL__" "$t" && SUBARCH=${SUBARCH}el -+trycppif __mips_soft_float "$t" && SUBARCH=${SUBARCH}-sf -+fi - - test "$ARCH" = "microblaze" && trycppif __MICROBLAZEEL__ "$t" \ - && SUBARCH=${SUBARCH}el - -+if test "$ARCH" = "sh" ; then -+trycppif __BIG_ENDIAN__ "$t" && SUBARCH=${SUBARCH}eb -+if trycppif __SH_FPU_ANY__ "$t" ; then -+# Some sh configurations are broken and replace double with float -+# rather than using softfloat when the fpu is present but only -+# supports single precision. Reject them. -+printf "checking whether compiler's double type is IEEE double... " -+echo 'typedef char dblcheck[(int)sizeof(double)-5];' > "$tmpc" -+if $CC $CFLAGS_C99FSE $CPPFLAGS $CFLAGS -c -o /dev/null "$tmpc" >/dev/null 2>&1 ; then -+printf "yes\n" -+else -+printf "no\n" -+fail "$0: error: compiler's floating point configuration is unsupported" -+fi -+else -+SUBARCH=${SUBARCH}-nofpu -+fi -+fi -+ - test "$SUBARCH" \ - && printf "configured for %s variant: %s\n" "$ARCH" "$ARCH$SUBARCH" - -diff -Nur musl-0.9.15/COPYRIGHT musl-git/COPYRIGHT ---- musl-0.9.15/COPYRIGHT 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/COPYRIGHT 2014-03-10 16:52:06.000000000 +0100 -@@ -1,6 +1,6 @@ - musl as a whole is licensed under the following standard MIT license: - --Copyright © 2005-2013 Rich Felker -+Copyright © 2005-2014 Rich Felker - - Permission is hereby granted, free of charge, to any person obtaining - a copy of this software and associated documentation files (the -@@ -79,7 +79,7 @@ - from Bionic libc, used on Android. - - All other files which have no copyright comments are original works --Copyright © 2005-2013 Rich Felker, the main author of this library. -+Copyright © 2005-2014 Rich Felker, the main author of this library. - The decision to exclude such comments is intentional, as it should be - possible to carry around the complete source code on tiny storage - media. All public header files (include/* and arch/*/bits/*) should be -diff -Nur musl-0.9.15/crt/superh/crti.s musl-git/crt/superh/crti.s ---- musl-0.9.15/crt/superh/crti.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/crt/superh/crti.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,13 @@ -+.section .init -+.global _init -+.type _init, @function -+_init: -+ sts.l pr, @-r15 -+ nop -+ -+.section .fini -+.global _fini -+.type _fini, @function -+_fini: -+ sts.l pr, @-r15 -+ nop -diff -Nur musl-0.9.15/crt/superh/crtn.s musl-git/crt/superh/crtn.s ---- musl-0.9.15/crt/superh/crtn.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/crt/superh/crtn.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,9 @@ -+.section .init -+ lds.l @r15+, pr -+ rts -+ nop -+ -+.section .fini -+ lds.l @r15+, pr -+ rts -+ nop -diff -Nur musl-0.9.15/crt/x32/crti.s musl-git/crt/x32/crti.s ---- musl-0.9.15/crt/x32/crti.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/crt/x32/crti.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,9 @@ -+.section .init -+.global _init -+_init: -+ push %rax -+ -+.section .fini -+.global _fini -+_fini: -+ push %rax -diff -Nur musl-0.9.15/crt/x32/crtn.s musl-git/crt/x32/crtn.s ---- musl-0.9.15/crt/x32/crtn.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/crt/x32/crtn.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,7 @@ -+.section .init -+ pop %rax -+ ret -+ -+.section .fini -+ pop %rax -+ ret -diff -Nur musl-0.9.15/.gitignore musl-git/.gitignore ---- musl-0.9.15/.gitignore 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/.gitignore 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,11 @@ -+*.o -+*.lo -+*.a -+*.so -+*.so.1 -+arch/*/bits/alltypes.h -+config.mak -+include/bits -+tools/musl-gcc -+lib/musl-gcc.specs -+src/internal/version.h -diff -Nur musl-0.9.15/include/arpa/inet.h musl-git/include/arpa/inet.h ---- musl-0.9.15/include/arpa/inet.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/arpa/inet.h 2014-03-10 16:52:06.000000000 +0100 -@@ -20,7 +20,7 @@ - const char *inet_ntop (int, const void *__restrict, char *__restrict, socklen_t); - - int inet_aton (const char *, struct in_addr *); --struct in_addr inet_makeaddr(int, int); -+struct in_addr inet_makeaddr(in_addr_t, in_addr_t); - in_addr_t inet_lnaof(struct in_addr); - in_addr_t inet_netof(struct in_addr); - -diff -Nur musl-0.9.15/include/dlfcn.h musl-git/include/dlfcn.h ---- musl-0.9.15/include/dlfcn.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/dlfcn.h 2014-03-10 16:52:06.000000000 +0100 -@@ -31,7 +31,7 @@ - const char *dli_sname; - void *dli_saddr; - } Dl_info; --int dladdr(void *, Dl_info *); -+int dladdr(const void *, Dl_info *); - int dlinfo(void *, int, void *); - #endif - -diff -Nur musl-0.9.15/include/elf.h musl-git/include/elf.h ---- musl-0.9.15/include/elf.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/elf.h 2014-03-10 16:52:06.000000000 +0100 -@@ -1153,6 +1153,7 @@ - #define EF_MIPS_64BIT_WHIRL 16 - #define EF_MIPS_ABI2 32 - #define EF_MIPS_ABI_ON32 64 -+#define EF_MIPS_NAN2008 1024 - #define EF_MIPS_ARCH 0xf0000000 - - -@@ -2092,6 +2093,117 @@ - #define R_AARCH64_NONE 0 - #define R_AARCH64_ABS64 257 - #define R_AARCH64_ABS32 258 -+#define R_AARCH64_ABS16 259 -+#define R_AARCH64_PREL64 260 -+#define R_AARCH64_PREL32 261 -+#define R_AARCH64_PREL16 262 -+#define R_AARCH64_MOVW_UABS_G0 263 -+#define R_AARCH64_MOVW_UABS_G0_NC 264 -+#define R_AARCH64_MOVW_UABS_G1 265 -+#define R_AARCH64_MOVW_UABS_G1_NC 266 -+#define R_AARCH64_MOVW_UABS_G2 267 -+#define R_AARCH64_MOVW_UABS_G2_NC 268 -+#define R_AARCH64_MOVW_UABS_G3 269 -+#define R_AARCH64_MOVW_SABS_G0 270 -+#define R_AARCH64_MOVW_SABS_G1 271 -+#define R_AARCH64_MOVW_SABS_G2 272 -+#define R_AARCH64_LD_PREL_LO19 273 -+#define R_AARCH64_ADR_PREL_LO21 274 -+#define R_AARCH64_ADR_PREL_PG_HI21 275 -+#define R_AARCH64_ADR_PREL_PG_HI21_NC 276 -+#define R_AARCH64_ADD_ABS_LO12_NC 277 -+#define R_AARCH64_LDST8_ABS_LO12_NC 278 -+#define R_AARCH64_TSTBR14 279 -+#define R_AARCH64_CONDBR19 280 -+#define R_AARCH64_JUMP26 282 -+#define R_AARCH64_CALL26 283 -+#define R_AARCH64_LDST16_ABS_LO12_NC 284 -+#define R_AARCH64_LDST32_ABS_LO12_NC 285 -+#define R_AARCH64_LDST64_ABS_LO12_NC 286 -+#define R_AARCH64_MOVW_PREL_G0 287 -+#define R_AARCH64_MOVW_PREL_G0_NC 288 -+#define R_AARCH64_MOVW_PREL_G1 289 -+#define R_AARCH64_MOVW_PREL_G1_NC 290 -+#define R_AARCH64_MOVW_PREL_G2 291 -+#define R_AARCH64_MOVW_PREL_G2_NC 292 -+#define R_AARCH64_MOVW_PREL_G3 293 -+#define R_AARCH64_LDST128_ABS_LO12_NC 299 -+#define R_AARCH64_MOVW_GOTOFF_G0 300 -+#define R_AARCH64_MOVW_GOTOFF_G0_NC 301 -+#define R_AARCH64_MOVW_GOTOFF_G1 302 -+#define R_AARCH64_MOVW_GOTOFF_G1_NC 303 -+#define R_AARCH64_MOVW_GOTOFF_G2 304 -+#define R_AARCH64_MOVW_GOTOFF_G2_NC 305 -+#define R_AARCH64_MOVW_GOTOFF_G3 306 -+#define R_AARCH64_GOTREL64 307 -+#define R_AARCH64_GOTREL32 308 -+#define R_AARCH64_GOT_LD_PREL19 309 -+#define R_AARCH64_LD64_GOTOFF_LO15 310 -+#define R_AARCH64_ADR_GOT_PAGE 311 -+#define R_AARCH64_LD64_GOT_LO12_NC 312 -+#define R_AARCH64_LD64_GOTPAGE_LO15 313 -+#define R_AARCH64_TLSGD_ADR_PREL21 512 -+#define R_AARCH64_TLSGD_ADR_PAGE21 513 -+#define R_AARCH64_TLSGD_ADD_LO12_NC 514 -+#define R_AARCH64_TLSGD_MOVW_G1 515 -+#define R_AARCH64_TLSGD_MOVW_G0_NC 516 -+#define R_AARCH64_TLSLD_ADR_PREL21 517 -+#define R_AARCH64_TLSLD_ADR_PAGE21 518 -+#define R_AARCH64_TLSLD_ADD_LO12_NC 519 -+#define R_AARCH64_TLSLD_MOVW_G1 520 -+#define R_AARCH64_TLSLD_MOVW_G0_NC 521 -+#define R_AARCH64_TLSLD_LD_PREL19 522 -+#define R_AARCH64_TLSLD_MOVW_DTPREL_G2 523 -+#define R_AARCH64_TLSLD_MOVW_DTPREL_G1 524 -+#define R_AARCH64_TLSLD_MOVW_DTPREL_G1_NC 525 -+#define R_AARCH64_TLSLD_MOVW_DTPREL_G0 526 -+#define R_AARCH64_TLSLD_MOVW_DTPREL_G0_NC 527 -+#define R_AARCH64_TLSLD_ADD_DTPREL_HI12 528 -+#define R_AARCH64_TLSLD_ADD_DTPREL_LO12 529 -+#define R_AARCH64_TLSLD_ADD_DTPREL_LO12_NC 530 -+#define R_AARCH64_TLSLD_LDST8_DTPREL_LO12 531 -+#define R_AARCH64_TLSLD_LDST8_DTPREL_LO12_NC 532 -+#define R_AARCH64_TLSLD_LDST16_DTPREL_LO12 533 -+#define R_AARCH64_TLSLD_LDST16_DTPREL_LO12_NC 534 -+#define R_AARCH64_TLSLD_LDST32_DTPREL_LO12 535 -+#define R_AARCH64_TLSLD_LDST32_DTPREL_LO12_NC 536 -+#define R_AARCH64_TLSLD_LDST64_DTPREL_LO12 537 -+#define R_AARCH64_TLSLD_LDST64_DTPREL_LO12_NC 538 -+#define R_AARCH64_TLSIE_MOVW_GOTTPREL_G1 539 -+#define R_AARCH64_TLSIE_MOVW_GOTTPREL_G0_NC 540 -+#define R_AARCH64_TLSIE_ADR_GOTTPREL_PAGE21 541 -+#define R_AARCH64_TLSIE_LD64_GOTTPREL_LO12_NC 542 -+#define R_AARCH64_TLSIE_LD_GOTTPREL_PREL19 543 -+#define R_AARCH64_TLSLE_MOVW_TPREL_G2 544 -+#define R_AARCH64_TLSLE_MOVW_TPREL_G1 545 -+#define R_AARCH64_TLSLE_MOVW_TPREL_G1_NC 546 -+#define R_AARCH64_TLSLE_MOVW_TPREL_G0 547 -+#define R_AARCH64_TLSLE_MOVW_TPREL_G0_NC 548 -+#define R_AARCH64_TLSLE_ADD_TPREL_HI12 549 -+#define R_AARCH64_TLSLE_ADD_TPREL_LO12 550 -+#define R_AARCH64_TLSLE_ADD_TPREL_LO12_NC 551 -+#define R_AARCH64_TLSLE_LDST8_TPREL_LO12 552 -+#define R_AARCH64_TLSLE_LDST8_TPREL_LO12_NC 553 -+#define R_AARCH64_TLSLE_LDST16_TPREL_LO12 554 -+#define R_AARCH64_TLSLE_LDST16_TPREL_LO12_NC 555 -+#define R_AARCH64_TLSLE_LDST32_TPREL_LO12 556 -+#define R_AARCH64_TLSLE_LDST32_TPREL_LO12_NC 557 -+#define R_AARCH64_TLSLE_LDST64_TPREL_LO12 558 -+#define R_AARCH64_TLSLE_LDST64_TPREL_LO12_NC 559 -+#define R_AARCH64_TLSDESC_LD_PREL19 560 -+#define R_AARCH64_TLSDESC_ADR_PREL21 561 -+#define R_AARCH64_TLSDESC_ADR_PAGE21 562 -+#define R_AARCH64_TLSDESC_LD64_LO12 563 -+#define R_AARCH64_TLSDESC_ADD_LO12 564 -+#define R_AARCH64_TLSDESC_OFF_G1 565 -+#define R_AARCH64_TLSDESC_OFF_G0_NC 566 -+#define R_AARCH64_TLSDESC_LDR 567 -+#define R_AARCH64_TLSDESC_ADD 568 -+#define R_AARCH64_TLSDESC_CALL 569 -+#define R_AARCH64_TLSLE_LDST128_TPREL_LO12 570 -+#define R_AARCH64_TLSLE_LDST128_TPREL_LO12_NC 571 -+#define R_AARCH64_TLSLD_LDST128_DTPREL_LO12 572 -+#define R_AARCH64_TLSLD_LDST128_DTPREL_LO12_NC 573 - #define R_AARCH64_COPY 1024 - #define R_AARCH64_GLOB_DAT 1025 - #define R_AARCH64_JUMP_SLOT 1026 -diff -Nur musl-0.9.15/include/fcntl.h musl-git/include/fcntl.h ---- musl-0.9.15/include/fcntl.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/fcntl.h 2014-03-10 16:52:06.000000000 +0100 -@@ -148,6 +148,7 @@ - #define SPLICE_F_MORE 4 - #define SPLICE_F_GIFT 8 - int fallocate(int, int, off_t, off_t); -+#define fallocate64 fallocate - ssize_t readahead(int, off_t, size_t); - int sync_file_range(int, off_t, off_t, unsigned); - ssize_t vmsplice(int, const struct iovec *, size_t, unsigned); -@@ -160,6 +161,7 @@ - #define F_GETLK64 F_GETLK - #define F_SETLK64 F_SETLK - #define F_SETLKW64 F_SETLKW -+#define flock64 flock - #define open64 open - #define openat64 openat - #define creat64 creat -diff -Nur musl-0.9.15/include/math.h musl-git/include/math.h ---- musl-0.9.15/include/math.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/math.h 2014-03-10 16:52:06.000000000 +0100 -@@ -42,12 +42,14 @@ - - static __inline unsigned __FLOAT_BITS(float __f) - { -- union {float __f; unsigned __i;} __u = {__f}; -+ union {float __f; unsigned __i;} __u; -+ __u.__f = __f; - return __u.__i; - } - static __inline unsigned long long __DOUBLE_BITS(double __f) - { -- union {double __f; unsigned long long __i;} __u = {__f}; -+ union {double __f; unsigned long long __i;} __u; -+ __u.__f = __f; - return __u.__i; - } - -diff -Nur musl-0.9.15/include/netdb.h musl-git/include/netdb.h ---- musl-0.9.15/include/netdb.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/netdb.h 2014-03-10 16:52:06.000000000 +0100 -@@ -131,6 +131,7 @@ - #define TRY_AGAIN 2 - #define NO_RECOVERY 3 - #define NO_DATA 4 -+#define NO_ADDRESS NO_DATA - #endif - - #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -diff -Nur musl-0.9.15/include/netinet/if_ether.h musl-git/include/netinet/if_ether.h ---- musl-0.9.15/include/netinet/if_ether.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/netinet/if_ether.h 2014-03-10 16:52:06.000000000 +0100 -@@ -54,6 +54,7 @@ - #define ETH_P_8021AH 0x88E7 - #define ETH_P_MVRP 0x88F5 - #define ETH_P_1588 0x88F7 -+#define ETH_P_PRP 0x88FB - #define ETH_P_FCOE 0x8906 - #define ETH_P_TDLS 0x890D - #define ETH_P_FIP 0x8914 -diff -Nur musl-0.9.15/include/netinet/in.h musl-git/include/netinet/in.h ---- musl-0.9.15/include/netinet/in.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/netinet/in.h 2014-03-10 16:52:06.000000000 +0100 -@@ -149,7 +149,7 @@ - (IN6_IS_ADDR_MULTICAST(a) && ((((uint8_t *) (a))[1] & 0xf) == 0xe)) - - #define __ARE_4_EQUAL(a,b) \ -- (!( 0[a]-0[b] | 1[a]-1[b] | 2[a]-2[b] | 3[a]-3[b] )) -+ (!( (0[a]-0[b]) | (1[a]-1[b]) | (2[a]-2[b]) | (3[a]-3[b]) )) - #define IN6_ARE_ADDR_EQUAL(a,b) \ - __ARE_4_EQUAL((const uint32_t *)(a), (const uint32_t *)(b)) - -@@ -211,27 +211,13 @@ - #define IP_MULTICAST_ALL 49 - #define IP_UNICAST_IF 50 - --#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) --#define MCAST_JOIN_GROUP 42 --#define MCAST_BLOCK_SOURCE 43 --#define MCAST_UNBLOCK_SOURCE 44 --#define MCAST_LEAVE_GROUP 45 --#define MCAST_JOIN_SOURCE_GROUP 46 --#define MCAST_LEAVE_SOURCE_GROUP 47 --#define MCAST_MSFILTER 48 -- --#define MCAST_EXCLUDE 0 --#define MCAST_INCLUDE 1 --#endif -- - #define IP_RECVRETOPTS IP_RETOPTS - - #define IP_PMTUDISC_DONT 0 - #define IP_PMTUDISC_WANT 1 - #define IP_PMTUDISC_DO 2 - #define IP_PMTUDISC_PROBE 3 -- --#define SOL_IP 0 -+#define IP_PMTUDISC_INTERFACE 4 - - #define IP_DEFAULT_MULTICAST_TTL 1 - #define IP_DEFAULT_MULTICAST_LOOP 1 -@@ -243,6 +229,19 @@ - char ip_opts[40]; - }; - -+#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -+ -+#define MCAST_JOIN_GROUP 42 -+#define MCAST_BLOCK_SOURCE 43 -+#define MCAST_UNBLOCK_SOURCE 44 -+#define MCAST_LEAVE_GROUP 45 -+#define MCAST_JOIN_SOURCE_GROUP 46 -+#define MCAST_LEAVE_SOURCE_GROUP 47 -+#define MCAST_MSFILTER 48 -+ -+#define MCAST_EXCLUDE 0 -+#define MCAST_INCLUDE 1 -+ - struct ip_mreq - { - struct in_addr imr_multiaddr; -@@ -273,7 +272,6 @@ - (sizeof(struct ip_msfilter) - sizeof(struct in_addr) \ - + (numsrc) * sizeof(struct in_addr)) - --#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) - struct group_req { - uint32_t gr_interface; - struct sockaddr_storage gr_group; -@@ -295,7 +293,6 @@ - #define GROUP_FILTER_SIZE(numsrc) \ - (sizeof(struct group_filter) - sizeof(struct sockaddr_storage) \ - + (numsrc) * sizeof(struct sockaddr_storage)) --#endif - - struct in_pktinfo - { -@@ -315,6 +312,7 @@ - struct sockaddr_in6 ip6m_addr; - uint32_t ip6m_mtu; - }; -+#endif - - #define IPV6_ADDRFORM 1 - #define IPV6_2292PKTINFO 2 -@@ -324,7 +322,6 @@ - #define IPV6_2292PKTOPTIONS 6 - #define IPV6_CHECKSUM 7 - #define IPV6_2292HOPLIMIT 8 --#define SCM_SRCRT IPV6_RXSRCRT - #define IPV6_NEXTHOP 9 - #define IPV6_AUTHHDR 10 - #define IPV6_UNICAST_HOPS 16 -@@ -363,15 +360,11 @@ - #define IPV6_RXHOPOPTS IPV6_HOPOPTS - #define IPV6_RXDSTOPTS IPV6_DSTOPTS - -- - #define IPV6_PMTUDISC_DONT 0 - #define IPV6_PMTUDISC_WANT 1 - #define IPV6_PMTUDISC_DO 2 - #define IPV6_PMTUDISC_PROBE 3 - --#define SOL_IPV6 41 --#define SOL_ICMPV6 58 -- - #define IPV6_RTHDR_LOOSE 0 - #define IPV6_RTHDR_STRICT 1 - -diff -Nur musl-0.9.15/include/netinet/tcp.h musl-git/include/netinet/tcp.h ---- musl-0.9.15/include/netinet/tcp.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/netinet/tcp.h 2014-03-10 16:52:06.000000000 +0100 -@@ -44,42 +44,80 @@ - #define SOL_TCP 6 - #include <sys/types.h> - #include <sys/socket.h> --#endif -+#include <stdint.h> -+#include <endian.h> -+ -+typedef uint32_t tcp_seq; - -+#define TH_FIN 0x01 -+#define TH_SYN 0x02 -+#define TH_RST 0x04 -+#define TH_PUSH 0x08 -+#define TH_ACK 0x10 -+#define TH_URG 0x20 -+ -+struct tcphdr { - #ifdef _GNU_SOURCE --#include <endian.h> --struct tcphdr --{ -- u_int16_t source; -- u_int16_t dest; -- u_int32_t seq; -- u_int32_t ack_seq; -+#ifdef __GNUC__ -+ __extension__ -+#endif -+ union { struct { -+ -+ uint16_t source; -+ uint16_t dest; -+ uint32_t seq; -+ uint32_t ack_seq; -+#if __BYTE_ORDER == __LITTLE_ENDIAN -+ uint16_t res1:4; -+ uint16_t doff:4; -+ uint16_t fin:1; -+ uint16_t syn:1; -+ uint16_t rst:1; -+ uint16_t psh:1; -+ uint16_t ack:1; -+ uint16_t urg:1; -+ uint16_t res2:2; -+#else -+ uint16_t doff:4; -+ uint16_t res1:4; -+ uint16_t res2:2; -+ uint16_t urg:1; -+ uint16_t ack:1; -+ uint16_t psh:1; -+ uint16_t rst:1; -+ uint16_t syn:1; -+ uint16_t fin:1; -+#endif -+ uint16_t window; -+ uint16_t check; -+ uint16_t urg_ptr; -+ -+ }; struct { -+#endif -+ -+ uint16_t th_sport; -+ uint16_t th_dport; -+ uint32_t th_seq; -+ uint32_t th_ack; - #if __BYTE_ORDER == __LITTLE_ENDIAN -- u_int16_t res1:4; -- u_int16_t doff:4; -- u_int16_t fin:1; -- u_int16_t syn:1; -- u_int16_t rst:1; -- u_int16_t psh:1; -- u_int16_t ack:1; -- u_int16_t urg:1; -- u_int16_t res2:2; -+ uint8_t th_x2:4; -+ uint8_t th_off:4; - #else -- u_int16_t doff:4; -- u_int16_t res1:4; -- u_int16_t res2:2; -- u_int16_t urg:1; -- u_int16_t ack:1; -- u_int16_t psh:1; -- u_int16_t rst:1; -- u_int16_t syn:1; -- u_int16_t fin:1; --#endif -- u_int16_t window; -- u_int16_t check; -- u_int16_t urg_ptr; -+ uint8_t th_off:4; -+ uint8_t th_x2:4; -+#endif -+ uint8_t th_flags; -+ uint16_t th_win; -+ uint16_t th_sum; -+ uint16_t th_urp; -+ -+#ifdef _GNU_SOURCE -+ }; }; -+#endif - }; -+#endif - -+#ifdef _GNU_SOURCE - #define TCPI_OPT_TIMESTAMPS 1 - #define TCPI_OPT_SACK 2 - #define TCPI_OPT_WSCALE 4 -@@ -93,37 +131,37 @@ - - struct tcp_info - { -- u_int8_t tcpi_state; -- u_int8_t tcpi_ca_state; -- u_int8_t tcpi_retransmits; -- u_int8_t tcpi_probes; -- u_int8_t tcpi_backoff; -- u_int8_t tcpi_options; -- u_int8_t tcpi_snd_wscale : 4, tcpi_rcv_wscale : 4; -- u_int32_t tcpi_rto; -- u_int32_t tcpi_ato; -- u_int32_t tcpi_snd_mss; -- u_int32_t tcpi_rcv_mss; -- u_int32_t tcpi_unacked; -- u_int32_t tcpi_sacked; -- u_int32_t tcpi_lost; -- u_int32_t tcpi_retrans; -- u_int32_t tcpi_fackets; -- u_int32_t tcpi_last_data_sent; -- u_int32_t tcpi_last_ack_sent; -- u_int32_t tcpi_last_data_recv; -- u_int32_t tcpi_last_ack_recv; -- u_int32_t tcpi_pmtu; -- u_int32_t tcpi_rcv_ssthresh; -- u_int32_t tcpi_rtt; -- u_int32_t tcpi_rttvar; -- u_int32_t tcpi_snd_ssthresh; -- u_int32_t tcpi_snd_cwnd; -- u_int32_t tcpi_advmss; -- u_int32_t tcpi_reordering; -- u_int32_t tcpi_rcv_rtt; -- u_int32_t tcpi_rcv_space; -- u_int32_t tcpi_total_retrans; -+ uint8_t tcpi_state; -+ uint8_t tcpi_ca_state; -+ uint8_t tcpi_retransmits; -+ uint8_t tcpi_probes; -+ uint8_t tcpi_backoff; -+ uint8_t tcpi_options; -+ uint8_t tcpi_snd_wscale : 4, tcpi_rcv_wscale : 4; -+ uint32_t tcpi_rto; -+ uint32_t tcpi_ato; -+ uint32_t tcpi_snd_mss; -+ uint32_t tcpi_rcv_mss; -+ uint32_t tcpi_unacked; -+ uint32_t tcpi_sacked; -+ uint32_t tcpi_lost; -+ uint32_t tcpi_retrans; -+ uint32_t tcpi_fackets; -+ uint32_t tcpi_last_data_sent; -+ uint32_t tcpi_last_ack_sent; -+ uint32_t tcpi_last_data_recv; -+ uint32_t tcpi_last_ack_recv; -+ uint32_t tcpi_pmtu; -+ uint32_t tcpi_rcv_ssthresh; -+ uint32_t tcpi_rtt; -+ uint32_t tcpi_rttvar; -+ uint32_t tcpi_snd_ssthresh; -+ uint32_t tcpi_snd_cwnd; -+ uint32_t tcpi_advmss; -+ uint32_t tcpi_reordering; -+ uint32_t tcpi_rcv_rtt; -+ uint32_t tcpi_rcv_space; -+ uint32_t tcpi_total_retrans; - }; - - #define TCP_MD5SIG_MAXKEYLEN 80 -@@ -131,10 +169,10 @@ - struct tcp_md5sig - { - struct sockaddr_storage tcpm_addr; -- u_int16_t __tcpm_pad1; -- u_int16_t tcpm_keylen; -- u_int32_t __tcpm_pad2; -- u_int8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN]; -+ uint16_t __tcpm_pad1; -+ uint16_t tcpm_keylen; -+ uint32_t __tcpm_pad2; -+ uint8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN]; - }; - - #endif -diff -Nur musl-0.9.15/include/netinet/udp.h musl-git/include/netinet/udp.h ---- musl-0.9.15/include/netinet/udp.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/netinet/udp.h 2014-03-10 16:52:06.000000000 +0100 -@@ -5,19 +5,22 @@ - extern "C" { - #endif - -+#include <features.h> - #include <stdint.h> - --struct udphdr { -- uint16_t source; -- uint16_t dest; -- uint16_t len; -- uint16_t check; --}; -- -+#ifdef _GNU_SOURCE - #define uh_sport source - #define uh_dport dest - #define uh_ulen len - #define uh_sum check -+#endif -+ -+struct udphdr { -+ uint16_t uh_sport; -+ uint16_t uh_dport; -+ uint16_t uh_ulen; -+ uint16_t uh_sum; -+}; - - #define UDP_CORK 1 - #define UDP_ENCAP 100 -diff -Nur musl-0.9.15/include/sched.h musl-git/include/sched.h ---- musl-0.9.15/include/sched.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/sched.h 2014-03-10 16:52:06.000000000 +0100 -@@ -78,7 +78,7 @@ - int sched_getaffinity(pid_t, size_t, cpu_set_t *); - int sched_setaffinity(pid_t, size_t, const cpu_set_t *); - --#define __CPU_op_S(i, size, set, op) ( (i)/8 >= (size) ? 0 : \ -+#define __CPU_op_S(i, size, set, op) ( (i)/8U >= (size) ? 0 : \ - ((set)->__bits[(i)/8/sizeof(long)] op (1UL<<((i)%(8*sizeof(long))))) ) - - #define CPU_SET_S(i, size, set) __CPU_op_S(i, size, set, |=) -diff -Nur musl-0.9.15/include/signal.h musl-git/include/signal.h ---- musl-0.9.15/include/signal.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/signal.h 2014-03-10 16:52:06.000000000 +0100 -@@ -227,8 +227,8 @@ - typedef void (*sighandler_t)(int); - void (*bsd_signal(int, void (*)(int)))(int); - int sigisemptyset(const sigset_t *); --int sigorset (sigset_t *, sigset_t *, sigset_t *); --int sigandset(sigset_t *, sigset_t *, sigset_t *); -+int sigorset (sigset_t *, const sigset_t *, const sigset_t *); -+int sigandset(sigset_t *, const sigset_t *, const sigset_t *); - - #define SA_NOMASK SA_NODEFER - #define SA_ONESHOT SA_RESETHAND -diff -Nur musl-0.9.15/include/stdlib.h musl-git/include/stdlib.h ---- musl-0.9.15/include/stdlib.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/stdlib.h 2014-03-10 16:52:06.000000000 +0100 -@@ -93,7 +93,7 @@ - #define WSTOPSIG(s) WEXITSTATUS(s) - #define WIFEXITED(s) (!WTERMSIG(s)) - #define WIFSTOPPED(s) ((short)((((s)&0xffff)*0x10001)>>8) > 0x7f00) --#define WIFSIGNALED(s) (((s)&0xffff)-1 < 0xffu) -+#define WIFSIGNALED(s) (((s)&0xffff)-1U < 0xffu) - - int posix_memalign (void **, size_t, size_t); - int setenv (const char *, const char *, int); -diff -Nur musl-0.9.15/include/sys/inotify.h musl-git/include/sys/inotify.h ---- musl-0.9.15/include/sys/inotify.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/sys/inotify.h 2014-03-10 16:52:06.000000000 +0100 -@@ -48,7 +48,7 @@ - int inotify_init(void); - int inotify_init1(int); - int inotify_add_watch(int, const char *, uint32_t); --int inotify_rm_watch(int, uint32_t); -+int inotify_rm_watch(int, int); - - #ifdef __cplusplus - } -diff -Nur musl-0.9.15/include/sys/mman.h musl-git/include/sys/mman.h ---- musl-0.9.15/include/sys/mman.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/sys/mman.h 2014-03-10 16:52:06.000000000 +0100 -@@ -33,7 +33,7 @@ - - #ifdef _GNU_SOURCE - void *mremap (void *, size_t, size_t, int, ...); --int remap_file_pages (void *, size_t, int, ssize_t, int); -+int remap_file_pages (void *, size_t, int, size_t, int); - #endif - - #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) -diff -Nur musl-0.9.15/include/sys/procfs.h musl-git/include/sys/procfs.h ---- musl-0.9.15/include/sys/procfs.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/sys/procfs.h 2014-03-10 16:52:06.000000000 +0100 -@@ -40,7 +40,7 @@ - char pr_zomb; - char pr_nice; - unsigned long int pr_flag; --#if __WORDSIZE == 32 -+#if UINTPTR_MAX == 0xffffffff - unsigned short int pr_uid; - unsigned short int pr_gid; - #else -diff -Nur musl-0.9.15/include/sys/sem.h musl-git/include/sys/sem.h ---- musl-0.9.15/include/sys/sem.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/sys/sem.h 2014-03-10 16:52:06.000000000 +0100 -@@ -29,19 +29,19 @@ - - struct semid_ds { - struct ipc_perm sem_perm; -- long sem_otime; -- unsigned long __unused1; -- long sem_ctime; -- unsigned long __unused2; -+ time_t sem_otime; -+ time_t __unused1; -+ time_t sem_ctime; -+ time_t __unused2; - #if __BYTE_ORDER == __LITTLE_ENDIAN - unsigned short sem_nsems; -- char __sem_nsems_pad[sizeof(long)-sizeof(short)]; -+ char __sem_nsems_pad[sizeof(time_t)-sizeof(short)]; - #else -- char __sem_nsems_pad[sizeof(long)-sizeof(short)]; -+ char __sem_nsems_pad[sizeof(time_t)-sizeof(short)]; - unsigned short sem_nsems; - #endif -- unsigned long __unused3; -- unsigned long __unused4; -+ time_t __unused3; -+ time_t __unused4; - }; - - #define _SEM_SEMUN_UNDEFINED 1 -diff -Nur musl-0.9.15/include/sys/shm.h musl-git/include/sys/shm.h ---- musl-0.9.15/include/sys/shm.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/sys/shm.h 2014-03-10 16:52:06.000000000 +0100 -@@ -14,6 +14,13 @@ - #include <bits/alltypes.h> - - #include <sys/ipc.h> -+ -+#ifdef _GNU_SOURCE -+#define __used_ids used_ids -+#define __swap_attempts swap_attempts -+#define __swap_successes swap_successes -+#endif -+ - #include <bits/shm.h> - - #define SHM_R 0400 -@@ -33,20 +40,6 @@ - #define SHM_HUGETLB 04000 - #define SHM_NORESERVE 010000 - --struct shminfo { -- unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4]; --}; -- --struct shm_info { -- int used_ids; -- unsigned long shm_tot, shm_rss, shm_swp; --#ifdef _GNU_SOURCE -- unsigned long swap_attempts, swap_successes; --#else -- unsigned long __reserved[2]; --#endif --}; -- - typedef unsigned long shmatt_t; - - void *shmat(int, const void *, int); -diff -Nur musl-0.9.15/include/sys/socket.h musl-git/include/sys/socket.h ---- musl-0.9.15/include/sys/socket.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/sys/socket.h 2014-03-10 16:52:06.000000000 +0100 -@@ -202,11 +202,16 @@ - #define SO_LOCK_FILTER 44 - #define SO_SELECT_ERR_QUEUE 45 - #define SO_BUSY_POLL 46 -+#define SO_MAX_PACING_RATE 47 - - #ifndef SOL_SOCKET - #define SOL_SOCKET 1 - #endif - -+#define SOL_IP 0 -+#define SOL_IPV6 41 -+#define SOL_ICMPV6 58 -+ - #define SOL_RAW 255 - #define SOL_DECNET 261 - #define SOL_X25 262 -diff -Nur musl-0.9.15/include/sys/sysctl.h musl-git/include/sys/sysctl.h ---- musl-0.9.15/include/sys/sysctl.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/sys/sysctl.h 1970-01-01 01:00:00.000000000 +0100 -@@ -1,17 +0,0 @@ --#ifndef _SYS_SYSCTL_H --#define _SYS_SYSCTL_H -- --#ifdef __cplusplus --extern "C" { --#endif -- --#define __NEED_size_t --#include <bits/alltypes.h> -- --int sysctl (int *, int, void *, size_t *, void *, size_t); -- --#ifdef __cplusplus --} --#endif -- --#endif -diff -Nur musl-0.9.15/include/sys/time.h musl-git/include/sys/time.h ---- musl-0.9.15/include/sys/time.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/sys/time.h 2014-03-10 16:52:06.000000000 +0100 -@@ -51,6 +51,17 @@ - ((a)->tv_usec += 1000000, (a)->tv_sec--) ) - #endif - -+#if defined(_GNU_SOURCE) -+#define TIMEVAL_TO_TIMESPEC(tv, ts) ( \ -+ (ts)->tv_sec = (tv)->tv_sec, \ -+ (ts)->tv_nsec = (tv)->tv_usec * 1000, \ -+ (void)0 ) -+#define TIMESPEC_TO_TIMEVAL(tv, ts) ( \ -+ (tv)->tv_sec = (ts)->tv_sec, \ -+ (tv)->tv_usec = (ts)->tv_nsec / 1000, \ -+ (void)0 ) -+#endif -+ - #ifdef __cplusplus - } - #endif -diff -Nur musl-0.9.15/include/sys/wait.h musl-git/include/sys/wait.h ---- musl-0.9.15/include/sys/wait.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/sys/wait.h 2014-03-10 16:52:06.000000000 +0100 -@@ -50,7 +50,7 @@ - #define WCOREDUMP(s) ((s) & 0x80) - #define WIFEXITED(s) (!WTERMSIG(s)) - #define WIFSTOPPED(s) ((short)((((s)&0xffff)*0x10001)>>8) > 0x7f00) --#define WIFSIGNALED(s) (((s)&0xffff)-1 < 0xffu) -+#define WIFSIGNALED(s) (((s)&0xffff)-1U < 0xffu) - #define WIFCONTINUED(s) ((s) == 0xffff) - - #ifdef __cplusplus -diff -Nur musl-0.9.15/include/syslog.h musl-git/include/syslog.h ---- musl-0.9.15/include/syslog.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/syslog.h 2014-03-10 16:52:06.000000000 +0100 -@@ -21,7 +21,7 @@ - #define LOG_MAKEPRI(f, p) (((f)<<3)|(p)) - - #define LOG_MASK(p) (1<<(p)) --#define LOG_UPTO(p) ((1<<(p)+1)-1) -+#define LOG_UPTO(p) ((1<<((p)+1))-1) - - #define LOG_KERN (0<<3) - #define LOG_USER (1<<3) -diff -Nur musl-0.9.15/include/time.h musl-git/include/time.h ---- musl-0.9.15/include/time.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/time.h 2014-03-10 16:52:06.000000000 +0100 -@@ -125,7 +125,7 @@ - - - #if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) --int stime(time_t *); -+int stime(const time_t *); - time_t timegm(struct tm *); - #endif - -diff -Nur musl-0.9.15/include/utmp.h musl-git/include/utmp.h ---- musl-0.9.15/include/utmp.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/utmp.h 2014-03-10 16:52:06.000000000 +0100 -@@ -10,6 +10,7 @@ - #define ACCOUNTING 9 - #define UT_NAMESIZE 32 - #define UT_HOSTSIZE 256 -+#define UT_LINESIZE 32 - - struct lastlog { - time_t ll_time; -@@ -22,6 +23,8 @@ - #define ut_addr ut_addr_v6[0] - #define utmp utmpx - #define utmpname(x) (-1) -+#define e_exit __e_exit -+#define e_termination __e_termination - - void endutent(void); - struct utmp *getutent(void); -diff -Nur musl-0.9.15/include/utmpx.h musl-git/include/utmpx.h ---- musl-0.9.15/include/utmpx.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/include/utmpx.h 2014-03-10 16:52:06.000000000 +0100 -@@ -5,6 +5,8 @@ - extern "C" { - #endif - -+#include <features.h> -+ - #define __NEED_pid_t - #define __NEED_time_t - #define __NEED_suseconds_t -@@ -12,19 +14,17 @@ - - #include <bits/alltypes.h> - --#define UT_LINESIZE 32 -- - struct utmpx - { - short ut_type; - pid_t ut_pid; -- char ut_line[UT_LINESIZE]; -+ char ut_line[32]; - char ut_id[4]; - char ut_user[32]; - char ut_host[256]; - struct { -- short e_termination; -- short e_exit; -+ short __e_termination; -+ short __e_exit; - } ut_exit; - long ut_session; - struct timeval ut_tv; -@@ -39,7 +39,11 @@ - struct utmpx *pututxline(const struct utmpx *); - void setutxent(void); - -+#if defined(_BSD_SOURCE) | defined(_GNU_SOURCE) -+#define e_exit __e_exit -+#define e_termination __e_termination - void updwtmpx(const char *, const struct utmpx *); -+#endif - - #define EMPTY 0 - #define RUN_LVL 1 -diff -Nur musl-0.9.15/src/crypt/crypt_des.c musl-git/src/crypt/crypt_des.c ---- musl-0.9.15/src/crypt/crypt_des.c 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/crypt/crypt_des.c 2014-03-10 16:52:06.000000000 +0100 -@@ -692,7 +692,7 @@ - return saltbits; - } - --static void des_setkey(const unsigned char *key, struct expanded_key *ekey) -+void __des_setkey(const unsigned char *key, struct expanded_key *ekey) - { - uint32_t k0, k1, rawkey0, rawkey1; - unsigned int shifts, round, i, ibit; -@@ -753,7 +753,7 @@ - /* - * l_in, r_in, l_out, and r_out are in pseudo-"big-endian" format. - */ --static void do_des(uint32_t l_in, uint32_t r_in, -+void __do_des(uint32_t l_in, uint32_t r_in, - uint32_t *l_out, uint32_t *r_out, - uint32_t count, uint32_t saltbits, const struct expanded_key *ekey) - { -@@ -862,7 +862,7 @@ - ((uint32_t)in[5] << 16) | - ((uint32_t)in[4] << 24); - -- do_des(rawl, rawr, &l_out, &r_out, count, saltbits, ekey); -+ __do_des(rawl, rawr, &l_out, &r_out, count, saltbits, ekey); - - out[0] = l_out >> 24; - out[1] = l_out >> 16; -@@ -894,7 +894,7 @@ - if (*key) - key++; - } -- des_setkey(keybuf, &ekey); -+ __des_setkey(keybuf, &ekey); - - if (*setting == _PASSWORD_EFMT1) { - /* -@@ -929,7 +929,7 @@ - q = keybuf; - while (q <= &keybuf[sizeof(keybuf) - 1] && *key) - *q++ ^= *key++ << 1; -- des_setkey(keybuf, &ekey); -+ __des_setkey(keybuf, &ekey); - } - - memcpy(output, setting, 9); -@@ -957,7 +957,7 @@ - /* - * Do it. - */ -- do_des(0, 0, &r0, &r1, count, setup_salt(salt), &ekey); -+ __do_des(0, 0, &r0, &r1, count, setup_salt(salt), &ekey); - - /* - * Now encode the result... -diff -Nur musl-0.9.15/src/crypt/encrypt.c musl-git/src/crypt/encrypt.c ---- musl-0.9.15/src/crypt/encrypt.c 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/crypt/encrypt.c 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,60 @@ -+#include <stdint.h> -+#include <stdlib.h> -+#include <unistd.h> -+ -+struct expanded_key { -+ uint32_t l[16], r[16]; -+}; -+ -+void __des_setkey(const unsigned char *key, struct expanded_key *ekey); -+void __do_des(uint32_t l_in, uint32_t r_in, -+ uint32_t *l_out, uint32_t *r_out, -+ uint32_t count, uint32_t saltbits, const struct expanded_key *ekey); -+ -+ -+static struct expanded_key __encrypt_key; -+ -+void setkey(const char *key) -+{ -+ unsigned char bkey[8]; -+ int i, j; -+ -+ for (i = 0; i < 8; i++) { -+ bkey[i] = 0; -+ for (j = 7; j >= 0; j--, key++) -+ bkey[i] |= (uint32_t)(*key & 1) << j; -+ } -+ -+ __des_setkey(bkey, &__encrypt_key); -+} -+ -+void encrypt(char *block, int edflag) -+{ -+ struct expanded_key decrypt_key, *key; -+ uint32_t b[2]; -+ int i, j; -+ char *p; -+ -+ p = block; -+ for (i = 0; i < 2; i++) { -+ b[i] = 0; -+ for (j = 31; j >= 0; j--, p++) -+ b[i] |= (uint32_t)(*p & 1) << j; -+ } -+ -+ key = &__encrypt_key; -+ if (edflag) { -+ key = &decrypt_key; -+ for (i = 0; i < 16; i++) { -+ decrypt_key.l[i] = __encrypt_key.l[15-i]; -+ decrypt_key.r[i] = __encrypt_key.r[15-i]; -+ } -+ } -+ -+ __do_des(b[0], b[1], b, b + 1, 1, 0, key); -+ -+ p = block; -+ for (i = 0; i < 2; i++) -+ for (j = 31; j >= 0; j--) -+ *p++ = b[i]>>j & 1; -+} -diff -Nur musl-0.9.15/src/dirent/readdir.c musl-git/src/dirent/readdir.c ---- musl-0.9.15/src/dirent/readdir.c 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/dirent/readdir.c 2014-03-10 16:52:06.000000000 +0100 -@@ -1,5 +1,7 @@ - #include <dirent.h> -+#include <errno.h> - #include "__dirent.h" -+#include "syscall.h" - #include "libc.h" - - int __getdents(int, struct dirent *, size_t); -@@ -9,8 +11,11 @@ - struct dirent *de; - - if (dir->buf_pos >= dir->buf_end) { -- int len = __getdents(dir->fd, (void *)dir->buf, sizeof dir->buf); -- if (len <= 0) return 0; -+ int len = __syscall(SYS_getdents, dir->fd, dir->buf, sizeof dir->buf); -+ if (len <= 0) { -+ if (len < 0 && len != -ENOENT) errno = -len; -+ return 0; -+ } - dir->buf_end = len; - dir->buf_pos = 0; - } -diff -Nur musl-0.9.15/src/errno/strerror.c musl-git/src/errno/strerror.c ---- musl-0.9.15/src/errno/strerror.c 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/errno/strerror.c 2014-03-10 16:52:06.000000000 +0100 -@@ -1,7 +1,7 @@ - #include <errno.h> - #include <string.h> - --#define E(a,b) a, -+#define E(a,b) ((unsigned char)a), - static const unsigned char errid[] = { - #include "__strerror.h" - }; -@@ -16,6 +16,12 @@ - { - const char *s; - int i; -+ /* mips has one error code outside of the 8-bit range due to a -+ * historical typo, so we just remap it. */ -+ if (EDQUOT==1133) { -+ if (e==109) e=-1; -+ else if (e==EDQUOT) e=109; -+ } - for (i=0; errid[i] && errid[i] != e; i++); - for (s=errmsg; i; s++, i--) for (; *s; s++); - return (char *)s; -diff -Nur musl-0.9.15/src/fcntl/fcntl.c musl-git/src/fcntl/fcntl.c ---- musl-0.9.15/src/fcntl/fcntl.c 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/fcntl/fcntl.c 2014-03-10 16:52:06.000000000 +0100 -@@ -7,17 +7,17 @@ - - int fcntl(int fd, int cmd, ...) - { -- long arg; -+ unsigned long arg; - va_list ap; - va_start(ap, cmd); -- arg = va_arg(ap, long); -+ arg = va_arg(ap, unsigned long); - va_end(ap); - if (cmd == F_SETFL) arg |= O_LARGEFILE; -- if (cmd == F_SETLKW) return syscall_cp(SYS_fcntl, fd, cmd, arg); -+ if (cmd == F_SETLKW) return syscall_cp(SYS_fcntl, fd, cmd, (void *)arg); - if (cmd == F_GETOWN) { - struct f_owner_ex ex; - int ret = __syscall(SYS_fcntl, fd, F_GETOWN_EX, &ex); -- if (ret == -EINVAL) return __syscall(SYS_fcntl, fd, cmd, arg); -+ if (ret == -EINVAL) return __syscall(SYS_fcntl, fd, cmd, (void *)arg); - if (ret) return __syscall_ret(ret); - return ex.type == F_OWNER_PGRP ? -ex.pid : ex.pid; - } -@@ -37,5 +37,14 @@ - if (ret >= 0) __syscall(SYS_fcntl, ret, F_SETFD, FD_CLOEXEC); - return __syscall_ret(ret); - } -- return syscall(SYS_fcntl, fd, cmd, arg); -+ switch (cmd) { -+ case F_SETLK: -+ case F_SETLKW: -+ case F_GETLK: -+ case F_GETOWN_EX: -+ case F_SETOWN_EX: -+ return syscall(SYS_fcntl, fd, cmd, (void *)arg); -+ default: -+ return syscall(SYS_fcntl, fd, cmd, arg); -+ } - } -diff -Nur musl-0.9.15/src/fcntl/posix_fadvise.c musl-git/src/fcntl/posix_fadvise.c ---- musl-0.9.15/src/fcntl/posix_fadvise.c 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/fcntl/posix_fadvise.c 2014-03-10 16:52:06.000000000 +0100 -@@ -1,8 +1,11 @@ - #include <fcntl.h> - #include "syscall.h" -+#include "libc.h" - - int posix_fadvise(int fd, off_t base, off_t len, int advice) - { - return -(__syscall)(SYS_fadvise, fd, __SYSCALL_LL_O(base), - __SYSCALL_LL_E(len), advice); - } -+ -+LFS64(posix_fadvise); -diff -Nur musl-0.9.15/src/fcntl/posix_fallocate.c musl-git/src/fcntl/posix_fallocate.c ---- musl-0.9.15/src/fcntl/posix_fallocate.c 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/fcntl/posix_fallocate.c 2014-03-10 16:52:06.000000000 +0100 -@@ -1,8 +1,11 @@ - #include <fcntl.h> - #include "syscall.h" -+#include "libc.h" - - int posix_fallocate(int fd, off_t base, off_t len) - { - return -__syscall(SYS_fallocate, fd, 0, __SYSCALL_LL_E(base), - __SYSCALL_LL_E(len)); - } -+ -+LFS64(posix_fallocate); -diff -Nur musl-0.9.15/src/fenv/i386/fenv.s musl-git/src/fenv/i386/fenv.s ---- musl-0.9.15/src/fenv/i386/fenv.s 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/fenv/i386/fenv.s 2014-03-10 16:52:06.000000000 +0100 -@@ -126,7 +126,7 @@ - push %eax - push %eax - push %eax -- push %eax -+ pushl $0xffff - push %eax - pushl $0x37f - fldenv (%esp) -diff -Nur musl-0.9.15/src/fenv/mipsel-sf/fenv.sub musl-git/src/fenv/mipsel-sf/fenv.sub ---- musl-0.9.15/src/fenv/mipsel-sf/fenv.sub 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/fenv/mipsel-sf/fenv.sub 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+../fenv.c -diff -Nur musl-0.9.15/src/fenv/mips-sf/fenv.sub musl-git/src/fenv/mips-sf/fenv.sub ---- musl-0.9.15/src/fenv/mips-sf/fenv.sub 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/fenv/mips-sf/fenv.sub 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+../fenv.c -diff -Nur musl-0.9.15/src/fenv/sh/fenv.s musl-git/src/fenv/sh/fenv.s ---- musl-0.9.15/src/fenv/sh/fenv.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/fenv/sh/fenv.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,74 @@ -+.global fegetround -+.type fegetround, @function -+fegetround: -+ sts fpscr, r0 -+ rts -+ and #3, r0 -+ -+.global __fesetround -+.type __fesetround, @function -+__fesetround: -+ sts fpscr, r0 -+ or r4, r0 -+ lds r0, fpscr -+ rts -+ mov #0, r0 -+ -+.global fetestexcept -+.type fetestexcept, @function -+fetestexcept: -+ sts fpscr, r0 -+ and r4, r0 -+ rts -+ and #0x7c, r0 -+ -+.global feclearexcept -+.type feclearexcept, @function -+feclearexcept: -+ mov r4, r0 -+ and #0x7c, r0 -+ not r0, r4 -+ sts fpscr, r0 -+ and r4, r0 -+ lds r0, fpscr -+ rts -+ mov #0, r0 -+ -+.global feraiseexcept -+.type feraiseexcept, @function -+feraiseexcept: -+ mov r4, r0 -+ and #0x7c, r0 -+ sts fpscr, r4 -+ or r4, r0 -+ lds r0, fpscr -+ rts -+ mov #0, r0 -+ -+.global fegetenv -+.type fegetenv, @function -+fegetenv: -+ sts fpscr, r0 -+ mov.l r0, @r4 -+ rts -+ mov #0, r0 -+ -+.global fesetenv -+.type fesetenv, @function -+fesetenv: -+ mov r4, r0 -+ cmp/eq #-1, r0 -+ bf 1f -+ -+ ! the default environment is complicated by the fact that we need to -+ ! preserve the current precision bit, which we do not know a priori -+ sts fpscr, r0 -+ mov #8, r1 -+ swap.w r1, r1 -+ bra 2f -+ and r1, r0 -+ -+1: mov.l @r4, r0 ! non-default environment -+2: lds r0, fpscr -+ rts -+ mov #0, r0 -diff -Nur musl-0.9.15/src/fenv/sheb-nofpu/fenv.sub musl-git/src/fenv/sheb-nofpu/fenv.sub ---- musl-0.9.15/src/fenv/sheb-nofpu/fenv.sub 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/fenv/sheb-nofpu/fenv.sub 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+../fenv.c -diff -Nur musl-0.9.15/src/fenv/sh-nofpu/fenv.sub musl-git/src/fenv/sh-nofpu/fenv.sub ---- musl-0.9.15/src/fenv/sh-nofpu/fenv.sub 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/fenv/sh-nofpu/fenv.sub 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+../fenv.c -diff -Nur musl-0.9.15/src/fenv/x32/fenv.s musl-git/src/fenv/x32/fenv.s ---- musl-0.9.15/src/fenv/x32/fenv.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/fenv/x32/fenv.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,97 @@ -+.global feclearexcept -+.type feclearexcept,@function -+feclearexcept: -+ # maintain exceptions in the sse mxcsr, clear x87 exceptions -+ mov %edi,%ecx -+ and $0x3f,%ecx -+ fnstsw %ax -+ test %eax,%ecx -+ jz 1f -+ fnclex -+1: stmxcsr -8(%esp) -+ and $0x3f,%eax -+ or %eax,-8(%esp) -+ test %ecx,-8(%esp) -+ jz 1f -+ not %ecx -+ and %ecx,-8(%esp) -+ ldmxcsr -8(%esp) -+1: xor %eax,%eax -+ ret -+ -+.global feraiseexcept -+.type feraiseexcept,@function -+feraiseexcept: -+ and $0x3f,%edi -+ stmxcsr -8(%esp) -+ or %edi,-8(%esp) -+ ldmxcsr -8(%esp) -+ xor %eax,%eax -+ ret -+ -+.global __fesetround -+.type __fesetround,@function -+__fesetround: -+ push %rax -+ xor %eax,%eax -+ mov %edi,%ecx -+ fnstcw (%esp) -+ andb $0xf3,1(%esp) -+ or %ch,1(%esp) -+ fldcw (%esp) -+ stmxcsr (%esp) -+ shl $3,%ch -+ andb $0x9f,1(%esp) -+ or %ch,1(%esp) -+ ldmxcsr (%esp) -+ pop %rcx -+ ret -+ -+.global fegetround -+.type fegetround,@function -+fegetround: -+ push %rax -+ stmxcsr (%esp) -+ pop %rax -+ shr $3,%eax -+ and $0xc00,%eax -+ ret -+ -+.global fegetenv -+.type fegetenv,@function -+fegetenv: -+ xor %eax,%eax -+ fnstenv (%edi) -+ stmxcsr 28(%edi) -+ ret -+ -+.global fesetenv -+.type fesetenv,@function -+fesetenv: -+ xor %eax,%eax -+ inc %edi -+ jz 1f -+ fldenv -1(%edi) -+ ldmxcsr 27(%edi) -+ ret -+1: push %rax -+ push %rax -+ pushq $0xffff -+ pushq $0x37f -+ fldenv (%esp) -+ pushq $0x1f80 -+ ldmxcsr (%esp) -+ add $40,%esp -+ ret -+ -+.global fetestexcept -+.type fetestexcept,@function -+fetestexcept: -+ and $0x3f,%edi -+ push %rax -+ stmxcsr (%esp) -+ pop %rsi -+ fnstsw %ax -+ or %esi,%eax -+ and %edi,%eax -+ ret -diff -Nur musl-0.9.15/src/fenv/x86_64/fenv.s musl-git/src/fenv/x86_64/fenv.s ---- musl-0.9.15/src/fenv/x86_64/fenv.s 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/fenv/x86_64/fenv.s 2014-03-10 16:52:06.000000000 +0100 -@@ -76,7 +76,7 @@ - ret - 1: push %rax - push %rax -- push %rax -+ pushq $0xffff - pushq $0x37f - fldenv (%rsp) - pushq $0x1f80 -diff -Nur musl-0.9.15/src/internal/sh/syscall.s musl-git/src/internal/sh/syscall.s ---- musl-0.9.15/src/internal/sh/syscall.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/internal/sh/syscall.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,22 @@ -+.global __syscall -+.type __syscall, @function -+__syscall: -+ ! The kernel syscall entry point documents that the trap number indicates -+ ! the number of arguments being passed, but it then ignores that information. -+ ! Since we do not actually know how many arguments are being passed, we will -+ ! say there are six, since that is the maximum we support here. -+ mov r4, r3 -+ mov r5, r4 -+ mov r6, r5 -+ mov r7, r6 -+ mov.l @r15, r7 -+ mov.l @(4,r15), r0 -+ mov.l @(8,r15), r1 -+ trapa #22 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ rts -+ nop -diff -Nur musl-0.9.15/src/internal/stdio_impl.h musl-git/src/internal/stdio_impl.h ---- musl-0.9.15/src/internal/stdio_impl.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/internal/stdio_impl.h 2014-03-10 16:52:06.000000000 +0100 -@@ -17,6 +17,7 @@ - #define F_EOF 16 - #define F_ERR 32 - #define F_SVB 64 -+#define F_APP 128 - - struct _IO_FILE { - unsigned flags; -diff -Nur musl-0.9.15/src/internal/syscall.h musl-git/src/internal/syscall.h ---- musl-0.9.15/src/internal/syscall.h 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/internal/syscall.h 2014-03-10 16:52:06.000000000 +0100 -@@ -1,22 +1,28 @@ - #ifndef _INTERNAL_SYSCALL_H - #define _INTERNAL_SYSCALL_H - --#if defined(__PIC__) && (100*__GNUC__+__GNUC_MINOR__ >= 303) --__attribute__((visibility("protected"))) --#endif --long __syscall_ret(unsigned long), __syscall(long, ...), -- __syscall_cp(long, long, long, long, long, long, long); -- - #include <sys/syscall.h> - #include "syscall_arch.h" - --#define __syscall1(n,a) __syscall1(n,(long)(a)) --#define __syscall2(n,a,b) __syscall2(n,(long)(a),(long)(b)) --#define __syscall3(n,a,b,c) __syscall3(n,(long)(a),(long)(b),(long)(c)) --#define __syscall4(n,a,b,c,d) __syscall4(n,(long)(a),(long)(b),(long)(c),(long)(d)) --#define __syscall5(n,a,b,c,d,e) __syscall5(n,(long)(a),(long)(b),(long)(c),(long)(d),(long)(e)) --#define __syscall6(n,a,b,c,d,e,f) __syscall6(n,(long)(a),(long)(b),(long)(c),(long)(d),(long)(e),(long)(f)) --#define __syscall7(n,a,b,c,d,e,f,g) (__syscall)(n,(long)(a),(long)(b),(long)(c),(long)(d),(long)(e),(long)(f),(long)g) -+#ifndef __scc -+#define __scc(X) ((long) (X)) -+typedef long syscall_arg_t; -+#endif -+ -+#if defined(__PIC__) && (100*__GNUC__+__GNUC_MINOR__ >= 303) -+__attribute__((visibility("protected"))) -+#endif -+long __syscall_ret(unsigned long), __syscall(syscall_arg_t, ...), -+ __syscall_cp(syscall_arg_t, syscall_arg_t, syscall_arg_t, syscall_arg_t, -+ syscall_arg_t, syscall_arg_t, syscall_arg_t); -+ -+#define __syscall1(n,a) __syscall1(n,__scc(a)) -+#define __syscall2(n,a,b) __syscall2(n,__scc(a),__scc(b)) -+#define __syscall3(n,a,b,c) __syscall3(n,__scc(a),__scc(b),__scc(c)) -+#define __syscall4(n,a,b,c,d) __syscall4(n,__scc(a),__scc(b),__scc(c),__scc(d)) -+#define __syscall5(n,a,b,c,d,e) __syscall5(n,__scc(a),__scc(b),__scc(c),__scc(d),__scc(e)) -+#define __syscall6(n,a,b,c,d,e,f) __syscall6(n,__scc(a),__scc(b),__scc(c),__scc(d),__scc(e),__scc(f)) -+#define __syscall7(n,a,b,c,d,e,f,g) (__syscall)(n,__scc(a),__scc(b),__scc(c),__scc(d),__scc(e),__scc(f),__scc(g)) - - #define __SYSCALL_NARGS_X(a,b,c,d,e,f,g,h,n,...) n - #define __SYSCALL_NARGS(...) __SYSCALL_NARGS_X(__VA_ARGS__,7,6,5,4,3,2,1,0,) -@@ -31,12 +37,12 @@ - #define socketcall_cp __socketcall_cp - - #define __syscall_cp0(n) (__syscall_cp)(n,0,0,0,0,0,0) --#define __syscall_cp1(n,a) (__syscall_cp)(n,(long)(a),0,0,0,0,0) --#define __syscall_cp2(n,a,b) (__syscall_cp)(n,(long)(a),(long)(b),0,0,0,0) --#define __syscall_cp3(n,a,b,c) (__syscall_cp)(n,(long)(a),(long)(b),(long)(c),0,0,0) --#define __syscall_cp4(n,a,b,c,d) (__syscall_cp)(n,(long)(a),(long)(b),(long)(c),(long)(d),0,0) --#define __syscall_cp5(n,a,b,c,d,e) (__syscall_cp)(n,(long)(a),(long)(b),(long)(c),(long)(d),(long)(e),0) --#define __syscall_cp6(n,a,b,c,d,e,f) (__syscall_cp)(n,(long)(a),(long)(b),(long)(c),(long)(d),(long)(e),(long)(f)) -+#define __syscall_cp1(n,a) (__syscall_cp)(n,__scc(a),0,0,0,0,0) -+#define __syscall_cp2(n,a,b) (__syscall_cp)(n,__scc(a),__scc(b),0,0,0,0) -+#define __syscall_cp3(n,a,b,c) (__syscall_cp)(n,__scc(a),__scc(b),__scc(c),0,0,0) -+#define __syscall_cp4(n,a,b,c,d) (__syscall_cp)(n,__scc(a),__scc(b),__scc(c),__scc(d),0,0) -+#define __syscall_cp5(n,a,b,c,d,e) (__syscall_cp)(n,__scc(a),__scc(b),__scc(c),__scc(d),__scc(e),0) -+#define __syscall_cp6(n,a,b,c,d,e,f) (__syscall_cp)(n,__scc(a),__scc(b),__scc(c),__scc(d),__scc(e),__scc(f)) - - #define __syscall_cp(...) __SYSCALL_DISP(__syscall_cp,__VA_ARGS__) - #define syscall_cp(...) __syscall_ret(__syscall_cp(__VA_ARGS__)) -diff -Nur musl-0.9.15/src/internal/x32/syscall.s musl-git/src/internal/x32/syscall.s ---- musl-0.9.15/src/internal/x32/syscall.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/internal/x32/syscall.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,12 @@ -+.global __syscall -+.type __syscall,@function -+__syscall: -+ movq %rdi,%rax -+ movq %rsi,%rdi -+ movq %rdx,%rsi -+ movq %rcx,%rdx -+ movq %r8,%r10 -+ movq %r9,%r8 -+ movq 8(%rsp),%r9 -+ syscall -+ ret -diff -Nur musl-0.9.15/src/ipc/semctl.c musl-git/src/ipc/semctl.c ---- musl-0.9.15/src/ipc/semctl.c 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/ipc/semctl.c 2014-03-10 16:52:06.000000000 +0100 -@@ -3,16 +3,22 @@ - #include "syscall.h" - #include "ipc.h" - -+union semun { -+ int val; -+ struct semid_ds *buf; -+ unsigned short *array; -+}; -+ - int semctl(int id, int num, int cmd, ...) - { -- long arg; -+ union semun arg; - va_list ap; - va_start(ap, cmd); -- arg = va_arg(ap, long); -+ arg = va_arg(ap, union semun); - va_end(ap); - #ifdef SYS_semctl -- return syscall(SYS_semctl, id, num, cmd | IPC_64, arg); -+ return syscall(SYS_semctl, id, num, cmd | IPC_64, arg.buf); - #else -- return syscall(SYS_ipc, IPCOP_semctl, id, num, cmd | IPC_64, &arg); -+ return syscall(SYS_ipc, IPCOP_semctl, id, num, cmd | IPC_64, &arg.buf); - #endif - } -diff -Nur musl-0.9.15/src/ldso/dladdr.c musl-git/src/ldso/dladdr.c ---- musl-0.9.15/src/ldso/dladdr.c 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/ldso/dladdr.c 2014-03-10 16:52:06.000000000 +0100 -@@ -1,9 +1,9 @@ - #define _GNU_SOURCE - #include <dlfcn.h> - --int __dladdr(void *, Dl_info *); -+int __dladdr(const void *, Dl_info *); - --int dladdr(void *addr, Dl_info *info) -+int dladdr(const void *addr, Dl_info *info) - { - return __dladdr(addr, info); - } -diff -Nur musl-0.9.15/src/ldso/dynlink.c musl-git/src/ldso/dynlink.c ---- musl-0.9.15/src/ldso/dynlink.c 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/ldso/dynlink.c 2014-03-10 16:52:06.000000000 +0100 -@@ -253,7 +253,8 @@ - name = strings + sym->st_name; - ctx = IS_COPY(type) ? head->next : head; - def = find_sym(ctx, name, IS_PLT(type)); -- if (!def.sym && sym->st_info>>4 != STB_WEAK) { -+ if (!def.sym && (sym->st_shndx != SHN_UNDEF -+ || sym->st_info>>4 != STB_WEAK)) { - snprintf(errbuf, sizeof errbuf, - "Error relocating %s: %s: symbol not found", - dso->name, name); -@@ -1331,7 +1332,7 @@ - return 0; - } - --int __dladdr(void *addr, Dl_info *info) -+int __dladdr(const void *addr, Dl_info *info) - { - struct dso *p; - Sym *sym; -@@ -1441,7 +1442,7 @@ - { - return 0; - } --int __dladdr (void *addr, Dl_info *info) -+int __dladdr (const void *addr, Dl_info *info) - { - return 0; - } -diff -Nur musl-0.9.15/src/ldso/sh/dlsym.s musl-git/src/ldso/sh/dlsym.s ---- musl-0.9.15/src/ldso/sh/dlsym.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/ldso/sh/dlsym.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,10 @@ -+.text -+.global dlsym -+.type dlsym, @function -+dlsym: -+ mov.l L1, r0 -+ braf r0 -+1: mov.l @r15, r6 -+ -+.align 2 -+L1: .long __dlsym@PLT-(1b-.) -diff -Nur musl-0.9.15/src/ldso/sh/start.s musl-git/src/ldso/sh/start.s ---- musl-0.9.15/src/ldso/sh/start.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/ldso/sh/start.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,26 @@ -+.text -+.global _start -+.type _start, @function -+_start: -+ mov.l @r15, r4 -+ mov r15, r5 -+ mov.l L1, r0 -+ bsrf r0 -+ add #4, r5 -+ -+2: mov r0, r2 -+ mov.l @r15+, r1 -+1: mov.l @r15+, r0 -+ cmp/eq #-1, r0 -+ bt/s 1b -+ add #-1, r1 -+ -+ add #1, r1 -+ mov.l r0, @-r15 -+ mov.l r1, @-r15 -+ mov #0, r4 -+ jmp @r2 -+ nop -+ -+.align 2 -+L1: .long __dynlink@PLT-(2b-.) -diff -Nur musl-0.9.15/src/ldso/x32/dlsym.s musl-git/src/ldso/x32/dlsym.s ---- musl-0.9.15/src/ldso/x32/dlsym.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/ldso/x32/dlsym.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,6 @@ -+.text -+.global dlsym -+.type dlsym,@function -+dlsym: -+ mov (%rsp),%rdx -+ jmp __dlsym -diff -Nur musl-0.9.15/src/ldso/x32/start.s musl-git/src/ldso/x32/start.s ---- musl-0.9.15/src/ldso/x32/start.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/ldso/x32/start.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,24 @@ -+.text -+.global _start -+_start: -+ mov (%rsp),%rdi /* move argc into 1st argument slot */ -+ lea 4(%rsp),%rsi /* move argv into 2nd argument slot */ -+ call __dynlink -+ /* in case the dynlinker was called directly, it sets the "consumed" -+ argv values to -1. so we must loop over the array as long as -1 -+ is in the top argv slot, decrement argc, and then set the stackpointer -+ to the new argc as well as argc's new value. -+ as the x32 abi has longs in the argv array, we cannot use push/pop.*/ -+ movl (%rsp),%edi /* copy argc into edi */ -+ xor %rdx,%rdx /* we use rdx as an offset to the current argv member */ -+1: dec %edi -+ addl $4, %edx -+ movl (%rsp, %rdx), %esi -+ cmp $-1,%esi -+ jz 1b -+ inc %edi -+ subl $4, %edx -+ lea (%rsp, %rdx), %rsp /* set rsp to new argv[-1] */ -+ movl %edi, (%rsp) /* write new argc there */ -+ xor %edx,%edx -+ jmp *%rax -diff -Nur musl-0.9.15/src/linux/clone.c musl-git/src/linux/clone.c ---- musl-0.9.15/src/linux/clone.c 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/linux/clone.c 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,19 @@ -+#include <stdarg.h> -+#include <unistd.h> -+#include "pthread_impl.h" -+#include "syscall.h" -+ -+int clone(int (*func)(void *), void *stack, int flags, void *arg, ...) -+{ -+ va_list ap; -+ pid_t *ptid, *ctid; -+ void *tls; -+ -+ va_start(ap, arg); -+ ptid = va_arg(ap, pid_t *); -+ tls = va_arg(ap, void *); -+ ctid = va_arg(ap, pid_t *); -+ va_end(ap); -+ -+ return __syscall_ret(__clone(func, stack, flags, arg, ptid, tls, ctid)); -+} -diff -Nur musl-0.9.15/src/linux/fallocate.c musl-git/src/linux/fallocate.c ---- musl-0.9.15/src/linux/fallocate.c 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/linux/fallocate.c 2014-03-10 16:52:06.000000000 +0100 -@@ -1,9 +1,13 @@ - #define _GNU_SOURCE - #include <fcntl.h> - #include "syscall.h" -+#include "libc.h" - - int fallocate(int fd, int mode, off_t base, off_t len) - { - return syscall(SYS_fallocate, fd, mode, __SYSCALL_LL_E(base), - __SYSCALL_LL_E(len)); - } -+ -+#undef fallocate64 -+LFS64(fallocate); -diff -Nur musl-0.9.15/src/linux/inotify.c musl-git/src/linux/inotify.c ---- musl-0.9.15/src/linux/inotify.c 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/linux/inotify.c 2014-03-10 16:52:06.000000000 +0100 -@@ -15,7 +15,7 @@ - return syscall(SYS_inotify_add_watch, fd, pathname, mask); - } - --int inotify_rm_watch(int fd, uint32_t wd) -+int inotify_rm_watch(int fd, int wd) - { - return syscall(SYS_inotify_rm_watch, fd, wd); - } -diff -Nur musl-0.9.15/src/linux/remap_file_pages.c musl-git/src/linux/remap_file_pages.c ---- musl-0.9.15/src/linux/remap_file_pages.c 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/linux/remap_file_pages.c 2014-03-10 16:52:06.000000000 +0100 -@@ -2,7 +2,7 @@ - #include <sys/mman.h> - #include "syscall.h" - --int remap_file_pages(void *addr, size_t size, int prot, ssize_t pgoff, int flags) -+int remap_file_pages(void *addr, size_t size, int prot, size_t pgoff, int flags) - { - return syscall(SYS_remap_file_pages, addr, size, prot, pgoff, flags); - } -diff -Nur musl-0.9.15/src/linux/stime.c musl-git/src/linux/stime.c ---- musl-0.9.15/src/linux/stime.c 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/linux/stime.c 2014-03-10 16:52:06.000000000 +0100 -@@ -2,7 +2,7 @@ - #include <time.h> - #include <sys/time.h> - --int stime(time_t *t) -+int stime(const time_t *t) - { - struct timeval tv = { .tv_sec = *t, .tv_usec = 0 }; - return settimeofday(&tv, (void *)0); -diff -Nur musl-0.9.15/src/linux/x32/sysinfo.s musl-git/src/linux/x32/sysinfo.s ---- musl-0.9.15/src/linux/x32/sysinfo.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/linux/x32/sysinfo.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,5 @@ -+.text -+.global sysinfo -+.type sysinfo,@function -+sysinfo: -+ jmp __x32_sysinfo -diff -Nur musl-0.9.15/src/locale/wcsxfrm.c musl-git/src/locale/wcsxfrm.c ---- musl-0.9.15/src/locale/wcsxfrm.c 2014-01-03 21:12:17.000000000 +0100 -+++ musl-git/src/locale/wcsxfrm.c 2014-03-10 16:52:06.000000000 +0100 -@@ -6,10 +6,12 @@ - size_t __wcsxfrm_l(wchar_t *restrict dest, const wchar_t *restrict src, size_t n, locale_t loc) - { - size_t l = wcslen(src); -- if (l >= n) { -+ if (l < n) { -+ wmemcpy(dest, src, l+1); -+ } else if (n) { - wmemcpy(dest, src, n-1); - dest[n-1] = 0; -- } else wcscpy(dest, src); -+ } - return l; - } - -diff -Nur musl-0.9.15/src/math/i386/remainderf.s musl-git/src/math/i386/remainderf.s ---- musl-0.9.15/src/math/i386/remainderf.s 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/math/i386/remainderf.s 2014-03-10 16:52:06.000000000 +0100 -@@ -1,6 +1,9 @@ - .global remainderf - .type remainderf,@function - remainderf: -+.weak dremf -+.type dremf,@function -+dremf: - flds 8(%esp) - flds 4(%esp) - 1: fprem1 -diff -Nur musl-0.9.15/src/math/i386/remainder.s musl-git/src/math/i386/remainder.s ---- musl-0.9.15/src/math/i386/remainder.s 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/math/i386/remainder.s 2014-03-10 16:52:06.000000000 +0100 -@@ -1,6 +1,9 @@ - .global remainder - .type remainder,@function - remainder: -+.weak drem -+.type drem,@function -+drem: - fldl 12(%esp) - fldl 4(%esp) - 1: fprem1 -diff -Nur musl-0.9.15/src/math/x32/acosl.s musl-git/src/math/x32/acosl.s ---- musl-0.9.15/src/math/x32/acosl.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/acosl.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,16 @@ -+# see ../i386/acos.s -+ -+.global acosl -+.type acosl,@function -+acosl: -+ fldt 8(%esp) -+1: fld %st(0) -+ fld1 -+ fsub %st(0),%st(1) -+ fadd %st(2) -+ fmulp -+ fsqrt -+ fabs -+ fxch %st(1) -+ fpatan -+ ret -diff -Nur musl-0.9.15/src/math/x32/asinl.s musl-git/src/math/x32/asinl.s ---- musl-0.9.15/src/math/x32/asinl.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/asinl.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,12 @@ -+.global asinl -+.type asinl,@function -+asinl: -+ fldt 8(%esp) -+1: fld %st(0) -+ fld1 -+ fsub %st(0),%st(1) -+ fadd %st(2) -+ fmulp -+ fsqrt -+ fpatan -+ ret -diff -Nur musl-0.9.15/src/math/x32/atan2l.s musl-git/src/math/x32/atan2l.s ---- musl-0.9.15/src/math/x32/atan2l.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/atan2l.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,7 @@ -+.global atan2l -+.type atan2l,@function -+atan2l: -+ fldt 8(%esp) -+ fldt 24(%esp) -+ fpatan -+ ret -diff -Nur musl-0.9.15/src/math/x32/atanl.s musl-git/src/math/x32/atanl.s ---- musl-0.9.15/src/math/x32/atanl.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/atanl.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,7 @@ -+.global atanl -+.type atanl,@function -+atanl: -+ fldt 8(%esp) -+ fld1 -+ fpatan -+ ret -diff -Nur musl-0.9.15/src/math/x32/ceill.s musl-git/src/math/x32/ceill.s ---- musl-0.9.15/src/math/x32/ceill.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/ceill.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+# see floorl.s -diff -Nur musl-0.9.15/src/math/x32/exp2l.s musl-git/src/math/x32/exp2l.s ---- musl-0.9.15/src/math/x32/exp2l.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/exp2l.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,90 @@ -+.global expm1l -+.type expm1l,@function -+expm1l: -+ fldt 8(%esp) -+ fldl2e -+ fmulp -+ movl $0xc2820000,-4(%esp) -+ flds -4(%esp) -+ fucomp %st(1) -+ fnstsw %ax -+ sahf -+ fld1 -+ jb 1f -+ # x*log2e <= -65, return -1 without underflow -+ fstp %st(1) -+ fchs -+ ret -+1: fld %st(1) -+ fabs -+ fucom %st(1) -+ fnstsw %ax -+ fstp %st(0) -+ fstp %st(0) -+ sahf -+ ja 1f -+ f2xm1 -+ ret -+1: push %rax -+ call 1f -+ pop %rax -+ fld1 -+ fsubrp -+ ret -+ -+.global exp2l -+.type exp2l,@function -+exp2l: -+ fldt 8(%esp) -+1: fld %st(0) -+ sub $16,%esp -+ fstpt (%esp) -+ mov 8(%esp),%ax -+ and $0x7fff,%ax -+ cmp $0x3fff+13,%ax -+ jb 4f # |x| < 8192 -+ cmp $0x3fff+15,%ax -+ jae 3f # |x| >= 32768 -+ fsts (%esp) -+ cmpl $0xc67ff800,(%esp) -+ jb 2f # x > -16382 -+ movl $0x5f000000,(%esp) -+ flds (%esp) # 0x1p63 -+ fld %st(1) -+ fsub %st(1) -+ faddp -+ fucomp %st(1) -+ fnstsw -+ sahf -+ je 2f # x - 0x1p63 + 0x1p63 == x -+ movl $1,(%esp) -+ flds (%esp) # 0x1p-149 -+ fdiv %st(1) -+ fstps (%esp) # raise underflow -+2: fld1 -+ fld %st(1) -+ frndint -+ fxch %st(2) -+ fsub %st(2) # st(0)=x-rint(x), st(1)=1, st(2)=rint(x) -+ f2xm1 -+ faddp # 2^(x-rint(x)) -+1: fscale -+ fstp %st(1) -+ add $16,%esp -+ ret -+3: xor %eax,%eax -+4: cmp $0x3fff-64,%ax -+ fld1 -+ jb 1b # |x| < 0x1p-64 -+ fstpt (%esp) -+ fistl 8(%esp) -+ fildl 8(%esp) -+ fsubrp %st(1) -+ addl $0x3fff,8(%esp) -+ f2xm1 -+ fld1 -+ faddp # 2^(x-rint(x)) -+ fldt (%esp) # 2^rint(x) -+ fmulp -+ add $16,%esp -+ ret -diff -Nur musl-0.9.15/src/math/x32/expl.s musl-git/src/math/x32/expl.s ---- musl-0.9.15/src/math/x32/expl.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/expl.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,101 @@ -+# exp(x) = 2^hi + 2^hi (2^lo - 1) -+# where hi+lo = log2e*x with 128bit precision -+# exact log2e*x calculation depends on nearest rounding mode -+# using the exact multiplication method of Dekker and Veltkamp -+ -+.global expl -+.type expl,@function -+expl: -+ fldt 8(%esp) -+ -+ # interesting case: 0x1p-32 <= |x| < 16384 -+ # check if (exponent|0x8000) is in [0xbfff-32, 0xbfff+13] -+ mov 16(%esp), %ax -+ or $0x8000, %ax -+ sub $0xbfdf, %ax -+ cmp $45, %ax -+ jbe 2f -+ test %ax, %ax -+ fld1 -+ js 1f -+ # if |x|>=0x1p14 or nan return 2^trunc(x) -+ fscale -+ fstp %st(1) -+ ret -+ # if |x|<0x1p-32 return 1+x -+1: faddp -+ ret -+ -+ # should be 0x1.71547652b82fe178p0L == 0x3fff b8aa3b29 5c17f0bc -+ # it will be wrong on non-nearest rounding mode -+2: fldl2e -+ sub $48, %esp -+ # hi = log2e_hi*x -+ # 2^hi = exp2l(hi) -+ fmul %st(1),%st -+ fld %st(0) -+ fstpt (%esp) -+ fstpt 16(%esp) -+ fstpt 32(%esp) -+ call exp2l -+ # if 2^hi == inf return 2^hi -+ fld %st(0) -+ fstpt (%esp) -+ cmpw $0x7fff, 8(%esp) -+ je 1f -+ fldt 32(%esp) -+ fldt 16(%esp) -+ # fpu stack: 2^hi x hi -+ # exact mult: x*log2e -+ fld %st(1) -+ # c = 0x1p32+1 -+ movq $0x41f0000000100000,%rax -+ pushq %rax -+ fldl (%esp) -+ # xh = x - c*x + c*x -+ # xl = x - xh -+ fmulp -+ fld %st(2) -+ fsub %st(1), %st -+ faddp -+ fld %st(2) -+ fsub %st(1), %st -+ # yh = log2e_hi - c*log2e_hi + c*log2e_hi -+ movq $0x3ff7154765200000,%rax -+ pushq %rax -+ fldl (%esp) -+ # fpu stack: 2^hi x hi xh xl yh -+ # lo = hi - xh*yh + xl*yh -+ fld %st(2) -+ fmul %st(1), %st -+ fsubp %st, %st(4) -+ fmul %st(1), %st -+ faddp %st, %st(3) -+ # yl = log2e_hi - yh -+ movq $0x3de705fc2f000000,%rax -+ pushq %rax -+ fldl (%esp) -+ # fpu stack: 2^hi x lo xh xl yl -+ # lo += xh*yl + xl*yl -+ fmul %st, %st(2) -+ fmulp %st, %st(1) -+ fxch %st(2) -+ faddp -+ faddp -+ # log2e_lo -+ movq $0xbfbe,%rax -+ pushq %rax -+ movq $0x82f0025f2dc582ee,%rax -+ pushq %rax -+ fldt (%esp) -+ add $40,%esp -+ # fpu stack: 2^hi x lo log2e_lo -+ # lo += log2e_lo*x -+ # return 2^hi + 2^hi (2^lo - 1) -+ fmulp %st, %st(2) -+ faddp -+ f2xm1 -+ fmul %st(1), %st -+ faddp -+1: add $48, %esp -+ ret -diff -Nur musl-0.9.15/src/math/x32/expm1l.s musl-git/src/math/x32/expm1l.s ---- musl-0.9.15/src/math/x32/expm1l.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/expm1l.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+# see exp2l.s -diff -Nur musl-0.9.15/src/math/x32/fabsf.s musl-git/src/math/x32/fabsf.s ---- musl-0.9.15/src/math/x32/fabsf.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/fabsf.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,7 @@ -+.global fabsf -+.type fabsf,@function -+fabsf: -+ mov $0x7fffffff,%eax -+ movq %rax,%xmm1 -+ andps %xmm1,%xmm0 -+ ret -diff -Nur musl-0.9.15/src/math/x32/fabsl.s musl-git/src/math/x32/fabsl.s ---- musl-0.9.15/src/math/x32/fabsl.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/fabsl.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,6 @@ -+.global fabsl -+.type fabsl,@function -+fabsl: -+ fldt 8(%esp) -+ fabs -+ ret -diff -Nur musl-0.9.15/src/math/x32/fabs.s musl-git/src/math/x32/fabs.s ---- musl-0.9.15/src/math/x32/fabs.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/fabs.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,9 @@ -+.global fabs -+.type fabs,@function -+fabs: -+ xor %eax,%eax -+ dec %rax -+ shr %rax -+ movq %rax,%xmm1 -+ andpd %xmm1,%xmm0 -+ ret -diff -Nur musl-0.9.15/src/math/x32/floorl.s musl-git/src/math/x32/floorl.s ---- musl-0.9.15/src/math/x32/floorl.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/floorl.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,27 @@ -+.global floorl -+.type floorl,@function -+floorl: -+ fldt 8(%esp) -+1: mov $0x7,%al -+1: fstcw 8(%esp) -+ mov 9(%esp),%ah -+ mov %al,9(%esp) -+ fldcw 8(%esp) -+ frndint -+ mov %ah,9(%esp) -+ fldcw 8(%esp) -+ ret -+ -+.global ceill -+.type ceill,@function -+ceill: -+ fldt 8(%esp) -+ mov $0xb,%al -+ jmp 1b -+ -+.global truncl -+.type truncl,@function -+truncl: -+ fldt 8(%esp) -+ mov $0xf,%al -+ jmp 1b -diff -Nur musl-0.9.15/src/math/x32/fmodl.s musl-git/src/math/x32/fmodl.s ---- musl-0.9.15/src/math/x32/fmodl.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/fmodl.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,11 @@ -+.global fmodl -+.type fmodl,@function -+fmodl: -+ fldt 24(%esp) -+ fldt 8(%esp) -+1: fprem -+ fstsw %ax -+ sahf -+ jp 1b -+ fstp %st(1) -+ ret -diff -Nur musl-0.9.15/src/math/x32/llrintf.s musl-git/src/math/x32/llrintf.s ---- musl-0.9.15/src/math/x32/llrintf.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/llrintf.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,5 @@ -+.global llrintf -+.type llrintf,@function -+llrintf: -+ cvtss2si %xmm0,%rax -+ ret -diff -Nur musl-0.9.15/src/math/x32/llrintl.s musl-git/src/math/x32/llrintl.s ---- musl-0.9.15/src/math/x32/llrintl.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/llrintl.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,7 @@ -+.global llrintl -+.type llrintl,@function -+llrintl: -+ fldt 8(%esp) -+ fistpll 8(%esp) -+ mov 8(%esp),%rax -+ ret -diff -Nur musl-0.9.15/src/math/x32/llrint.s musl-git/src/math/x32/llrint.s ---- musl-0.9.15/src/math/x32/llrint.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/llrint.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,5 @@ -+.global llrint -+.type llrint,@function -+llrint: -+ cvtsd2si %xmm0,%rax -+ ret -diff -Nur musl-0.9.15/src/math/x32/log10l.s musl-git/src/math/x32/log10l.s ---- musl-0.9.15/src/math/x32/log10l.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/log10l.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,7 @@ -+.global log10l -+.type log10l,@function -+log10l: -+ fldlg2 -+ fldt 8(%esp) -+ fyl2x -+ ret -diff -Nur musl-0.9.15/src/math/x32/log1pl.s musl-git/src/math/x32/log1pl.s ---- musl-0.9.15/src/math/x32/log1pl.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/log1pl.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,15 @@ -+.global log1pl -+.type log1pl,@function -+log1pl: -+ mov 14(%esp),%eax -+ fldln2 -+ and $0x7fffffff,%eax -+ fldt 8(%esp) -+ cmp $0x3ffd9400,%eax -+ ja 1f -+ fyl2xp1 -+ ret -+1: fld1 -+ faddp -+ fyl2x -+ ret -diff -Nur musl-0.9.15/src/math/x32/log2l.s musl-git/src/math/x32/log2l.s ---- musl-0.9.15/src/math/x32/log2l.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/log2l.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,7 @@ -+.global log2l -+.type log2l,@function -+log2l: -+ fld1 -+ fldt 8(%esp) -+ fyl2x -+ ret -diff -Nur musl-0.9.15/src/math/x32/logl.s musl-git/src/math/x32/logl.s ---- musl-0.9.15/src/math/x32/logl.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/logl.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,7 @@ -+.global logl -+.type logl,@function -+logl: -+ fldln2 -+ fldt 8(%esp) -+ fyl2x -+ ret -diff -Nur musl-0.9.15/src/math/x32/lrintf.s musl-git/src/math/x32/lrintf.s ---- musl-0.9.15/src/math/x32/lrintf.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/lrintf.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,5 @@ -+.global lrintf -+.type lrintf,@function -+lrintf: -+ cvtss2si %xmm0,%rax -+ ret -diff -Nur musl-0.9.15/src/math/x32/lrintl.s musl-git/src/math/x32/lrintl.s ---- musl-0.9.15/src/math/x32/lrintl.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/lrintl.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,7 @@ -+.global lrintl -+.type lrintl,@function -+lrintl: -+ fldt 8(%esp) -+ fistpll 8(%esp) -+ mov 8(%esp),%rax -+ ret -diff -Nur musl-0.9.15/src/math/x32/lrint.s musl-git/src/math/x32/lrint.s ---- musl-0.9.15/src/math/x32/lrint.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/lrint.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,5 @@ -+.global lrint -+.type lrint,@function -+lrint: -+ cvtsd2si %xmm0,%rax -+ ret -diff -Nur musl-0.9.15/src/math/x32/remainderl.s musl-git/src/math/x32/remainderl.s ---- musl-0.9.15/src/math/x32/remainderl.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/remainderl.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,11 @@ -+.global remainderl -+.type remainderl,@function -+remainderl: -+ fldt 24(%esp) -+ fldt 8(%esp) -+1: fprem1 -+ fstsw %ax -+ sahf -+ jp 1b -+ fstp %st(1) -+ ret -diff -Nur musl-0.9.15/src/math/x32/rintl.s musl-git/src/math/x32/rintl.s ---- musl-0.9.15/src/math/x32/rintl.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/rintl.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,6 @@ -+.global rintl -+.type rintl,@function -+rintl: -+ fldt 8(%esp) -+ frndint -+ ret -diff -Nur musl-0.9.15/src/math/x32/sqrtf.s musl-git/src/math/x32/sqrtf.s ---- musl-0.9.15/src/math/x32/sqrtf.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/sqrtf.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,4 @@ -+.global sqrtf -+.type sqrtf,@function -+sqrtf: sqrtss %xmm0, %xmm0 -+ ret -diff -Nur musl-0.9.15/src/math/x32/sqrtl.s musl-git/src/math/x32/sqrtl.s ---- musl-0.9.15/src/math/x32/sqrtl.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/sqrtl.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,5 @@ -+.global sqrtl -+.type sqrtl,@function -+sqrtl: fldt 8(%esp) -+ fsqrt -+ ret -diff -Nur musl-0.9.15/src/math/x32/sqrt.s musl-git/src/math/x32/sqrt.s ---- musl-0.9.15/src/math/x32/sqrt.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/sqrt.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,4 @@ -+.global sqrt -+.type sqrt,@function -+sqrt: sqrtsd %xmm0, %xmm0 -+ ret -diff -Nur musl-0.9.15/src/math/x32/truncl.s musl-git/src/math/x32/truncl.s ---- musl-0.9.15/src/math/x32/truncl.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/math/x32/truncl.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+# see floorl.s -diff -Nur musl-0.9.15/src/misc/nftw.c musl-git/src/misc/nftw.c ---- musl-0.9.15/src/misc/nftw.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/misc/nftw.c 2014-03-10 16:52:06.000000000 +0100 -@@ -46,8 +46,7 @@ - type = FTW_F; - } - -- if ((flags & FTW_MOUNT) && h -- && (st.st_dev != h->dev || st.st_ino != h->ino)) -+ if ((flags & FTW_MOUNT) && h && st.st_dev != h->dev) - return 0; - - new.chain = h; -diff -Nur musl-0.9.15/src/network/accept4.c musl-git/src/network/accept4.c ---- musl-0.9.15/src/network/accept4.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/network/accept4.c 2014-03-10 16:52:06.000000000 +0100 -@@ -1,9 +1,20 @@ - #define _GNU_SOURCE - #include <sys/socket.h> -+#include <errno.h> -+#include <fcntl.h> - #include "syscall.h" - #include "libc.h" - - int accept4(int fd, struct sockaddr *restrict addr, socklen_t *restrict len, int flg) - { -- return socketcall_cp(accept4, fd, addr, len, flg, 0, 0); -+ if (!flg) return accept(fd, addr, len); -+ int ret = socketcall_cp(accept4, fd, addr, len, flg, 0, 0); -+ if (ret>=0 || (errno != ENOSYS && errno != EINVAL)) return ret; -+ ret = accept(fd, addr, len); -+ if (ret<0) return ret; -+ if (flg & SOCK_CLOEXEC) -+ __syscall(SYS_fcntl, ret, F_SETFD, FD_CLOEXEC); -+ if (flg & SOCK_NONBLOCK) -+ __syscall(SYS_fcntl, ret, F_SETFL, O_NONBLOCK); -+ return ret; - } -diff -Nur musl-0.9.15/src/network/inet_legacy.c musl-git/src/network/inet_legacy.c ---- musl-0.9.15/src/network/inet_legacy.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/network/inet_legacy.c 2014-03-10 16:52:06.000000000 +0100 -@@ -16,9 +16,8 @@ - return 1; - } - --struct in_addr inet_makeaddr(int net, int host) -+struct in_addr inet_makeaddr(in_addr_t n, in_addr_t h) - { -- uint32_t n = net, h = host; - if (n < 256) h |= n<<24; - else if (n < 65536) h |= n<<16; - else h |= n<<8; -diff -Nur musl-0.9.15/src/network/proto.c musl-git/src/network/proto.c ---- musl-0.9.15/src/network/proto.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/network/proto.c 2014-03-10 16:52:06.000000000 +0100 -@@ -4,7 +4,7 @@ - /* do we really need all these?? */ - - static int idx; --static const unsigned char protos[][6] = { -+static const unsigned char protos[][8] = { - "\000ip", - "\001icmp", - "\002igmp", -@@ -13,7 +13,9 @@ - "\014pup", - "\021udp", - "\026idp", -- "\377raw" -+ "\051ipv6", -+ "\072icmpv6", -+ "\377raw", - "\0\0" - }; - -diff -Nur musl-0.9.15/src/prng/random.c musl-git/src/prng/random.c ---- musl-0.9.15/src/prng/random.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/prng/random.c 2014-03-10 16:52:06.000000000 +0100 -@@ -1,10 +1,3 @@ --/* -- * random.c - Copyright © 2011 Szabolcs Nagy -- * Permission to use, copy, modify, and/or distribute this code -- * for any purpose with or without fee is hereby granted. -- * There is no warranty. --*/ -- - #include <stdlib.h> - #include <stdint.h> - #include "libc.h" -@@ -12,11 +5,7 @@ - /* - this code uses the same lagged fibonacci generator as the - original bsd random implementation except for the seeding -- --different seeds produce different sequences with long period --(other libcs seed the state with a park-miller generator --when seed=0 some fail to produce good random sequence --others produce the same sequence as another seed) -+which was broken in the original - */ - - static uint32_t init[] = { -@@ -98,6 +87,7 @@ - n = 63; - x = (uint32_t*)state + 1; - __srandom(seed); -+ savestate(); - UNLOCK(lock); - return old; - } -diff -Nur musl-0.9.15/src/process/posix_spawn.c musl-git/src/process/posix_spawn.c ---- musl-0.9.15/src/process/posix_spawn.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/process/posix_spawn.c 2014-03-10 16:52:06.000000000 +0100 -@@ -166,7 +166,7 @@ - - close(args.p[0]); - -- if (!ec) *res = pid; -+ if (!ec && res) *res = pid; - - pthread_sigmask(SIG_SETMASK, &args.oldmask, 0); - pthread_setcancelstate(cs, 0); -diff -Nur musl-0.9.15/src/process/x32/vfork.s musl-git/src/process/x32/vfork.s ---- musl-0.9.15/src/process/x32/vfork.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/process/x32/vfork.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,12 @@ -+.global __vfork -+.weak vfork -+.type __vfork,@function -+.type vfork,@function -+__vfork: -+vfork: -+ pop %rdx -+ mov $0x4000003a,%eax /* SYS_vfork */ -+ syscall -+ push %rdx -+ mov %rax,%rdi -+ jmp __syscall_ret -diff -Nur musl-0.9.15/src/setjmp/mipsel-sf/longjmp.sub musl-git/src/setjmp/mipsel-sf/longjmp.sub ---- musl-0.9.15/src/setjmp/mipsel-sf/longjmp.sub 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/setjmp/mipsel-sf/longjmp.sub 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+../mips-sf/longjmp.s -diff -Nur musl-0.9.15/src/setjmp/mipsel-sf/setjmp.sub musl-git/src/setjmp/mipsel-sf/setjmp.sub ---- musl-0.9.15/src/setjmp/mipsel-sf/setjmp.sub 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/setjmp/mipsel-sf/setjmp.sub 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+../mips-sf/setjmp.s -diff -Nur musl-0.9.15/src/setjmp/mips-sf/longjmp.s musl-git/src/setjmp/mips-sf/longjmp.s ---- musl-0.9.15/src/setjmp/mips-sf/longjmp.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/setjmp/mips-sf/longjmp.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,25 @@ -+.set noreorder -+ -+.global _longjmp -+.global longjmp -+.type _longjmp,@function -+.type longjmp,@function -+_longjmp: -+longjmp: -+ move $2, $5 -+ bne $2, $0, 1f -+ nop -+ addu $2, $2, 1 -+1: lw $ra, 0($4) -+ lw $sp, 4($4) -+ lw $16, 8($4) -+ lw $17, 12($4) -+ lw $18, 16($4) -+ lw $19, 20($4) -+ lw $20, 24($4) -+ lw $21, 28($4) -+ lw $22, 32($4) -+ lw $23, 36($4) -+ lw $30, 40($4) -+ jr $ra -+ lw $28, 44($4) -diff -Nur musl-0.9.15/src/setjmp/mips-sf/longjmp.sub musl-git/src/setjmp/mips-sf/longjmp.sub ---- musl-0.9.15/src/setjmp/mips-sf/longjmp.sub 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/setjmp/mips-sf/longjmp.sub 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+longjmp.s -diff -Nur musl-0.9.15/src/setjmp/mips-sf/setjmp.s musl-git/src/setjmp/mips-sf/setjmp.s ---- musl-0.9.15/src/setjmp/mips-sf/setjmp.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/setjmp/mips-sf/setjmp.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,25 @@ -+.set noreorder -+ -+.global __setjmp -+.global _setjmp -+.global setjmp -+.type __setjmp,@function -+.type _setjmp,@function -+.type setjmp,@function -+__setjmp: -+_setjmp: -+setjmp: -+ sw $ra, 0($4) -+ sw $sp, 4($4) -+ sw $16, 8($4) -+ sw $17, 12($4) -+ sw $18, 16($4) -+ sw $19, 20($4) -+ sw $20, 24($4) -+ sw $21, 28($4) -+ sw $22, 32($4) -+ sw $23, 36($4) -+ sw $30, 40($4) -+ sw $28, 44($4) -+ jr $ra -+ li $2, 0 -diff -Nur musl-0.9.15/src/setjmp/mips-sf/setjmp.sub musl-git/src/setjmp/mips-sf/setjmp.sub ---- musl-0.9.15/src/setjmp/mips-sf/setjmp.sub 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/setjmp/mips-sf/setjmp.sub 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+setjmp.s -diff -Nur musl-0.9.15/src/setjmp/sh/longjmp.s musl-git/src/setjmp/sh/longjmp.s ---- musl-0.9.15/src/setjmp/sh/longjmp.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/setjmp/sh/longjmp.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,26 @@ -+.global _longjmp -+.global longjmp -+.type _longjmp, @function -+.type longjmp, @function -+_longjmp: -+longjmp: -+ mov.l @r4+, r8 -+ mov.l @r4+, r9 -+ mov.l @r4+, r10 -+ mov.l @r4+, r11 -+ mov.l @r4+, r12 -+ mov.l @r4+, r13 -+ mov.l @r4+, r14 -+ mov.l @r4+, r15 -+ lds.l @r4+, pr -+ fmov.s @r4+, fr12 -+ fmov.s @r4+, fr13 -+ fmov.s @r4+, fr14 -+ fmov.s @r4+, fr15 -+ -+ tst r5, r5 -+ movt r0 -+ add r5, r0 -+ -+ rts -+ nop -diff -Nur musl-0.9.15/src/setjmp/sh/setjmp.s musl-git/src/setjmp/sh/setjmp.s ---- musl-0.9.15/src/setjmp/sh/setjmp.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/setjmp/sh/setjmp.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,25 @@ -+.global __setjmp -+.global _setjmp -+.global setjmp -+.type __setjmp, @function -+.type _setjmp, @function -+.type setjmp, @function -+__setjmp: -+_setjmp: -+setjmp: -+ add #52, r4 -+ fmov.s fr15, @-r4 -+ fmov.s fr14, @-r4 -+ fmov.s fr13, @-r4 -+ fmov.s fr12, @-r4 -+ sts.l pr, @-r4 -+ mov.l r15 @-r4 -+ mov.l r14, @-r4 -+ mov.l r13, @-r4 -+ mov.l r12, @-r4 -+ mov.l r11, @-r4 -+ mov.l r10, @-r4 -+ mov.l r9, @-r4 -+ mov.l r8, @-r4 -+ rts -+ mov #0, r0 -diff -Nur musl-0.9.15/src/setjmp/sheb-nofpu/longjmp.sub musl-git/src/setjmp/sheb-nofpu/longjmp.sub ---- musl-0.9.15/src/setjmp/sheb-nofpu/longjmp.sub 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/setjmp/sheb-nofpu/longjmp.sub 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+../sh-nofpu/longjmp.s -diff -Nur musl-0.9.15/src/setjmp/sheb-nofpu/setjmp.sub musl-git/src/setjmp/sheb-nofpu/setjmp.sub ---- musl-0.9.15/src/setjmp/sheb-nofpu/setjmp.sub 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/setjmp/sheb-nofpu/setjmp.sub 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+../sh-nofpu/setjmp.s -diff -Nur musl-0.9.15/src/setjmp/sh-nofpu/longjmp.s musl-git/src/setjmp/sh-nofpu/longjmp.s ---- musl-0.9.15/src/setjmp/sh-nofpu/longjmp.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/setjmp/sh-nofpu/longjmp.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,22 @@ -+.global _longjmp -+.global longjmp -+.type _longjmp, @function -+.type longjmp, @function -+_longjmp: -+longjmp: -+ mov.l @r4+, r8 -+ mov.l @r4+, r9 -+ mov.l @r4+, r10 -+ mov.l @r4+, r11 -+ mov.l @r4+, r12 -+ mov.l @r4+, r13 -+ mov.l @r4+, r14 -+ mov.l @r4+, r15 -+ lds.l @r4+, pr -+ -+ tst r5, r5 -+ movt r0 -+ add r5, r0 -+ -+ rts -+ nop -diff -Nur musl-0.9.15/src/setjmp/sh-nofpu/longjmp.sub musl-git/src/setjmp/sh-nofpu/longjmp.sub ---- musl-0.9.15/src/setjmp/sh-nofpu/longjmp.sub 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/setjmp/sh-nofpu/longjmp.sub 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+longjmp.s -diff -Nur musl-0.9.15/src/setjmp/sh-nofpu/setjmp.s musl-git/src/setjmp/sh-nofpu/setjmp.s ---- musl-0.9.15/src/setjmp/sh-nofpu/setjmp.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/setjmp/sh-nofpu/setjmp.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,21 @@ -+.global __setjmp -+.global _setjmp -+.global setjmp -+.type __setjmp, @function -+.type _setjmp, @function -+.type setjmp, @function -+__setjmp: -+_setjmp: -+setjmp: -+ add #36, r4 -+ sts.l pr, @-r4 -+ mov.l r15 @-r4 -+ mov.l r14, @-r4 -+ mov.l r13, @-r4 -+ mov.l r12, @-r4 -+ mov.l r11, @-r4 -+ mov.l r10, @-r4 -+ mov.l r9, @-r4 -+ mov.l r8, @-r4 -+ rts -+ mov #0, r0 -diff -Nur musl-0.9.15/src/setjmp/sh-nofpu/setjmp.sub musl-git/src/setjmp/sh-nofpu/setjmp.sub ---- musl-0.9.15/src/setjmp/sh-nofpu/setjmp.sub 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/setjmp/sh-nofpu/setjmp.sub 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1 @@ -+setjmp.s -diff -Nur musl-0.9.15/src/setjmp/x32/longjmp.s musl-git/src/setjmp/x32/longjmp.s ---- musl-0.9.15/src/setjmp/x32/longjmp.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/setjmp/x32/longjmp.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,22 @@ -+/* Copyright 2011-2012 Nicholas J. Kain, licensed under standard MIT license */ -+.global _longjmp -+.global longjmp -+.type _longjmp,@function -+.type longjmp,@function -+_longjmp: -+longjmp: -+ mov %rsi,%rax /* val will be longjmp return */ -+ test %rax,%rax -+ jnz 1f -+ inc %rax /* if val==0, val=1 per longjmp semantics */ -+1: -+ mov (%rdi),%rbx /* rdi is the jmp_buf, restore regs from it */ -+ mov 8(%rdi),%rbp -+ mov 16(%rdi),%r12 -+ mov 24(%rdi),%r13 -+ mov 32(%rdi),%r14 -+ mov 40(%rdi),%r15 -+ mov 48(%rdi),%rdx /* this ends up being the stack pointer */ -+ mov %rdx,%rsp -+ mov 56(%rdi),%rdx /* this is the instruction pointer */ -+ jmp *%rdx /* goto saved address without altering rsp */ -diff -Nur musl-0.9.15/src/setjmp/x32/setjmp.s musl-git/src/setjmp/x32/setjmp.s ---- musl-0.9.15/src/setjmp/x32/setjmp.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/setjmp/x32/setjmp.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,22 @@ -+/* Copyright 2011-2012 Nicholas J. Kain, licensed under standard MIT license */ -+.global __setjmp -+.global _setjmp -+.global setjmp -+.type __setjmp,@function -+.type _setjmp,@function -+.type setjmp,@function -+__setjmp: -+_setjmp: -+setjmp: -+ mov %rbx,(%rdi) /* rdi is jmp_buf, move registers onto it */ -+ mov %rbp,8(%rdi) -+ mov %r12,16(%rdi) -+ mov %r13,24(%rdi) -+ mov %r14,32(%rdi) -+ mov %r15,40(%rdi) -+ lea 8(%rsp),%rdx /* this is our rsp WITHOUT current ret addr */ -+ mov %rdx,48(%rdi) -+ mov (%rsp),%rdx /* save return addr ptr for new rip */ -+ mov %rdx,56(%rdi) -+ xor %rax,%rax /* always return 0 */ -+ ret -diff -Nur musl-0.9.15/src/signal/sh/restore.s musl-git/src/signal/sh/restore.s ---- musl-0.9.15/src/signal/sh/restore.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/signal/sh/restore.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,24 @@ -+.global __restore -+.type __restore, @function -+__restore: -+ mov #119, r3 !__NR_sigreturn -+ trapa #16 -+ -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ -+.global __restore_rt -+.type __restore_rt, @function -+__restore_rt: -+ mov #100, r3 !__NR_rt_sigreturn -+ add #73, r3 -+ trapa #16 -+ -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -diff -Nur musl-0.9.15/src/signal/sh/sigsetjmp.s musl-git/src/signal/sh/sigsetjmp.s ---- musl-0.9.15/src/signal/sh/sigsetjmp.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/signal/sh/sigsetjmp.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,27 @@ -+.global sigsetjmp -+.type sigsetjmp, @function -+sigsetjmp: -+ mov.l r5, @(36,r4) -+ tst r5, r5 -+ bf 2f -+ -+ sts.l pr, @-r15 -+ mov.l r4, @-r15 -+ mov r4, r6 -+ add #40, r6 -+ mov #0, r5 -+ mov #2, r4 -+ mov.l L1, r0 -+ bsrf r0 -+ nop -+1: mov.l @r15+, r4 -+ lds.l @r15+, pr -+ -+2: mov.l L2, r0 -+ braf r0 -+ nop -+3: -+ -+.align 2 -+L1: .long pthread_sigmask@PLT-(1b-.) -+L2: .long setjmp@PLT-(3b-.) -diff -Nur musl-0.9.15/src/signal/sigandset.c musl-git/src/signal/sigandset.c ---- musl-0.9.15/src/signal/sigandset.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/signal/sigandset.c 2014-03-10 16:52:06.000000000 +0100 -@@ -3,7 +3,7 @@ - - #define SST_SIZE (_NSIG/8/sizeof(long)) - --int sigandset(sigset_t *dest, sigset_t *left, sigset_t *right) -+int sigandset(sigset_t *dest, const sigset_t *left, const sigset_t *right) - { - unsigned long i = 0, *d = (void*) dest, *l = (void*) left, *r = (void*) right; - for(; i < SST_SIZE; i++) d[i] = l[i] & r[i]; -diff -Nur musl-0.9.15/src/signal/sigorset.c musl-git/src/signal/sigorset.c ---- musl-0.9.15/src/signal/sigorset.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/signal/sigorset.c 2014-03-10 16:52:06.000000000 +0100 -@@ -3,7 +3,7 @@ - - #define SST_SIZE (_NSIG/8/sizeof(long)) - --int sigorset(sigset_t *dest, sigset_t *left, sigset_t *right) -+int sigorset(sigset_t *dest, const sigset_t *left, const sigset_t *right) - { - unsigned long i = 0, *d = (void*) dest, *l = (void*) left, *r = (void*) right; - for(; i < SST_SIZE; i++) d[i] = l[i] | r[i]; -diff -Nur musl-0.9.15/src/signal/x32/restore.s musl-git/src/signal/x32/restore.s ---- musl-0.9.15/src/signal/x32/restore.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/signal/x32/restore.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,8 @@ -+.global __restore_rt -+.global __restore -+.type __restore_rt,@function -+.type __restore,@function -+__restore_rt: -+__restore: -+ movl $0x40000201, %eax /* SYS_rt_sigreturn */ -+ syscall -diff -Nur musl-0.9.15/src/signal/x32/sigsetjmp.s musl-git/src/signal/x32/sigsetjmp.s ---- musl-0.9.15/src/signal/x32/sigsetjmp.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/signal/x32/sigsetjmp.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,14 @@ -+/* Copyright 2011-2012 Nicholas J. Kain, licensed under standard MIT license */ -+.global sigsetjmp -+.type sigsetjmp,@function -+sigsetjmp: -+ andl %esi,%esi -+ movq %rsi,64(%rdi) -+ jz 1f -+ pushq %rdi -+ leaq 72(%rdi),%rdx -+ xorl %esi,%esi -+ movl $2,%edi -+ call sigprocmask -+ popq %rdi -+1: jmp setjmp -diff -Nur musl-0.9.15/src/stdio/__fdopen.c musl-git/src/stdio/__fdopen.c ---- musl-0.9.15/src/stdio/__fdopen.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/stdio/__fdopen.c 2014-03-10 16:52:06.000000000 +0100 -@@ -32,7 +32,9 @@ - /* Set append mode on fd if opened for append */ - if (*mode == 'a') { - int flags = __syscall(SYS_fcntl, fd, F_GETFL); -- __syscall(SYS_fcntl, fd, F_SETFL, flags | O_APPEND); -+ if (!(flags & O_APPEND)) -+ __syscall(SYS_fcntl, fd, F_SETFL, flags | O_APPEND); -+ f->flags |= F_APP; - } - - f->fd = fd; -diff -Nur musl-0.9.15/src/stdio/ftell.c musl-git/src/stdio/ftell.c ---- musl-0.9.15/src/stdio/ftell.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/stdio/ftell.c 2014-03-10 16:52:06.000000000 +0100 -@@ -4,7 +4,9 @@ - - off_t __ftello_unlocked(FILE *f) - { -- off_t pos = f->seek(f, 0, SEEK_CUR); -+ off_t pos = f->seek(f, 0, -+ (f->flags & F_APP) && f->wpos > f->wbase -+ ? SEEK_END : SEEK_CUR); - if (pos < 0) return pos; - - /* Adjust for data in buffer. */ -diff -Nur musl-0.9.15/src/stdio/vfprintf.c musl-git/src/stdio/vfprintf.c ---- musl-0.9.15/src/stdio/vfprintf.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/stdio/vfprintf.c 2014-03-10 16:52:06.000000000 +0100 -@@ -207,7 +207,8 @@ - - static int fmt_fp(FILE *f, long double y, int w, int p, int fl, int t) - { -- uint32_t big[(LDBL_MAX_EXP+LDBL_MANT_DIG)/9+1]; -+ uint32_t big[(LDBL_MANT_DIG+28)/29 + 1 // mantissa expansion -+ + (LDBL_MAX_EXP+LDBL_MANT_DIG+28+8)/9]; // exponent expansion - uint32_t *a, *d, *r, *z; - int e2=0, e, i, j, l; - char buf[9+LDBL_MANT_DIG/4], *s; -@@ -313,7 +314,7 @@ - } - while (e2<0) { - uint32_t carry=0, *b; -- int sh=MIN(9,-e2); -+ int sh=MIN(9,-e2), need=1+(p+LDBL_MANT_DIG/3+8)/9; - for (d=a; d<z; d++) { - uint32_t rm = *d & (1<<sh)-1; - *d = (*d>>sh) + carry; -@@ -323,7 +324,7 @@ - if (carry) *z++ = carry; - /* Avoid (slow!) computation past requested precision */ - b = (t|32)=='f' ? r : a; -- if (z-b > 2+p/9) z = b+2+p/9; -+ if (z-b > need) z = b+need; - e2+=sh; - } - -diff -Nur musl-0.9.15/src/stdio/vfscanf.c musl-git/src/stdio/vfscanf.c ---- musl-0.9.15/src/stdio/vfscanf.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/stdio/vfscanf.c 2014-03-10 16:52:06.000000000 +0100 -@@ -328,3 +328,5 @@ - FUNLOCK(f); - return matches; - } -+ -+weak_alias(vfscanf,__isoc99_vfscanf); -diff -Nur musl-0.9.15/src/thread/arm/clone.s musl-git/src/thread/arm/clone.s ---- musl-0.9.15/src/thread/arm/clone.s 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/thread/arm/clone.s 2014-03-10 16:52:06.000000000 +0100 -@@ -1,10 +1,7 @@ - .text - .global __clone --.weak clone - .type __clone,%function --.type clone,%function - __clone: --clone: - stmfd sp!,{r4,r5,r6,r7} - mov r7,#120 - mov r6,r3 -diff -Nur musl-0.9.15/src/thread/cancel_dummy.c musl-git/src/thread/cancel_dummy.c ---- musl-0.9.15/src/thread/cancel_dummy.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/thread/cancel_dummy.c 2014-03-10 16:52:06.000000000 +0100 -@@ -1,6 +1,9 @@ - #include "pthread_impl.h" -+#include "syscall.h" - --static long sccp(long nr, long u, long v, long w, long x, long y, long z) -+static long sccp(syscall_arg_t nr, -+ syscall_arg_t u, syscall_arg_t v, syscall_arg_t w, -+ syscall_arg_t x, syscall_arg_t y, syscall_arg_t z) - { - return (__syscall)(nr, u, v, w, x, y, z); - } -diff -Nur musl-0.9.15/src/thread/cancel_impl.c musl-git/src/thread/cancel_impl.c ---- musl-0.9.15/src/thread/cancel_impl.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/thread/cancel_impl.c 2014-03-10 16:52:06.000000000 +0100 -@@ -1,4 +1,5 @@ - #include "pthread_impl.h" -+#include "syscall.h" - - void __cancel() - { -@@ -8,9 +9,13 @@ - pthread_exit(PTHREAD_CANCELED); - } - --long __syscall_cp_asm(volatile void *, long, long, long, long, long, long, long); -+long __syscall_cp_asm(volatile void *, syscall_arg_t, -+ syscall_arg_t, syscall_arg_t, syscall_arg_t, -+ syscall_arg_t, syscall_arg_t, syscall_arg_t); - --long (__syscall_cp)(long nr, long u, long v, long w, long x, long y, long z) -+long (__syscall_cp)(syscall_arg_t nr, -+ syscall_arg_t u, syscall_arg_t v, syscall_arg_t w, -+ syscall_arg_t x, syscall_arg_t y, syscall_arg_t z) - { - pthread_t self; - long r; -diff -Nur musl-0.9.15/src/thread/clone.c musl-git/src/thread/clone.c ---- musl-0.9.15/src/thread/clone.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/thread/clone.c 2014-03-10 16:52:06.000000000 +0100 -@@ -1,10 +1,7 @@ - #include <errno.h> --#include "libc.h" -+#include "pthread_impl.h" - - int __clone(int (*func)(void *), void *stack, int flags, void *arg, ...) - { -- errno = ENOSYS; -- return -1; -+ return -ENOSYS; - } -- --weak_alias(__clone, clone); -diff -Nur musl-0.9.15/src/thread/i386/clone.s musl-git/src/thread/i386/clone.s ---- musl-0.9.15/src/thread/i386/clone.s 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/thread/i386/clone.s 2014-03-10 16:52:06.000000000 +0100 -@@ -1,10 +1,7 @@ - .text - .global __clone --.weak clone - .type __clone,@function --.type clone,@function - __clone: --clone: - push %ebp - mov %esp,%ebp - push %ebx -diff -Nur musl-0.9.15/src/thread/microblaze/clone.s musl-git/src/thread/microblaze/clone.s ---- musl-0.9.15/src/thread/microblaze/clone.s 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/thread/microblaze/clone.s 2014-03-10 16:52:06.000000000 +0100 -@@ -1,14 +1,11 @@ - .global __clone --.weak clone - .type __clone,@function --.type clone,@function - - # r5, r6, r7, r8, r9, r10, stack - # fn, st, fl, ar, pt, tl, ct - # fl, st, __, pt, ct, tl - - __clone: --clone: - andi r6, r6, -16 - addi r6, r6, -16 - swi r5, r6, 0 -@@ -23,7 +20,7 @@ - beqi r3, 1f - rtsd r15, 8 - nop -- -+ - 1: lwi r3, r1, 0 - lwi r5, r1, 4 - brald r15, r3 -diff -Nur musl-0.9.15/src/thread/sh/clone.s musl-git/src/thread/sh/clone.s ---- musl-0.9.15/src/thread/sh/clone.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/thread/sh/clone.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,47 @@ -+.text -+.global __clone -+.type __clone, @function -+__clone: -+! incoming: fn stack flags arg ptid tls ctid -+! r4 r5 r6 r7 @r15 @(4,r15) @(8,r15) -+ -+ mov #-16, r0 -+ and r0, r5 -+ -+ mov r4, r1 ! r1 = fn -+ mov r7, r2 ! r2 = arg -+ -+ mov #120, r3 ! r3 = __NR_clone -+ mov r6, r4 ! r4 = flags -+ !mov r5, r5 ! r5 = stack -+ mov.l @r15, r6 ! r6 = ptid -+ mov.l @(8,r15), r7 ! r7 = ctid -+ mov.l @(4,r15), r0 ! r0 = tls -+ trapa #21 -+ -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ -+ cmp/eq #0, r0 -+ bt 1f -+ -+ ! we are the parent, return -+ rts -+ nop -+ -+1: ! we are the child, call fn(arg) -+ jsr @r1 -+ mov r2, r4 -+ -+ mov #1, r3 ! __NR_exit -+ mov r0, r4 -+ trapa #17 -+ -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -diff -Nur musl-0.9.15/src/thread/sh/__set_thread_area.s musl-git/src/thread/sh/__set_thread_area.s ---- musl-0.9.15/src/thread/sh/__set_thread_area.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/thread/sh/__set_thread_area.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,5 @@ -+.global __set_thread_area -+.type __set_thread_area, @function -+__set_thread_area: -+ rts -+ ldc r4, gbr -diff -Nur musl-0.9.15/src/thread/sh/syscall_cp.s musl-git/src/thread/sh/syscall_cp.s ---- musl-0.9.15/src/thread/sh/syscall_cp.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/thread/sh/syscall_cp.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,39 @@ -+.text -+.global __syscall_cp_asm -+.type __syscall_cp_asm, @function -+__syscall_cp_asm: -+ -+.global __cp_begin -+__cp_begin: -+ mov.l @r4, r4 -+ tst r4, r4 -+ bt 2f -+ -+ mov.l L1, r0 -+ braf r0 -+ nop -+1: -+ -+.align 2 -+L1: .long __cancel@PLT-(1b-.) -+ -+2: mov r5, r3 -+ mov r6, r4 -+ mov r7, r5 -+ mov.l @r15, r6 -+ mov.l @(4,r15), r7 -+ mov.l @(8,r15), r0 -+ mov.l @(12,r15), r1 -+ trapa #22 -+ -+.global __cp_end -+__cp_end: -+ ! work around hardware bug -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ -+ rts -+ nop -diff -Nur musl-0.9.15/src/thread/sh/__unmapself.s musl-git/src/thread/sh/__unmapself.s ---- musl-0.9.15/src/thread/sh/__unmapself.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/thread/sh/__unmapself.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,22 @@ -+.text -+.global __unmapself -+.type __unmapself, @function -+__unmapself: -+ mov #91, r3 ! SYS_munmap -+ trapa #18 -+ -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ -+ mov #1, r3 ! SYS_exit -+ mov #0, r4 -+ trapa #17 -+ -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -diff -Nur musl-0.9.15/src/thread/__wait.c musl-git/src/thread/__wait.c ---- musl-0.9.15/src/thread/__wait.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/thread/__wait.c 2014-03-10 16:52:06.000000000 +0100 -@@ -10,6 +10,6 @@ - } - if (waiters) a_inc(waiters); - while (*addr==val) -- __syscall(SYS_futex, (long)addr, FUTEX_WAIT|priv, val, 0); -+ __syscall(SYS_futex, addr, FUTEX_WAIT|priv, val, 0); - if (waiters) a_dec(waiters); - } -diff -Nur musl-0.9.15/src/thread/x32/clone.s musl-git/src/thread/x32/clone.s ---- musl-0.9.15/src/thread/x32/clone.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/thread/x32/clone.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,25 @@ -+.text -+.global __clone -+.type __clone,@function -+__clone: -+ movl $0x40000038,%eax /* SYS_clone */ -+ mov %rdi,%r11 -+ mov %rdx,%rdi -+ mov %r8,%rdx -+ mov %r9,%r8 -+ mov 8(%rsp),%r10 -+ mov %r11,%r9 -+ and $-16,%rsi -+ sub $8,%rsi -+ mov %rcx,(%rsi) -+ syscall -+ test %eax,%eax -+ jnz 1f -+ xor %ebp,%ebp -+ pop %rdi -+ call *%r9 -+ mov %eax,%edi -+ movl $0x4000003c,%eax /* SYS_exit */ -+ syscall -+ hlt -+1: ret -diff -Nur musl-0.9.15/src/thread/x32/__set_thread_area.s musl-git/src/thread/x32/__set_thread_area.s ---- musl-0.9.15/src/thread/x32/__set_thread_area.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/thread/x32/__set_thread_area.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,10 @@ -+/* Copyright 2011-2012 Nicholas J. Kain, licensed under standard MIT license */ -+.text -+.global __set_thread_area -+.type __set_thread_area,@function -+__set_thread_area: -+ mov %rdi,%rsi /* shift for syscall */ -+ movl $0x1002,%edi /* SET_FS register */ -+ movl $0x4000009e,%eax /* set fs segment to */ -+ syscall /* arch_prctl(SET_FS, arg)*/ -+ ret -diff -Nur musl-0.9.15/src/thread/x32/syscall_cp.s musl-git/src/thread/x32/syscall_cp.s ---- musl-0.9.15/src/thread/x32/syscall_cp.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/thread/x32/syscall_cp.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,23 @@ -+.text -+.global __syscall_cp_internal -+.type __syscall_cp_internal,@function -+__syscall_cp_internal: -+ -+.global __cp_begin -+__cp_begin: -+ mov (%rdi),%eax -+ test %eax,%eax -+ jnz __cancel -+ mov %rdi,%r11 -+ mov %rsi,%rax -+ mov %rdx,%rdi -+ mov %rcx,%rsi -+ mov %r8,%rdx -+ mov %r9,%r10 -+ mov 8(%rsp),%r8 -+ mov 16(%rsp),%r9 -+ mov %r11,8(%rsp) -+ syscall -+.global __cp_end -+__cp_end: -+ ret -diff -Nur musl-0.9.15/src/thread/x32/__unmapself.s musl-git/src/thread/x32/__unmapself.s ---- musl-0.9.15/src/thread/x32/__unmapself.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/thread/x32/__unmapself.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,10 @@ -+/* Copyright 2011-2012 Nicholas J. Kain, licensed under standard MIT license */ -+.text -+.global __unmapself -+.type __unmapself,@function -+__unmapself: -+ movl $0x4000000b,%eax /* SYS_munmap */ -+ syscall /* munmap(arg2,arg3) */ -+ xor %rdi,%rdi /* exit() args: always return success */ -+ movl $0x4000003c,%eax /* SYS_exit */ -+ syscall /* exit(0) */ -diff -Nur musl-0.9.15/src/thread/x86_64/clone.s musl-git/src/thread/x86_64/clone.s ---- musl-0.9.15/src/thread/x86_64/clone.s 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/thread/x86_64/clone.s 2014-03-10 16:52:06.000000000 +0100 -@@ -1,10 +1,7 @@ - .text - .global __clone --.weak clone - .type __clone,@function --.type clone,@function - __clone: --clone: - xor %eax,%eax - mov $56,%al - mov %rdi,%r11 -diff -Nur musl-0.9.15/src/time/timer_delete.c musl-git/src/time/timer_delete.c ---- musl-0.9.15/src/time/timer_delete.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/time/timer_delete.c 2014-03-10 16:52:06.000000000 +0100 -@@ -10,5 +10,5 @@ - __wake(&td->timer_id, 1, 1); - return 0; - } -- return __syscall(SYS_timer_delete, (long)t); -+ return __syscall(SYS_timer_delete, t); - } -diff -Nur musl-0.9.15/src/time/timer_getoverrun.c musl-git/src/time/timer_getoverrun.c ---- musl-0.9.15/src/time/timer_getoverrun.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/time/timer_getoverrun.c 2014-03-10 16:52:06.000000000 +0100 -@@ -8,5 +8,5 @@ - pthread_t td = (void *)((uintptr_t)t << 1); - t = (void *)(uintptr_t)(td->timer_id & INT_MAX); - } -- return syscall(SYS_timer_getoverrun, (long)t); -+ return syscall(SYS_timer_getoverrun, t); - } -diff -Nur musl-0.9.15/src/time/timer_gettime.c musl-git/src/time/timer_gettime.c ---- musl-0.9.15/src/time/timer_gettime.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/time/timer_gettime.c 2014-03-10 16:52:06.000000000 +0100 -@@ -8,5 +8,5 @@ - pthread_t td = (void *)((uintptr_t)t << 1); - t = (void *)(uintptr_t)(td->timer_id & INT_MAX); - } -- return syscall(SYS_timer_gettime, (long)t, val); -+ return syscall(SYS_timer_gettime, t, val); - } -diff -Nur musl-0.9.15/src/time/timer_settime.c musl-git/src/time/timer_settime.c ---- musl-0.9.15/src/time/timer_settime.c 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/src/time/timer_settime.c 2014-03-10 16:52:06.000000000 +0100 -@@ -8,5 +8,5 @@ - pthread_t td = (void *)((uintptr_t)t << 1); - t = (void *)(uintptr_t)(td->timer_id & INT_MAX); - } -- return syscall(SYS_timer_settime, (long)t, flags, val, old); -+ return syscall(SYS_timer_settime, t, flags, val, old); - } -diff -Nur musl-0.9.15/src/unistd/sh/pipe.s musl-git/src/unistd/sh/pipe.s ---- musl-0.9.15/src/unistd/sh/pipe.s 1970-01-01 01:00:00.000000000 +0100 -+++ musl-git/src/unistd/sh/pipe.s 2014-03-10 16:52:06.000000000 +0100 -@@ -0,0 +1,27 @@ -+.global pipe -+.type pipe, @function -+pipe: -+ mov #42, r3 -+ trapa #17 -+ -+ ! work around hardware bug -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ or r0, r0 -+ -+ cmp/pz r0 -+ bt 1f -+ -+ mov.l L1, r1 -+ braf r1 -+ mov r0, r4 -+ -+1: mov.l r0, @(0,r4) -+ mov.l r1, @(4,r4) -+ rts -+ mov #0, r0 -+ -+.align 2 -+L1: .long __syscall_ret@PLT-(1b-.) -diff -Nur musl-0.9.15/tools/install.sh musl-git/tools/install.sh ---- musl-0.9.15/tools/install.sh 2014-01-03 21:12:18.000000000 +0100 -+++ musl-git/tools/install.sh 2014-03-10 16:52:06.000000000 +0100 -@@ -51,6 +51,7 @@ - ln -s "$1" "$tmp" - else - cat < "$1" > "$tmp" -+chmod "$mode" "$tmp" - fi - - mv -f "$tmp" "$2" -@@ -60,6 +61,4 @@ - exit 1 - } - --test "$symlink" || chmod "$mode" "$2" -- - exit 0 diff --git a/toolchain/uClibc/Makefile b/toolchain/uClibc/Makefile index 18b94916f..94a81391d 100644 --- a/toolchain/uClibc/Makefile +++ b/toolchain/uClibc/Makefile @@ -104,7 +104,9 @@ $(WRKBUILD)/.installed: $(WRKBUILD)/.install_headers touch $@ $(WRKBUILD)/.fixup: -ifneq ($(ADK_DEBUG),) + # DOSTRIP kills x86 target (ld.so can not map libc.so.0), always use DODEBUG + # DODEBUG compile failure linking with libgcc_eh.a on arm hf +ifneq ($(ADK_LINUX_ARM),y) $(SED) 's,DOSTRIP,DODEBUG,' ${WRKBUILD}/.config endif $(MAKE) -C $(WRKBUILD) \ @@ -118,8 +120,9 @@ endif -find $(STAGING_TARGET_DIR) $(STAGING_HOST_DIR) -name \*.la -delete ifeq ($(ADK_TOOLCHAIN),y) # strip target libs and host tools for toolchain builds - PATH="$(TARGET_PATH)" debug='0' prefix='${TARGET_CROSS}' ${BASH} ${SCRIPT_DIR}/rstrip.sh $(STAGING_TARGET_DIR) - debug='0' prefix=' ' ${BASH} ${SCRIPT_DIR}/rstrip.sh $(STAGING_HOST_DIR) + PATH="$(TARGET_PATH)" debug='0' prefix='${TARGET_CROSS}' ${BASH} ${SCRIPT_DIR}/rstrip.sh \ + $(STAGING_TARGET_DIR) $(TOOLCHAIN_DIR)/usr/lib/gcc/$(GNU_TARGET_NAME) + debug='0' prefix=' ' ${BASH} ${SCRIPT_DIR}/rstrip.sh $(TOOLCHAIN_DIR)/usr/bin endif touch $@ diff --git a/toolchain/uClibc/Makefile.inc b/toolchain/uClibc/Makefile.inc index 60e87966c..eff931e2b 100644 --- a/toolchain/uClibc/Makefile.inc +++ b/toolchain/uClibc/Makefile.inc @@ -5,6 +5,6 @@ PKG_NAME:= uClibc PKG_VERSION:= 0.9.33.2 GIT_VERSION:= 0.9.34-git PKG_RELEASE:= 1 -PKG_MD5SUM:= a338aaffc56f0f5040e6d9fa8a12eda1 +PKG_MD5SUM:= 73e6fe215648d02246f4d195b25fb17e PKG_SITES:= http://uclibc.org/downloads/ -DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.bz2 +DISTFILES:= $(PKG_NAME)-$(PKG_VERSION).tar.xz diff --git a/tools/Makefile b/tools/Makefile deleted file mode 100644 index cdbf2b4f1..000000000 --- a/tools/Makefile +++ /dev/null @@ -1,54 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -TARGETS:=adk mksh mkcrypt cpio m4 flex bc bzip2 xz - -ifeq ($(ADK_HOST_NEED_GENEXT2FS),y) -TARGETS+=genext2fs -endif -ifeq ($(ADK_HOST_NEED_MKIMAGE),y) -TARGETS+=mkimage -endif -ifeq ($(ADK_HOST_NEED_MKISOFS),y) -TARGETS+=cdrtools -endif -ifeq ($(ADK_HOST_NEED_SYSLINUX),y) -TARGETS+=syslinux -endif -ifeq ($(ADK_HOST_NEED_JFFS2),y) -TARGETS+=mtd-utils -endif -ifeq ($(ADK_HOST_NEED_SQUASHFS),y) -TARGETS+=squashfs -endif -ifeq ($(ADK_HOST_NEED_LZOP),y) -TARGETS+=lzo lzop -endif -ifeq ($(ADK_HOST_NEED_LZMA),y) -TARGETS+=lzma -endif -ifeq ($(ADK_HOST_NEED_CCACHE),y) -TARGETS+=ccache -endif - -TARGETS_INSTALL:=$(patsubst %,%-install,$(TARGETS)) -TARGETS_CLEAN:=$(patsubst %,%-clean,$(TARGETS)) - -all: install -compile: -install: $(TARGETS_INSTALL) -clean: $(TARGETS_CLEAN) - -%-compile: $(TOOLS_BUILD_DIR) - $(TRACE) "tools/$(patsubst %-compile,%,$@)/compile " - $(MAKE) -C $(patsubst %-compile,%,$@) compile $(MAKE_TRACE) - -%-install: - $(TRACE) "tools/$(patsubst %-install,%,$@)/install " - $(MAKE) -C $(patsubst %-install,%,$@) install $(MAKE_TRACE) - -%-clean: - $(TRACE) "tools/$(patsubst %-clean,%,$@)/clean " - $(MAKE) -C $(patsubst %-clean,%,$@) clean diff --git a/tools/addpattern/Makefile b/tools/addpattern/Makefile deleted file mode 100644 index 10ba05933..000000000 --- a/tools/addpattern/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -include $(TOPDIR)/rules.mk - -all: addpattern.c - $(CC_FOR_BUILD) $(FLAGS_FOR_BUILD) -o ${STAGING_HOST_DIR}/usr/bin/addpattern addpattern.c diff --git a/tools/addpattern/addpattern.c b/tools/addpattern/addpattern.c deleted file mode 100644 index 8133bf26e..000000000 --- a/tools/addpattern/addpattern.c +++ /dev/null @@ -1,252 +0,0 @@ -/* - * Copyright (C) 2004 Manuel Novoa III <mjn3@codepoet.org> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - -/* July 29, 2004 - * - * This is a hacked replacement for the 'addpattern' utility used to - * create wrt54g .bin firmware files. It isn't pretty, but it does - * the job for me. - * - * Extensions: - * -v allows setting the version string on the command line. - * -{0|1} sets the (currently ignored) hw_ver flag in the header - * to 0 or 1 respectively. - */ - -/* January 12, 2005 - * - * Modified by rodent at rodent dot za dot net - * Support added for the new WRT54G v2.2 and WRT54GS v1.1 "flags" - * Without the flags set to 0x7, the above units will refuse to flash. - * - * Extensions: - * -{0|1|2} sets {0|1} sets hw_ver flag to 0/1. {2} sets hw_ver to 1 - * and adds the new hardware "flags" for the v2.2/v1.1 units -*/ - -/* January 1, 2007 - * - * Modified by juan.i.gonzalez at subdown dot net - * Support added for the AG241v2 and similar - * - * Extensions: - * -r #.# adds revision hardware flags. AG241v2 and similar. - * - * AG241V2 firmware sets the hw_ver to 0x44. - * - * Example: -r 2.0 - * - * Convert 2.0 to 20 to be an integer, and add 0x30 to skip special ASCII - * #define HW_Version ((HW_REV * 10) + 0x30) -> from cyutils.h -*/ - -#include <stdio.h> -#include <stdlib.h> -#include <string.h> -#include <time.h> -#include <unistd.h> -#include <sys/stat.h> - -/**********************************************************************/ - -#define CODE_ID "U2ND" /* from code_pattern.h */ -#define CODE_PATTERN "W54S" /* from code_pattern.h */ -#define PBOT_PATTERN "PBOT" - -#define CYBERTAN_VERSION "v3.37.2" /* from cyutils.h */ - -/* WRT54G v2.2 and WRT54GS v1.1 "flags" (from 3.37.32 firmware cyutils.h) */ -#define SUPPORT_4712_CHIP 0x0001 -#define SUPPORT_INTEL_FLASH 0x0002 -#define SUPPORT_5325E_SWITCH 0x0004 - -struct code_header { /* from cyutils.h */ - char magic[4]; - char res1[4]; /* for extra magic */ - char fwdate[3]; - char fwvern[3]; - char id[4]; /* U2ND */ - char hw_ver; /* 0: for 4702, 1: for 4712 -- new in 2.04.3 */ - char unused; - unsigned char flags[2]; /* SUPPORT_ flags new for 3.37.2 (WRT54G v2.2 and WRT54GS v1.1) */ - unsigned char res2[10]; -} ; - -/**********************************************************************/ - -void usage(void) __attribute__ (( __noreturn__ )); - -void usage(void) -{ - fprintf(stderr, "Usage: addpattern [-i trxfile] [-o binfile] [-p pattern] [-g] [-b] [-v v#.#.#] [-r #.#] [-{0|1|2|4}] -h\n"); - exit(EXIT_FAILURE); -} - -int main(int argc, char **argv) -{ - char buf[1024]; /* keep this at 1k or adjust garbage calc below */ - struct code_header *hdr; - FILE *in = stdin; - FILE *out = stdout; - char *ifn = NULL; - char *ofn = NULL; - char *pattern = CODE_PATTERN; - char *pbotpat = PBOT_PATTERN; - char *version = CYBERTAN_VERSION; - int gflag = 0; - int pbotflag = 0; - int c; - int v0, v1, v2; - size_t off, n; - time_t t; - struct tm *ptm; - - hdr = (struct code_header *) buf; - memset(hdr, 0, sizeof(struct code_header)); - - while ((c = getopt(argc, argv, "i:o:p:gbv:0124hr:")) != -1) { - switch (c) { - case 'i': - ifn = optarg; - break; - case 'o': - ofn = optarg; - break; - case 'p': - pattern = optarg; - break; - case 'g': - gflag = 1; - break; - case 'b': - pbotflag = 1; - break; - case 'v': /* extension to allow setting version */ - version = optarg; - break; - case '0': - hdr->hw_ver = 0; - break; - case '1': - hdr->hw_ver = 1; - break; - case '2': /* new 54G v2.2 and 54GS v1.1 flags */ - hdr->hw_ver = 1; - hdr->flags[0] |= SUPPORT_4712_CHIP; - hdr->flags[0] |= SUPPORT_INTEL_FLASH; - hdr->flags[0] |= SUPPORT_5325E_SWITCH; - break; - case '4': - /* V4 firmware sets the flags to 0x1f */ - hdr->hw_ver = 0; - hdr->flags[0] = 0x1f; - break; - case 'r': - hdr->hw_ver = (char)(atof(optarg)*10)+0x30; - break; - - case 'h': - default: - usage(); - } - } - - if (optind != argc || optind == 1) { - fprintf(stderr, "illegal arg \"%s\"\n", argv[optind]); - usage(); - } - - if (strlen(pattern) != 4) { - fprintf(stderr, "illegal pattern \"%s\": length != 4\n", pattern); - usage(); - } - - if (ifn && !(in = fopen(ifn, "r"))) { - fprintf(stderr, "can not open \"%s\" for reading\n", ifn); - usage(); - } - - if (ofn && !(out = fopen(ofn, "w"))) { - fprintf(stderr, "can not open \"%s\" for writing\n", ofn); - usage(); - } - - if (time(&t) == (time_t)(-1)) { - fprintf(stderr, "time call failed\n"); - return EXIT_FAILURE; - } - - ptm = localtime(&t); - - if (3 != sscanf(version, "v%d.%d.%d", &v0, &v1, &v2)) { - fprintf(stderr, "bad version string \"%s\"\n", version); - return EXIT_FAILURE; - } - - memcpy(&hdr->magic, pattern, 4); - if (pbotflag) - memcpy(&hdr->res1, pbotpat, 4); - hdr->fwdate[0] = ptm->tm_year % 100; - hdr->fwdate[1] = ptm->tm_mon + 1; - hdr->fwdate[2] = ptm->tm_mday; - hdr->fwvern[0] = v0; - hdr->fwvern[1] = v1; - hdr->fwvern[2] = v2; - memcpy(&hdr->id, CODE_ID, strlen(CODE_ID)); - - off = sizeof(struct code_header); - - fprintf(stderr, "writing firmware v%d.%d.%d on %d/%d/%d (y/m/d)\n", - v0, v1, v2, - hdr->fwdate[0], hdr->fwdate[1], hdr->fwdate[2]); - - - while ((n = fread(buf + off, 1, sizeof(buf)-off, in) + off) > 0) { - off = 0; - if (n < sizeof(buf)) { - if (ferror(in)) { - FREAD_ERROR: - fprintf(stderr, "fread error\n"); - return EXIT_FAILURE; - } - if (gflag) { - gflag = sizeof(buf) - n; - memset(buf + n, 0xff, gflag); - n = sizeof(buf); - } - } - if (!fwrite(buf, n, 1, out)) { - FWRITE_ERROR: - fprintf(stderr, "fwrite error\n"); - return EXIT_FAILURE; - } - } - - if (ferror(in)) { - goto FREAD_ERROR; - } - - if (fflush(out)) { - goto FWRITE_ERROR; - } - - fclose(in); - fclose(out); - - return EXIT_SUCCESS; -} diff --git a/tools/bc/Makefile b/tools/bc/Makefile deleted file mode 100644 index 8b984e734..000000000 --- a/tools/bc/Makefile +++ /dev/null @@ -1,25 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -PKG_NAME:= bc -PKG_VERSION:= 1.06 -PKG_RELEASE:= 1 -PKG_MD5SUM:= d44b5dddebd8a7a7309aea6c36fda117 -PKG_SITES:= http://ftp.gnu.org/pub/gnu/bc/ - -include ../rules.mk - -install: ${STAGING_HOST_DIR}/usr/bin/bc - -$(WRKBUILD)/.compiled: ${WRKDIST}/.prepared - (cd ${WRKBUILD}; PATH="$(STAGING_HOST_DIR)/usr/bin:$$PATH" ./configure) - ${MAKE} -C ${WRKBUILD} CC='${CC_FOR_BUILD}' - touch $@ - -${STAGING_HOST_DIR}/usr/bin/bc: $(WRKBUILD)/.compiled - $(INSTALL_BIN) $(WRKBUILD)/bc/bc \ - ${STAGING_HOST_DIR}/usr/bin - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/bzip2/Makefile b/tools/bzip2/Makefile deleted file mode 100644 index a739f8d5f..000000000 --- a/tools/bzip2/Makefile +++ /dev/null @@ -1,24 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -PKG_NAME:= bzip2 -PKG_VERSION:= 1.0.6 -PKG_RELEASE:= 1 -PKG_MD5SUM:= 00b516f4704d4a7cb50a1d97e6e8e15b -PKG_SITES:= http://www.bzip.org/${PKG_VERSION}/ - -include ../rules.mk - -install: ${STAGING_HOST_DIR}/usr/bin/bzip2 - -$(WRKBUILD)/.compiled: ${WRKDIST}/.prepared - ${MAKE} -C ${WRKBUILD} CC='${CC_FOR_BUILD}' PREFIX=$(STAGING_HOST_DIR)/usr - touch $@ - -${STAGING_HOST_DIR}/usr/bin/bzip2: $(WRKBUILD)/.compiled - $(INSTALL_BIN) $(WRKBUILD)/bzip2 \ - ${STAGING_HOST_DIR}/usr/bin - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/ccache/Makefile b/tools/ccache/Makefile deleted file mode 100644 index fde838067..000000000 --- a/tools/ccache/Makefile +++ /dev/null @@ -1,25 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -PKG_NAME:= ccache -PKG_VERSION:= 3.1.9 -PKG_RELEASE:= 1 -PKG_MD5SUM:= a5e9954b1dae036762f7b13673a2cf76 -PKG_SITES:= http://samba.org/ftp/ccache/ - -include ../rules.mk - -install: ${STAGING_HOST_DIR}/usr/bin/ccache - -$(WRKBUILD)/.compiled: ${WRKDIST}/.prepared - (cd ${WRKBUILD}; ./configure --prefix=$(STAGING_HOST_DIR)/usr) - ${MAKE} -C ${WRKBUILD} CC='${CC_FOR_BUILD}' - touch $@ - -${STAGING_HOST_DIR}/usr/bin/ccache: $(WRKBUILD)/.compiled - $(INSTALL_BIN) $(WRKBUILD)/ccache \ - ${STAGING_HOST_DIR}/usr/bin - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/cdrtools/Makefile b/tools/cdrtools/Makefile deleted file mode 100644 index 6522b5760..000000000 --- a/tools/cdrtools/Makefile +++ /dev/null @@ -1,25 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -PKG_NAME:= cdrtools -PKG_VERSION:= 3.00 -PKG_RELEASE:= 1 -PKG_MD5SUM:= bb21cefefcfbb76cf249120e8978ffdd -PKG_SITES:= ftp://ftp.berlios.de/pub/cdrecord/ - -include ../rules.mk - -install: ${STAGING_HOST_DIR}/usr/bin/mkisofs - -$(WRKBUILD)/.compiled: ${WRKDIST}/.prepared - #(cd ${WRKBUILD}; ./configure) - ${MAKE} -C ${WRKBUILD} CC='${CC_FOR_BUILD}' - touch $@ - -${STAGING_HOST_DIR}/usr/bin/mkisofs: $(WRKBUILD)/.compiled - $(INSTALL_BIN) $(WRKBUILD)/mkisofs/OBJ/*/mkisofs \ - ${STAGING_HOST_DIR}/usr/bin - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/cpio/Makefile b/tools/cpio/Makefile deleted file mode 100644 index ffccd1480..000000000 --- a/tools/cpio/Makefile +++ /dev/null @@ -1,32 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -install: ${STAGING_HOST_DIR}/usr/bin/cpio - -SRCS:= src/ib_open.c \ - src/ib_close.c \ - src/ib_read.c \ - src/ib_alloc.c \ - src/ib_free.c \ - src/ib_getlin.c \ - src/sfile.c \ - src/gmatch.c \ - src/sigset.c \ - src/memalign.c \ - src/version.c \ - src/blast.c \ - src/crc32.c \ - src/expand.c \ - src/explode.c \ - src/flags.c \ - src/inflate.c \ - src/unshrink.c \ - src/nonpax.c \ - src/cpio.c - -${STAGING_HOST_DIR}/usr/bin/cpio: ${SRCS} - ${CC_FOR_BUILD} ${FLAGS_FOR_BUILD} -D_GNU_SOURCE -Isrc -o $@ $^ - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/flex/Makefile b/tools/flex/Makefile deleted file mode 100644 index 235f785b4..000000000 --- a/tools/flex/Makefile +++ /dev/null @@ -1,25 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -PKG_NAME:= flex -PKG_VERSION:= 2.5.35 -PKG_RELEASE:= 1 -PKG_MD5SUM:= 201d3f38758d95436cbc64903386de0b -PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=${PKG_NAME}/} - -include ../rules.mk - -install: ${STAGING_HOST_DIR}/usr/bin/flex - -$(WRKBUILD)/.compiled: ${WRKDIST}/.prepared - (cd ${WRKBUILD}; PATH="$(STAGING_HOST_DIR)/usr/bin:$$PATH" ./configure) - ${MAKE} -C ${WRKBUILD} CC='${CC_FOR_BUILD}' - touch $@ - -${STAGING_HOST_DIR}/usr/bin/flex: $(WRKBUILD)/.compiled - $(INSTALL_BIN) $(WRKBUILD)/flex \ - ${STAGING_HOST_DIR}/usr/bin - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/genext2fs/Makefile b/tools/genext2fs/Makefile deleted file mode 100644 index 07e24d028..000000000 --- a/tools/genext2fs/Makefile +++ /dev/null @@ -1,25 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -PKG_NAME:= genext2fs -PKG_VERSION:= 1.4.1 -PKG_RELEASE:= 1 -PKG_MD5SUM:= b7b6361bcce2cedff1ae437fadafe53b -PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=genext2fs/} - -include ../rules.mk - -install: ${STAGING_HOST_DIR}/usr/bin/genext2fs - -$(WRKBUILD)/.compiled: ${WRKDIST}/.prepared - (cd ${WRKBUILD}; ./configure) - ${MAKE} -C ${WRKBUILD} CC='${CC_FOR_BUILD}' - touch $@ - -${STAGING_HOST_DIR}/usr/bin/genext2fs: $(WRKBUILD)/.compiled - $(INSTALL_BIN) $(WRKBUILD)/genext2fs \ - ${STAGING_HOST_DIR}/usr/bin - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/lzma/Makefile b/tools/lzma/Makefile deleted file mode 100644 index 3544aaca2..000000000 --- a/tools/lzma/Makefile +++ /dev/null @@ -1,25 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -PKG_NAME:= lzma -PKG_VERSION:= 4.32.7 -PKG_RELEASE:= 1 -PKG_MD5SUM:= 434e51a018b4c8ef377bf81520a53af0 -PKG_SITES:= http://tukaani.org/lzma/ - -include ../rules.mk - -install: ${STAGING_HOST_DIR}/usr/bin/lzma - -$(WRKBUILD)/.compiled: ${WRKDIST}/.prepared - (cd ${WRKBUILD}; PATH="$(STAGING_HOST_DIR)/usr/bin:$$PATH" ./configure) - ${MAKE} -C ${WRKBUILD} CC='${CC_FOR_BUILD}' - touch $@ - -${STAGING_HOST_DIR}/usr/bin/lzma: $(WRKBUILD)/.compiled - $(INSTALL_BIN) $(WRKBUILD)/src/lzma/lzma \ - $(STAGING_HOST_DIR)/usr/bin/lzma - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/lzo/Makefile b/tools/lzo/Makefile deleted file mode 100644 index 8f965d7ea..000000000 --- a/tools/lzo/Makefile +++ /dev/null @@ -1,28 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -PKG_NAME:= lzo -PKG_VERSION:= 2.06 -PKG_RELEASE:= 1 -PKG_MD5SUM:= 95380bd4081f85ef08c5209f4107e9f8 -PKG_SITES:= http://www.oberhumer.com/opensource/lzo/download/ - -include ../rules.mk - -install: $(WRKBUILD)/.installed - -$(WRKBUILD)/.configured: ${WRKDIST}/.prepared - (cd ${WRKBUILD}; ./configure --prefix=$(STAGING_HOST_DIR)/usr) - @touch $@ - -$(WRKBUILD)/.compiled: $(WRKBUILD)/.configured - ${MAKE} -C ${WRKBUILD} - @touch $@ - -$(WRKBUILD)/.installed: $(WRKBUILD)/.compiled - ${MAKE} -C ${WRKBUILD} install - @touch $@ - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/lzop/Makefile b/tools/lzop/Makefile deleted file mode 100644 index af08536c4..000000000 --- a/tools/lzop/Makefile +++ /dev/null @@ -1,30 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -PKG_NAME:= lzop -PKG_VERSION:= 1.03 -PKG_RELEASE:= 1 -PKG_MD5SUM:= 006c5e27fb78cdd14a628fdfa5aa1905 -PKG_SITES:= http://www.lzop.org/download/ - -include ../rules.mk - -install: $(WRKBUILD)/.installed - -$(WRKBUILD)/.configured: ${WRKDIST}/.prepared - (cd ${WRKBUILD}; CPPFLAGS='$(CPPFLAGS_FOR_BUILD)' \ - LDFLAGS='$(LDFLAGS_FOR_BUILD)' \ - ./configure --prefix=$(STAGING_HOST_DIR)/usr) - @touch $@ - -$(WRKBUILD)/.compiled: $(WRKBUILD)/.configured - ${MAKE} -C ${WRKBUILD} - @touch $@ - -$(WRKBUILD)/.installed: $(WRKBUILD)/.compiled - ${MAKE} -C ${WRKBUILD} install - @touch $@ - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/m4/Makefile b/tools/m4/Makefile deleted file mode 100644 index f4a1bae1a..000000000 --- a/tools/m4/Makefile +++ /dev/null @@ -1,25 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -PKG_NAME:= m4 -PKG_VERSION:= 1.4.17 -PKG_RELEASE:= 1 -PKG_MD5SUM:= a5e9954b1dae036762f7b13673a2cf76 -PKG_SITES:= ${MASTER_SITE_GNU:=m4/} - -include ../rules.mk - -install: ${STAGING_HOST_DIR}/usr/bin/m4 - -$(WRKBUILD)/.compiled: ${WRKDIST}/.prepared - (cd ${WRKBUILD}; ./configure --prefix=$(STAGING_HOST_DIR)/usr) - ${MAKE} -C ${WRKBUILD} CC='${CC_FOR_BUILD}' - touch $@ - -${STAGING_HOST_DIR}/usr/bin/m4: $(WRKBUILD)/.compiled - $(INSTALL_BIN) $(WRKBUILD)/src/m4 \ - ${STAGING_HOST_DIR}/usr/bin - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/mkcrypt/Makefile b/tools/mkcrypt/Makefile deleted file mode 100644 index 089c6ad7b..000000000 --- a/tools/mkcrypt/Makefile +++ /dev/null @@ -1,11 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -install: ${STAGING_HOST_DIR}/usr/bin/mkcrypt - -${STAGING_HOST_DIR}/usr/bin/mkcrypt: - $(CC_FOR_BUILD) ${FLAGS_FOR_BUILD} -o $@ mkcrypt.c - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/mkfimage/Makefile b/tools/mkfimage/Makefile deleted file mode 100644 index 195614f2b..000000000 --- a/tools/mkfimage/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -include $(TOPDIR)/rules.mk - -all: mkfimage.c - $(CC_FOR_BUILD) ${FLAGS_FOR_BUILD} -o ${STAGING_HOST_DIR}/usr/bin/mkfimage mkfimage.c $(MAKE_TRACE) diff --git a/tools/mkfimage/mkfimage.c b/tools/mkfimage/mkfimage.c deleted file mode 100644 index b1897fbd7..000000000 --- a/tools/mkfimage/mkfimage.c +++ /dev/null @@ -1,72 +0,0 @@ -#include <stdio.h> -#include <sys/types.h> -#include <sys/stat.h> -#include <unistd.h> -#include <string.h> -#include <stdlib.h> - -int main(int argc, char **argv){ - unsigned char *buffer = malloc(64 * 1024); - struct stat s; - unsigned int size_vmlinux = 0, real_size_vmlinux = 0; - const unsigned char *magic_str = "ACME_PART_MAGIC"; - unsigned int loop; - unsigned char *magic; - - if(argc != 3){ - printf("%s in out\n", argv[0]); - return 1; - } - - printf("Generating image\n"); - - FILE *vmlinux = fopen(argv[1], "r"); - FILE *vmlinux_out = fopen(argv[2], "w"); - if((!vmlinux) || (!vmlinux_out)){ - printf("Error opening a file\n"); - return 1; - } - - stat(argv[1], &s); - size_vmlinux = s.st_size; - real_size_vmlinux = (size_vmlinux & 0xffff0000) + 0x10000; - - printf("vmlinux = 0x%.08X / 0x%.08X\n", size_vmlinux, real_size_vmlinux); - - unsigned int t = fread(buffer, 1, 64 * 1024, vmlinux); - for(loop = 0; loop < (64 * 1024) - sizeof(magic_str); loop++){ - if(buffer[loop] == magic_str[0]){ - if((magic = strstr(&buffer[loop], magic_str))){ - //printf("Magic at 0x%.08X %p %p\n", magic - buffer, magic, buffer); - printf("Found Magic %X%X%X%X\n", - buffer[loop + strlen(magic_str)], - buffer[loop + strlen(magic_str) + 2], - buffer[loop + strlen(magic_str) + 1], - buffer[loop + strlen(magic_str) + 3]); - - buffer[loop + strlen(magic_str)] = real_size_vmlinux >> 24; - buffer[loop + strlen(magic_str) + 2] = (real_size_vmlinux >> 16) & 0xff; - buffer[loop + strlen(magic_str) + 1] = (real_size_vmlinux >> 8) & 0xff; - buffer[loop + strlen(magic_str) + 3] = (real_size_vmlinux) & 0xff; - - printf("Replaced with %.02X%.02X%.02X%.02X\n", - buffer[loop + strlen(magic_str)], - buffer[loop + strlen(magic_str) + 2], - buffer[loop + strlen(magic_str) + 1], - buffer[loop + strlen(magic_str) + 3]); - - } - } - } - - fwrite(buffer, 1, 64 * 1024, vmlinux_out); - real_size_vmlinux -= 64 * 1024; - do { - real_size_vmlinux -= 64 * 1024; - memset(buffer, 0, 64 * 1024); - fread(buffer, 1, 64 * 1024, vmlinux); - fwrite(buffer, 1, 64 * 1024, vmlinux_out); - } while (real_size_vmlinux); - - return 0; -} diff --git a/tools/mkimage/Makefile b/tools/mkimage/Makefile deleted file mode 100644 index db2e42c3f..000000000 --- a/tools/mkimage/Makefile +++ /dev/null @@ -1,11 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -install: ${STAGING_HOST_DIR}/usr/bin/mkimage - -${STAGING_HOST_DIR}/usr/bin/mkimage: mkimage.c crc32.c - $(CC_FOR_BUILD) ${FLAGS_FOR_BUILD} -o $@ mkimage.c crc32.c - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/mkimage/mkimage b/tools/mkimage/mkimage Binary files differdeleted file mode 100755 index 87ed9a473..000000000 --- a/tools/mkimage/mkimage +++ /dev/null diff --git a/tools/mksh/Makefile b/tools/mksh/Makefile deleted file mode 100644 index 2c912e52b..000000000 --- a/tools/mksh/Makefile +++ /dev/null @@ -1,29 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -PKG_NAME:= mksh -PKG_VERSION:= 49 -PKG_RELEASE:= 1 -PKG_MD5SUM:= e8c205cac72c3dc8540bbc3897421422 -PKG_SITES:= ${MASTER_SITE_MIRBSD:distfiles/=dist/mir/mksh/} - -DISTFILES= ${PKG_NAME}-R${PKG_VERSION}.tgz -WRKDIST= ${WRKDIR}/${PKG_NAME} - -include ../rules.mk - -install: ${STAGING_HOST_DIR}/usr/bin/mksh - -$(WRKBUILD)/.compiled: ${WRKDIST}/.prepared - cd ${WRKBUILD} && CC='${CC_FOR_BUILD}' CFLAGS='${CFLAGS_FOR_BUILD}' \ - HAVE_CAN_FSTACKPROTECTORALL=0 \ - TARGET_OS=Linux ${BASH} ${WRKSRC}/Build.sh -Q -r -c lto - touch $@ - -${STAGING_HOST_DIR}/usr/bin/mksh: $(WRKBUILD)/.compiled - ${INSTALL_BIN} ${WRKBUILD}/mksh \ - ${STAGING_HOST_DIR}/usr/bin - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/mtd-utils/Makefile b/tools/mtd-utils/Makefile deleted file mode 100644 index 0152a41ac..000000000 --- a/tools/mtd-utils/Makefile +++ /dev/null @@ -1,24 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -PKG_NAME:= mtd-utils -PKG_VERSION:= 1.5.0 -PKG_RELEASE:= 1 -PKG_MD5SUM:= a4df1ad29684be79b0fa699bdae01faf -PKG_SITES:= http://openadk.org/distfiles/ - -include ../rules.mk - -install: ${STAGING_HOST_DIR}/usr/bin/mkfs.jffs2 - -$(WRKBUILD)/.compiled: ${WRKDIST}/.prepared - ${MAKE} -C ${WRKBUILD} CC='${CC_FOR_BUILD}' CPPFLAGS='-DWITHOUT_XATTR=1 -I./include' - touch $@ - -${STAGING_HOST_DIR}/usr/bin/mkfs.jffs2: $(WRKBUILD)/.compiled - $(INSTALL_BIN) $(WRKBUILD)/mkfs.jffs2 \ - ${STAGING_HOST_DIR}/usr/bin - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/rules.mk b/tools/rules.mk deleted file mode 100644 index a6a3684ac..000000000 --- a/tools/rules.mk +++ /dev/null @@ -1,7 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -WRKDIR_BASE= ${TOOLS_BUILD_DIR} -WRKDIR= ${WRKDIR_BASE} - -include ${TOPDIR}/mk/buildhlp.mk diff --git a/tools/squashfs/Makefile b/tools/squashfs/Makefile deleted file mode 100644 index 423008ff8..000000000 --- a/tools/squashfs/Makefile +++ /dev/null @@ -1,29 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -PKG_NAME:= squashfs -PKG_VERSION:= 4.2 -PKG_RELEASE:= 1 -PKG_MD5SUM:= 1b7a781fb4cf8938842279bd3e8ee852 -PKG_SITES:= ${MASTER_SITE_SOURCEFORGE:=squashfs/} - -DISTFILES:= ${PKG_NAME}${PKG_VERSION}.tar.gz -WRKDIST= ${WRKDIR}/$(PKG_NAME)${PKG_VERSION} - -include ../rules.mk - -install: ${STAGING_HOST_DIR}/usr/bin/mksquashfs - -$(WRKBUILD)/.compiled: ${WRKDIST}/.prepared - ${MAKE} -C ${WRKBUILD}/squashfs-tools CC='${CC_FOR_BUILD}' \ - XZ_SUPPORT=1 CPPFLAGS_FOR_BUILD=$(CPPFLAGS_FOR_BUILD) \ - EXTRA_LDFLAGS=$(LDFLAGS_FOR_BUILD) - @touch $@ - -${STAGING_HOST_DIR}/usr/bin/mksquashfs: $(WRKBUILD)/.compiled - $(INSTALL_BIN) $(WRKBUILD)/squashfs-tools/mksquashfs \ - ${STAGING_HOST_DIR}/usr/bin - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/srec2bin/Makefile b/tools/srec2bin/Makefile deleted file mode 100644 index 01021c8ff..000000000 --- a/tools/srec2bin/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -include $(TOPDIR)/rules.mk - -all: srec2bin.c - $(CC_FOR_BUILD) $(FLAGS_FOR_BUILD) -o ${STAGING_HOST_DIR}/usr/bin/srec2bin srec2bin.c diff --git a/tools/srec2bin/srec2bin.c b/tools/srec2bin/srec2bin.c deleted file mode 100644 index 8ba4387e6..000000000 --- a/tools/srec2bin/srec2bin.c +++ /dev/null @@ -1,521 +0,0 @@ -#include <stdio.h> -#include <ctype.h> -#include <string.h> - -//Rev 0.1 Original -// 8 Jan 2001 MJH Added code to write data to Binary file -// note: outputfile is name.bin, where name is first part -// of input file. ie tmp.rec -> tmp.bin -// -// srec2bin <input SREC file> <Output Binary File> <If Present, Big Endian> -// -// TAG -// bit32u TAG_BIG = 0xDEADBE42; -// bit32u TAG_LITTLE = 0xFEEDFA42; -// -// File Structure -// -// TAG : 32 Bits -// [DATA RECORDS] -// -// Data Records Structure -// -// LENGTH : 32 Bits <- Length of DATA, excludes ADDRESS and CHECKSUM -// ADDRESS : 32 Bits -// DATA : 8 Bits * LENGTH -// CHECKSUM: 32 Bits <- 0 - (Sum of Length --> End of Data) -// -// Note : If Length == 0, Address will be Program Start -// -// -// -// -// - -#define MajRevNum 0 -#define MinRevNum 2 - - -#define EndianSwitch(x) ((x >> 24) | (x << 24) | ((x << 8) & (0x00FF0000)) | ((x >> 8) & (0x0000FF00)) ) - -typedef unsigned char bit8u; -typedef unsigned int bit32u; -typedef int bit32; - -#define FALSE 0 -#define TRUE (!FALSE) - - -bit32u CheckSum; -int RecStart; -int debug; -int verbose; - -FILE *OpenOutputFile( char *Name ); -FILE *fOut; -bit32u RecLength=0; - -bit32u AddressCurrent; - -bit32u gh(char *cp,int nibs); - -int BigEndian; - -int inputline; - -// char buf[16*1024]; - -char buffer[2048]; -char *cur_ptr; -int cur_line=0; -int cur_len=0; - -int s1s2s3_total=0; - -bit32u PBVal; -int PBValid; -bit32u PBAdr; - - -void dumpfTell(char *s, bit32u Value) -{ - int Length; - Length = (int) RecLength; - if (debug) - printf("[%s ] ftell()[0x%08lX] Length[0x%4X] Length[%4d] Value[0x%08x]\n", - s, ftell(fOut), Length, Length, Value); -} - -void DispHex(bit32u Hex) -{ -// printf("%X", Hex); -} - -void WaitDisplay(void) -{ - static int Count=0; - static int Index=0; - char iline[]={"-\\|/"}; - - Count++; - if ((Count % 32)==0) - { - if (verbose) - printf("%c%c",iline[Index++],8); - Index &= 3; - } -} - - -void binOut32 ( bit32u Data ) -{ -// On UNIX machine all 32bit writes need ENDIAN switched -// Data = EndianSwitch(Data); -// fwrite( &Data, sizeof(bit32u), 1, fOut); - - char sdat[4]; - int i; - - for(i=0;i<4;i++) - sdat[i]=(char)(Data>>(i*8)); - fwrite( sdat, 1, 4, fOut); - dumpfTell("Out32" , Data); -} - -// Only update RecLength on Byte Writes -// All 32 bit writes will be for Length etc - -void binOut8 ( bit8u Data ) -{ - int n; - dumpfTell("B4Data" , (bit32u) (Data & 0xFF) ); - n = fwrite( &Data, sizeof(bit8u), 1, fOut); - if (n != 1) - printf("Error in writing %X for Address 0x%8X\n", Data, AddressCurrent); - RecLength += 1; -} - -// Currently ONLY used for outputting Program Start - -void binRecStart(bit32u Address) -{ - RecLength = 0; - CheckSum = Address; - RecStart = TRUE; - - if (debug) - printf("[RecStart] CheckSum[0x%08X] Length[%4d] Address[0x%08X]\n", - CheckSum, RecLength, Address); - - - dumpfTell("RecLength", RecLength); - binOut32( RecLength ); - dumpfTell("Address", Address); - binOut32( Address ); -} - -void binRecEnd(void) -{ - long RecEnd; - - if (!RecStart) // if no record started, do not end it - { - return; - } - - RecStart = FALSE; - - - RecEnd = ftell(fOut); // Save Current position - - if (debug) - printf("[RecEnd ] CheckSum[0x%08X] Length[%4d] Length[0x%X] RecEnd[0x%08lX]\n", - CheckSum, RecLength, RecLength, RecEnd); - - fseek( fOut, -((long) RecLength), SEEK_CUR); // move back Start Of Data - - dumpfTell("Data ", -1); - - fseek( fOut, -4, SEEK_CUR); // move back Start Of Address - - dumpfTell("Address ", -1); - - fseek( fOut, -4, SEEK_CUR); // move back Start Of Length - - dumpfTell("Length ", -1); - - binOut32( RecLength ); - - fseek( fOut, RecEnd, SEEK_SET); // move to end of Record - - CheckSum += RecLength; - - CheckSum = ~CheckSum + 1; // Two's complement - - binOut32( CheckSum ); - - if (verbose) - printf("[Created Record of %d Bytes with CheckSum [0x%8X]\n", RecLength, CheckSum); -} - -void binRecOutProgramStart(bit32u Address) -{ - if (Address != (AddressCurrent+1)) - { - binRecEnd(); - binRecStart(Address); - } - AddressCurrent = Address; -} -void binRecOutByte(bit32u Address, bit8u Data) -{ - // If Address is one after Current Address, output Byte - // If not, close out last record, update Length, write checksum - // Then Start New Record, updating Current Address - - if (Address != (AddressCurrent+1)) - { - binRecEnd(); - binRecStart(Address); - } - AddressCurrent = Address; - CheckSum += Data; - binOut8( Data ); -} - -//============================================================================= -// SUPPORT FUNCTIONS -//============================================================================= -int readline(FILE *fil,char *buf,int len) -{ - int rlen; - - rlen=0; - if (len==0) return(0); - while(1) - { - if (cur_len==0) - { - cur_len=fread(buffer, 1, sizeof(buffer), fil); - if (cur_len==0) - { - if (rlen) - { - *buf=0; - return(rlen); - } - return(-1); - } - cur_ptr=buffer; - } - if (cur_len) - { - if (*cur_ptr=='\n') - { - *buf=0; - cur_ptr++; - cur_len--; - return(rlen); - } - else - { - if ((len>1)&&(*cur_ptr!='\r')) - { - *buf++=*cur_ptr++; - len--; - } - else - cur_ptr++; - - rlen++; - cur_len--; - } - } - else - { - *buf=0; - cur_ptr++; - cur_len--; - return(rlen); - } - } -} - - -int SRLerrorout(char *c1,char *c2) -{ - printf("\nERROR: %s - '%s'.",c1,c2); - return(FALSE); -} - - -int checksum(char *cp,int count) -{ - char *scp; - int cksum; - int dum; - - scp=cp; - while(*scp) - { - if (!isxdigit(*scp++)) - return(SRLerrorout("Invalid hex digits",cp)); - } - scp=cp; - - cksum=count; - - while(count) - { - cksum += gh(scp,2); - if (count == 2) - dum = ~cksum; - scp += 2; - count--; - } - cksum&=0x0ff; - // printf("\nCk:%02x",cksum); - return(cksum==0x0ff); -} - -bit32u gh(char *cp,int nibs) -{ - int i; - bit32u j; - - j=0; - - for(i=0;i<nibs;i++) - { - j<<=4; - if ((*cp>='a')&&(*cp<='z')) *cp &= 0x5f; - if ((*cp>='0')&&(*cp<='9')) - j += (*cp-0x30); - else - if ((*cp>='A')&&(*cp<='F')) - j += (*cp-0x37); - else - SRLerrorout("Bad Hex char", cp); - cp++; - } - return(j); -} - - -//============================================================================= -// PROCESS SREC LINE -//============================================================================= - -int srecLine(char *pSrecLine) -{ - char *scp,ch; - int itmp,count,dat; - bit32u adr; - static bit32u RecordCounter=0; - - cur_line++; - scp=pSrecLine; - - if (*pSrecLine!='S') - return(SRLerrorout("Not an Srecord file",scp)); - pSrecLine++; - if (strlen(pSrecLine)<4) - return(SRLerrorout("Srecord too short",scp)); - - ch=*pSrecLine++; - - count=gh(pSrecLine,2); - - pSrecLine += 2; - - // if(debug) - // printf("count %d, strlen(pSrecLine) = %d, pSrecLine =[%s]\n", count, strlen(pSrecLine), pSrecLine); - RecordCounter++; - DispHex(RecordCounter); - - if ((count*2) != strlen(pSrecLine)) return(SRLerrorout("Count field larger than record",scp)); - - if (!checksum(pSrecLine, count)) return(SRLerrorout("Bad Checksum",scp)); - - switch(ch) - { - case '0': if (count<3) return(SRLerrorout("Invalid Srecord count field",scp)); - itmp=gh(pSrecLine,4); pSrecLine+=4; count-=2; - if (itmp) return(SRLerrorout("Srecord 1 address not zero",scp)); - break; - case '1': if (count<3) return(SRLerrorout("Invalid Srecord count field",scp)); - return(SRLerrorout("Srecord Not valid for MIPS",scp)); - break; - case '2': if (count<4) return(SRLerrorout("Invalid Srecord count field",scp)); - return(SRLerrorout("Srecord Not valid for MIPS",scp)); - break; - case '3': if (count<5) return(SRLerrorout("Invalid Srecord count field",scp)); - adr=gh(pSrecLine,8); pSrecLine+=8; count-=4; - count--; - while(count) - { - dat=gh(pSrecLine,2); pSrecLine+=2; count--; - binRecOutByte(adr, (char) (dat & 0xFF)); - adr++; - } - s1s2s3_total++; - break; - case '4': return(SRLerrorout("Invalid Srecord type",scp)); - break; - case '5': if (count<3) return(SRLerrorout("Invalid Srecord count field",scp)); - itmp=gh(pSrecLine,4); pSrecLine+=4; count-=2; - if (itmp|=s1s2s3_total) return(SRLerrorout("Incorrect number of S3 Record processed",scp)); - break; - case '6': return(SRLerrorout("Invalid Srecord type",scp)); - break; - case '7': // PROGRAM START - if (count<5) return(SRLerrorout("Invalid Srecord count field",scp)); - adr=gh(pSrecLine,8); pSrecLine+=8; count-=4; - if (count!=1) return(SRLerrorout("Invalid Srecord count field",scp)); - binRecOutProgramStart(adr); - break; - case '8': if (count<4) return(SRLerrorout("Invalid Srecord count field",scp)); - return(SRLerrorout("Srecord Not valid for MIPS",scp)); - break; - case '9': if (count<3) return(SRLerrorout("Invalid Srecord count field",scp)); - return(SRLerrorout("Srecord Not valid for MIPS",scp)); - break; - default: - break; - } - return(TRUE); -} - - -//============================================================================= -// MAIN LOGIC, READS IN LINE AND OUTPUTS BINARY -//============================================================================= - -int srec2bin(int argc,char *argv[],int verbose) -{ - int rlen,sts; - FILE *fp; - char buff[256]; - bit32u TAG_BIG = 0xDEADBE42; - bit32u TAG_LITTLE = 0xFEEDFA42; - - bit32u Tag; - - - if(argc < 3) - { - printf("\nError: <srec2bin <srec input file> <bin output file>\n\n"); - return(0); - } - - if (argc > 3) BigEndian=TRUE; else BigEndian=FALSE; - - if (BigEndian) - Tag = TAG_BIG; - else - Tag = TAG_LITTLE; - - if (verbose) - printf("\nEndian: %s, Tag is 0x%8X\n",(BigEndian)?"BIG":"LITTLE", Tag); - - fp = fopen(argv[1],"rt"); - - if (fp==NULL) - { - printf("\nError: Opening input file, %s.", argv[1]); - return(0); - } - - fOut = fopen( argv[2], "wb"); - - if (fOut==NULL) - { - printf("\nError: Opening Output file, %s.", argv[2]); - if(fp) fclose(fp); - return(0); - } - - RecStart = FALSE; - - AddressCurrent = 0xFFFFFFFFL; - - // Setup Tag - - dumpfTell("Tag", Tag); - - binOut32(Tag); - - - inputline=0; - sts=TRUE; - - rlen = readline(fp,buff,sizeof buff); - - while( (sts) && (rlen != -1)) - { - if (strlen(buff)) - { - sts &= srecLine(buff); - WaitDisplay(); - } - rlen = readline(fp,buff,sizeof buff); - } - - - // printf("PC: 0x%08X, Length 0x%08X, Tag 0x%08X\n", ProgramStart, RecLength, TAG_LITTLE); - - binRecEnd(); - - if(fp) fclose(fp); - if(fOut) fclose(fOut); - - return(1); -} - -int main(int argc, char *argv[]) -{ - debug = FALSE; - verbose = FALSE; - srec2bin(argc,argv,verbose); - return 0; -} diff --git a/tools/syslinux/Makefile b/tools/syslinux/Makefile deleted file mode 100644 index 1344538d1..000000000 --- a/tools/syslinux/Makefile +++ /dev/null @@ -1,37 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -PKG_NAME:= syslinux -PKG_VERSION:= 6.02 -PKG_RELEASE:= 1 -PKG_MD5SUM:= 086ac1c569d226a5e2ae3d605de09a1d -PKG_SITES:= http://www.kernel.org/pub/linux/utils/boot/syslinux/ - -include ../rules.mk -WRKINST:= ${WRKBUILD}/openadk_installroot - -install: ${STAGING_HOST_DIR}/usr/bin/extlinux ${STAGING_HOST_DIR}/usr/share/syslinux/.installed - -$(WRKBUILD)/.compiled: ${WRKDIST}/.prepared - ${MAKE} -C ${WRKBUILD} CC='${CC_FOR_BUILD}' bios installer - @touch $@ - -$(WRKBUILD)/.installed: ${WRKBUILD}/.compiled - mkdir -p ${WRKINST} - ${MAKE} -C ${WRKBUILD} CC='${CC_FOR_BUILD}' \ - INSTALLROOT='${WRKINST}' \ - bios install - @touch $@ - -${STAGING_HOST_DIR}/usr/bin/extlinux: $(WRKBUILD)/.installed - $(INSTALL_BIN) ${WRKINST}/sbin/extlinux \ - ${STAGING_HOST_DIR}/usr/bin - -${STAGING_HOST_DIR}/usr/share/syslinux/.installed: ${WRKBUILD}/.installed - mkdir -p ${STAGING_HOST_DIR}/usr/share - ${CP} ${WRKINST}/usr/share/syslinux ${STAGING_HOST_DIR}/usr/share - @touch ${STAGING_HOST_DIR}/usr/share/syslinux/.installed - -include $(TOPDIR)/mk/tools.mk diff --git a/tools/trx/Makefile b/tools/trx/Makefile deleted file mode 100644 index 25e2b02db..000000000 --- a/tools/trx/Makefile +++ /dev/null @@ -1,4 +0,0 @@ -include $(TOPDIR)/rules.mk - -all: trx.c - $(CC_FOR_BUILD) $(FLAGS_FOR_BUILD) -o ${STAGING_HOST_DIR}/usr/bin/trx trx.c diff --git a/tools/trx/trx.c b/tools/trx/trx.c deleted file mode 100644 index 9e4d521ca..000000000 --- a/tools/trx/trx.c +++ /dev/null @@ -1,366 +0,0 @@ -/* - * Copyright (C) 2004 Manuel Novoa III <mjn3@codepoet.org> - * Copyright (C) 2005 Konstantin A. Klubnichkin and Oleg I. Vdovikin - * Copyright (C) 2006 OpenWrt developers <openwrt-developers@openwrt.org> - * Copyright (C) 2011 Waldemar Brodkorb <wbx@openadk.org> - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2 of the License, or - * (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with this program; if not, write to the Free Software - * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - */ - - -#include <stdio.h> -#include <stdlib.h> -#include <stddef.h> -#include <stdint.h> -#include <string.h> -#include <errno.h> -#include <unistd.h> - -uint32_t crc32buf(char *buf, size_t len); - -/**********************************************************************/ -/* from trxhdr.h */ - -#define TRX_MAGIC 0x30524448 /* "HDR0" */ -#define TRX_VERSION 1 -#define TRX_MAX_LEN 0x697800 -#define TRX_NO_HEADER 1 /* Do not write TRX header */ - -struct trx_header { - uint32_t magic; /* "HDR0" */ - uint32_t len; /* Length of file including header */ - uint32_t crc32; /* 32-bit CRC from flag_version to end of file */ - uint32_t flag_version; /* 0:15 flags, 16:31 version */ - uint32_t offsets[3]; /* Offsets of partitions from start of header */ -}; - -/**********************************************************************/ - -void usage(void) __attribute__ (( __noreturn__ )); - -void usage(void) -{ - fprintf(stderr, "Usage: trx [-p product_id] [-v version] [-o outfile] [-m maxlen] [-a align] [-b offset] -f file [-f file [-f file]]\n"); - exit(EXIT_FAILURE); -} - -int main(int argc, char **argv) -{ - FILE *out = stdout; - FILE *in; - char *ofn = NULL; - char *buf; - char *e; - int c, i; - size_t n; - uint32_t cur_len; - unsigned long maxlen = TRX_MAX_LEN; - struct trx_header *p; - - struct { - uint8_t version[4]; /* Firmware version */ - uint8_t prod_id[12]; /* Product Id */ - uint8_t comp_hw[4][4]; /* Compatible hw list maj-min min/maj-min max */ - uint8_t pad[32]; /* Padding */ - } asus = { - .version = { 1, 9, 2, 7 }, /* version is set to 1.9.2.7 by default */ - .comp_hw[0] = { 0, 2, 2, 99 } /* hardcoded hw compat list 0.02 - 2.99 */ - }; - - - if (!(buf = malloc(maxlen))) { - fprintf(stderr, "malloc failed\n"); - return EXIT_FAILURE; - } - - p = (struct trx_header *) buf; - - p->magic = TRX_MAGIC; - cur_len = sizeof(struct trx_header); - p->flag_version = (TRX_VERSION << 16); - - in = NULL; - i = 0; - - while ((c = getopt(argc, argv, "-:o:p:v:m:a:b:f:")) != -1) { - switch (c) { - case 'f': - p->offsets[i++] = cur_len; - - if (!(in = fopen(optarg, "r"))) { - fprintf(stderr, "can not open \"%s\" for reading\n", optarg); - usage(); - } - n = fread(buf + cur_len, 1, maxlen - cur_len, in); - if (!feof(in)) { - fprintf(stderr, "fread failure or file \"%s\" too large\n",optarg); - fclose(in); - return EXIT_FAILURE; - } - fclose(in); -#undef ROUND -#define ROUND 4 - if (n & (ROUND-1)) { - memset(buf + cur_len + n, 0, ROUND - (n & (ROUND-1))); - n += ROUND - (n & (ROUND-1)); - } - cur_len += n; - /* reserve space for asus footer */ - if (asus.prod_id[0]) { - cur_len += sizeof(asus); - } - break; - case 'o': - ofn = optarg; - if (ofn && !(out = fopen(ofn, "w"))) { - fprintf(stderr, "can not open \"%s\" for writing\n", ofn); - usage(); - } - - break; - case 'm': - errno = 0; - maxlen = strtoul(optarg, &e, 0); - if (errno || (e == optarg) || *e) { - fprintf(stderr, "illegal numeric string\n"); - usage(); - } -#undef ROUND -#define ROUND 0x1000 - if (maxlen & (ROUND-1)) { - maxlen += (ROUND - (maxlen & (ROUND-1))); - } - if (maxlen < ROUND) { - fprintf(stderr, "maxlen too small (or wrapped)\n"); - usage(); - } - if (maxlen > TRX_MAX_LEN) { - fprintf(stderr, "WARNING: maxlen exceeds default maximum! Beware of overwriting nvram!\n"); - } - if (!(buf = realloc(buf,maxlen))) { - fprintf(stderr, "realloc failed"); - return EXIT_FAILURE; - } - break; - case 'a': - errno = 0; - n = strtoul(optarg, &e, 0); - if (errno || (e == optarg) || *e) { - fprintf(stderr, "illegal numeric string\n"); - usage(); - } - if (cur_len & (n-1)) { - n = n - (cur_len & (n-1)); - memset(buf + cur_len, 0, n); - cur_len += n; - } - break; - case 'b': - errno = 0; - n = strtoul(optarg, &e, 0); - if (errno || (e == optarg) || *e) { - fprintf(stderr, "illegal numeric string\n"); - usage(); - } - if (n < cur_len) { - fprintf(stderr, "WARNING: current length exceeds -b %d offset\n",(int)n); - } else { - memset(buf + cur_len, 0, n - cur_len); - cur_len = n; - } - break; - case 'p': - if ((n = strlen(optarg)) > sizeof(asus.prod_id)) { - fprintf(stderr, "product id too long\n"); - usage(); - } - memset(asus.prod_id, ' ', sizeof(asus.prod_id)); - memcpy(asus.prod_id, optarg, n); - break; - case 'v': - for (n = 0; n < sizeof(asus.version) / sizeof(asus.version[0]); n++) - { - if (n != 0 && optarg[0] == '.' && optarg[1]) optarg++; - else if (n != 0) break; - - asus.version[n] = strtoul(optarg, &optarg, 10); - } - if (*optarg) - { - fprintf(stderr, "invalid version string\n"); - usage(); - } - break; - default: - usage(); - } - } - - if (!in) { - fprintf(stderr, "we require at least one filename\n"); - usage(); - } - -#undef ROUND -#define ROUND 0x1000 - n = cur_len & (ROUND-1); - if (n) { - memset(buf + cur_len, 0, ROUND - n); - cur_len += ROUND - n; - } - /* add asus footer */ - if (asus.prod_id[0]) { - memcpy(buf + cur_len - sizeof(asus), &asus, sizeof(asus)); - } - - p->crc32 = crc32buf((char *) &p->flag_version, - cur_len - offsetof(struct trx_header, flag_version)); - p->crc32 = p->crc32; - - p->len = cur_len; - - if (!fwrite(buf, cur_len, 1, out) || fflush(out)) { - fprintf(stderr, "fwrite failed\n"); - return EXIT_FAILURE; - } - - fclose(out); - - return EXIT_SUCCESS; -} - -/**********************************************************************/ -/* The following was grabbed and tweaked from the old snippets collection - * of public domain C code. */ - -/**********************************************************************\ -|* Demonstration program to compute the 32-bit CRC used as the frame *| -|* check sequence in ADCCP (ANSI X3.66, also known as FIPS PUB 71 *| -|* and FED-STD-1003, the U.S. versions of CCITT's X.25 link-level *| -|* protocol). The 32-bit FCS was added via the Federal Register, *| -|* 1 June 1982, p.23798. I presume but don't know for certain that *| -|* this polynomial is or will be included in CCITT V.41, which *| -|* defines the 16-bit CRC (often called CRC-CCITT) polynomial. FIPS *| -|* PUB 78 says that the 32-bit FCS reduces otherwise undetected *| -|* errors by a factor of 10^-5 over 16-bit FCS. *| -\**********************************************************************/ - -/* Copyright (C) 1986 Gary S. Brown. You may use this program, or - code or tables extracted from it, as desired without restriction.*/ - -/* First, the polynomial itself and its table of feedback terms. The */ -/* polynomial is */ -/* X^32+X^26+X^23+X^22+X^16+X^12+X^11+X^10+X^8+X^7+X^5+X^4+X^2+X^1+X^0 */ -/* Note that we take it "backwards" and put the highest-order term in */ -/* the lowest-order bit. The X^32 term is "implied"; the LSB is the */ -/* X^31 term, etc. The X^0 term (usually shown as "+1") results in */ -/* the MSB being 1. */ - -/* Note that the usual hardware shift register implementation, which */ -/* is what we're using (we're merely optimizing it by doing eight-bit */ -/* chunks at a time) shifts bits into the lowest-order term. In our */ -/* implementation, that means shifting towards the right. Why do we */ -/* do it this way? Because the calculated CRC must be transmitted in */ -/* order from highest-order term to lowest-order term. UARTs transmit */ -/* characters in order from LSB to MSB. By storing the CRC this way, */ -/* we hand it to the UART in the order low-byte to high-byte; the UART */ -/* sends each low-bit to hight-bit; and the result is transmission bit */ -/* by bit from highest- to lowest-order term without requiring any bit */ -/* shuffling on our part. Reception works similarly. */ - -/* The feedback terms table consists of 256, 32-bit entries. Notes: */ -/* */ -/* 1. The table can be generated at runtime if desired; code to do so */ -/* is shown later. It might not be obvious, but the feedback */ -/* terms simply represent the results of eight shift/xor opera- */ -/* tions for all combinations of data and CRC register values. */ -/* */ -/* 2. The CRC accumulation logic is the same for all CRC polynomials, */ -/* be they sixteen or thirty-two bits wide. You simply choose the */ -/* appropriate table. Alternatively, because the table can be */ -/* generated at runtime, you can start by generating the table for */ -/* the polynomial in question and use exactly the same "updcrc", */ -/* if your application needn't simultaneously handle two CRC */ -/* polynomials. (Note, however, that XMODEM is strange.) */ -/* */ -/* 3. For 16-bit CRCs, the table entries need be only 16 bits wide; */ -/* of course, 32-bit entries work OK if the high 16 bits are zero. */ -/* */ -/* 4. The values must be right-shifted by eight bits by the "updcrc" */ -/* logic; the shift must be unsigned (bring in zeroes). On some */ -/* hardware you could probably optimize the shift in assembler by */ -/* using byte-swap instructions. */ - -static const uint32_t crc_32_tab[] = { /* CRC polynomial 0xedb88320 */ -0x00000000, 0x77073096, 0xee0e612c, 0x990951ba, 0x076dc419, 0x706af48f, -0xe963a535, 0x9e6495a3, 0x0edb8832, 0x79dcb8a4, 0xe0d5e91e, 0x97d2d988, -0x09b64c2b, 0x7eb17cbd, 0xe7b82d07, 0x90bf1d91, 0x1db71064, 0x6ab020f2, -0xf3b97148, 0x84be41de, 0x1adad47d, 0x6ddde4eb, 0xf4d4b551, 0x83d385c7, -0x136c9856, 0x646ba8c0, 0xfd62f97a, 0x8a65c9ec, 0x14015c4f, 0x63066cd9, -0xfa0f3d63, 0x8d080df5, 0x3b6e20c8, 0x4c69105e, 0xd56041e4, 0xa2677172, -0x3c03e4d1, 0x4b04d447, 0xd20d85fd, 0xa50ab56b, 0x35b5a8fa, 0x42b2986c, -0xdbbbc9d6, 0xacbcf940, 0x32d86ce3, 0x45df5c75, 0xdcd60dcf, 0xabd13d59, -0x26d930ac, 0x51de003a, 0xc8d75180, 0xbfd06116, 0x21b4f4b5, 0x56b3c423, -0xcfba9599, 0xb8bda50f, 0x2802b89e, 0x5f058808, 0xc60cd9b2, 0xb10be924, -0x2f6f7c87, 0x58684c11, 0xc1611dab, 0xb6662d3d, 0x76dc4190, 0x01db7106, -0x98d220bc, 0xefd5102a, 0x71b18589, 0x06b6b51f, 0x9fbfe4a5, 0xe8b8d433, -0x7807c9a2, 0x0f00f934, 0x9609a88e, 0xe10e9818, 0x7f6a0dbb, 0x086d3d2d, -0x91646c97, 0xe6635c01, 0x6b6b51f4, 0x1c6c6162, 0x856530d8, 0xf262004e, -0x6c0695ed, 0x1b01a57b, 0x8208f4c1, 0xf50fc457, 0x65b0d9c6, 0x12b7e950, -0x8bbeb8ea, 0xfcb9887c, 0x62dd1ddf, 0x15da2d49, 0x8cd37cf3, 0xfbd44c65, -0x4db26158, 0x3ab551ce, 0xa3bc0074, 0xd4bb30e2, 0x4adfa541, 0x3dd895d7, -0xa4d1c46d, 0xd3d6f4fb, 0x4369e96a, 0x346ed9fc, 0xad678846, 0xda60b8d0, -0x44042d73, 0x33031de5, 0xaa0a4c5f, 0xdd0d7cc9, 0x5005713c, 0x270241aa, -0xbe0b1010, 0xc90c2086, 0x5768b525, 0x206f85b3, 0xb966d409, 0xce61e49f, -0x5edef90e, 0x29d9c998, 0xb0d09822, 0xc7d7a8b4, 0x59b33d17, 0x2eb40d81, -0xb7bd5c3b, 0xc0ba6cad, 0xedb88320, 0x9abfb3b6, 0x03b6e20c, 0x74b1d29a, -0xead54739, 0x9dd277af, 0x04db2615, 0x73dc1683, 0xe3630b12, 0x94643b84, -0x0d6d6a3e, 0x7a6a5aa8, 0xe40ecf0b, 0x9309ff9d, 0x0a00ae27, 0x7d079eb1, -0xf00f9344, 0x8708a3d2, 0x1e01f268, 0x6906c2fe, 0xf762575d, 0x806567cb, -0x196c3671, 0x6e6b06e7, 0xfed41b76, 0x89d32be0, 0x10da7a5a, 0x67dd4acc, -0xf9b9df6f, 0x8ebeeff9, 0x17b7be43, 0x60b08ed5, 0xd6d6a3e8, 0xa1d1937e, -0x38d8c2c4, 0x4fdff252, 0xd1bb67f1, 0xa6bc5767, 0x3fb506dd, 0x48b2364b, -0xd80d2bda, 0xaf0a1b4c, 0x36034af6, 0x41047a60, 0xdf60efc3, 0xa867df55, -0x316e8eef, 0x4669be79, 0xcb61b38c, 0xbc66831a, 0x256fd2a0, 0x5268e236, -0xcc0c7795, 0xbb0b4703, 0x220216b9, 0x5505262f, 0xc5ba3bbe, 0xb2bd0b28, -0x2bb45a92, 0x5cb36a04, 0xc2d7ffa7, 0xb5d0cf31, 0x2cd99e8b, 0x5bdeae1d, -0x9b64c2b0, 0xec63f226, 0x756aa39c, 0x026d930a, 0x9c0906a9, 0xeb0e363f, -0x72076785, 0x05005713, 0x95bf4a82, 0xe2b87a14, 0x7bb12bae, 0x0cb61b38, -0x92d28e9b, 0xe5d5be0d, 0x7cdcefb7, 0x0bdbdf21, 0x86d3d2d4, 0xf1d4e242, -0x68ddb3f8, 0x1fda836e, 0x81be16cd, 0xf6b9265b, 0x6fb077e1, 0x18b74777, -0x88085ae6, 0xff0f6a70, 0x66063bca, 0x11010b5c, 0x8f659eff, 0xf862ae69, -0x616bffd3, 0x166ccf45, 0xa00ae278, 0xd70dd2ee, 0x4e048354, 0x3903b3c2, -0xa7672661, 0xd06016f7, 0x4969474d, 0x3e6e77db, 0xaed16a4a, 0xd9d65adc, -0x40df0b66, 0x37d83bf0, 0xa9bcae53, 0xdebb9ec5, 0x47b2cf7f, 0x30b5ffe9, -0xbdbdf21c, 0xcabac28a, 0x53b39330, 0x24b4a3a6, 0xbad03605, 0xcdd70693, -0x54de5729, 0x23d967bf, 0xb3667a2e, 0xc4614ab8, 0x5d681b02, 0x2a6f2b94, -0xb40bbe37, 0xc30c8ea1, 0x5a05df1b, 0x2d02ef8d -}; - -#define UPDC32(octet,crc) (crc_32_tab[((crc) ^ (octet)) & 0xff] ^ ((crc) >> 8)) - -uint32_t crc32buf(char *buf, size_t len) -{ - uint32_t crc; - - crc = 0xFFFFFFFF; - - for ( ; len; --len, ++buf) - { - crc = UPDC32(*buf, crc); - } - - return crc; -} diff --git a/tools/xz/Makefile b/tools/xz/Makefile deleted file mode 100644 index fa4c51f92..000000000 --- a/tools/xz/Makefile +++ /dev/null @@ -1,28 +0,0 @@ -# This file is part of the OpenADK project. OpenADK is copyrighted -# material, please see the LICENCE file in the top-level directory. - -include $(TOPDIR)/rules.mk - -PKG_NAME:= xz -PKG_VERSION:= 5.0.5 -PKG_RELEASE:= 1 -PKG_MD5SUM:= 1b7a781fb4cf8938842279bd3e8ee852 -PKG_SITES:= http://tukaani.org/xz/ - -include ../rules.mk - -install: $(WRKBUILD)/.installed - -$(WRKBUILD)/.configured: ${WRKDIST}/.prepared - (cd ${WRKBUILD}; ./configure --prefix=$(STAGING_HOST_DIR)/usr) - @touch $@ - -$(WRKBUILD)/.compiled: $(WRKBUILD)/.configured - ${MAKE} -C ${WRKBUILD} - @touch $@ - -$(WRKBUILD)/.installed: $(WRKBUILD)/.compiled - ${MAKE} -C ${WRKBUILD} install - @touch $@ - -include $(TOPDIR)/mk/tools.mk |