Ich habe mal den Fork (mit dem Branch 6490) genommen, weil ich ein paar Binaries für die 6490 brauche, die für die Veröffentlichung taugen und für die GPLv2-Konformität gerne auf die Freetz-Toolchain als "Quelle" zurückgreife, damit man das nicht noch weiter "ausfransen" lassen muß. Insofern hoffe ich auch, daß der Branch bald Einzug hält - Deine derzeitige Trennung nach "6490" und "6590" bei den eigenen Branches verstehe ich aber nicht (macht das nur unnötig kompliziert, auch für einen Review).
Bei der Gelegenheit habe ich dann auch gleich die umgepackten Kernel-Quellen als TAR-Archiv mit XZ-Komprimierung auf yourfritz.de bereitgestellt, falls sich jemand das eigene Umpacken ersparen will (siehe "
files.lst" dort). Auch Deine vorbereiteten Toolchain-Pakete habe ich mal vom Share-Hoster auf yourfritz.de ausgelagert - vielleicht klappt es von dort auch mit dem automatischen Download, wenn jemand die Download-Toolchain verwenden will - ich hatte noch einmal selbst die Toolchain bauen lassen.
Im Verlauf sind mir ein paar (sehr kleine) Probleme aufgefallen, die auch eher mit den Paketen als mit Deinen Patches zusammenhängen - das hält mich aber nicht davon ab, sie in diesem Thread mal zu schildern, weil sie bei anderen Modellen nicht auftreten.
==============================================================
Beim Bauen von "socat" (irgendjemand schrieb vor kurzem, daß er dieses Tool lieben würde) mit "termios"-Support fällt das Paket auf die Nase, weil der Check auf "c_ispeed" als Member der "termios"-Struktur positiv ausfällt (Auszug aus der "config.log" für "socat"):
Code:
configure:10505: checking for termios.c_ispeed
configure:10531: /home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/bin/i686-linux-uclibc-gcc -c -march=atom -mtune=atom -Os -pipe -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D
_GNU_SOURCE -Wall -Wno-parentheses conftest.c >&5
conftest.c: In function 'main':
conftest.c:144:16: warning: variable 't' set but not used [-Wunused-but-set-variable]
configure:10537: $? = 0
configure:10559: result: yes
configure:10563: checking for offset of c_ispeed in struct termios
configure:10632: result: -1
Nach der "termbits.h" in den Kernel-Quellen sollte das eigentlich nicht der Fall sein:
Code:
#define NCCS 19
struct termios {
tcflag_t c_iflag; /* input mode flags */
tcflag_t c_oflag; /* output mode flags */
tcflag_t c_cflag; /* control mode flags */
tcflag_t c_lflag; /* local mode flags */
cc_t c_line; /* line discipline */
cc_t c_cc[NCCS]; /* control characters */
};
struct termios2 {
tcflag_t c_iflag; /* input mode flags */
tcflag_t c_oflag; /* output mode flags */
tcflag_t c_cflag; /* control mode flags */
tcflag_t c_lflag; /* local mode flags */
cc_t c_line; /* line discipline */
cc_t c_cc[NCCS]; /* control characters */
speed_t c_ispeed; /* input speed */
speed_t c_ospeed; /* output speed */
};
struct ktermios {
tcflag_t c_iflag; /* input mode flags */
tcflag_t c_oflag; /* output mode flags */
tcflag_t c_cflag; /* control mode flags */
tcflag_t c_lflag; /* local mode flags */
cc_t c_line; /* line discipline */
cc_t c_cc[NCCS]; /* control characters */
speed_t c_ispeed; /* input speed */
speed_t c_ospeed; /* output speed */
};
, wie man sieht, wäre das nur für "termios2" gültig. Also wird wohl irgendwo noch ein Mapping von "termios2" als "termios" erfolgen ... ich bin dem noch nicht weiter nachgegangen, wo das geschieht. Fakt ist aber, daß es beim "configure" für das Paket gefunden wird (s.o.) und daraus Probleme beim Cross-Build für "socat" resultieren, denn man läuft in den folgenden Fehler (auch wieder nur ein Auszug):
Code:
cmd() { PATH="/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/bin:/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4/i686-unknown-linux-gnu/bin:/home/freetz/bin:/usr/local/sbin:/usr/local/bin:/usr/
sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin" LD_RUN_PATH="/usr/lib/freetz" FREETZ_LIBRARY_DIR="/usr/lib/freetz" make -j2 "$@" || { printf "\n\\033[33m%s\\033[m\n" "ERROR: Build failed."; exit 1; } }; if [ -e so
urce/.echo_item_start -a ! -e source/.echo_item_build ]; then echo -n "building... "; touch source/.echo_item_build; fi; cmd -C source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/socat-1.7.1.3
building... make[1]: Entering directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/socat-1.7.1.3'
/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/bin/i686-linux-uclibc-gcc -march=atom -mtune=atom -Os -pipe -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -Wall -W
no-parentheses -DHAVE_CONFIG_H -I. -I. -c -o socat.o socat.c
/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/bin/i686-linux-uclibc-gcc -march=atom -mtune=atom -Os -pipe -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -Wall -W
no-parentheses -DHAVE_CONFIG_H -I. -I. -c -o xioinitialize.o xioinitialize.c
xioinitialize.c: In function 'xioinitialize':
xioinitialize.c:68:7: error: 'ISPEED_OFFSET' undeclared (first use in this function)
xioinitialize.c:68:7: note: each undeclared identifier is reported only once for each function it appears in
xioinitialize.c:69:7: error: 'OSPEED_OFFSET' undeclared (first use in this function)
<builtin>: recipe for target 'xioinitialize.o' failed
make[1]: *** [xioinitialize.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/socat-1.7.1.3'
.[33mERROR: Build failed..[m
make/socat/socat.mk:29: recipe for target 'source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/socat-1.7.1.3/socat' failed
make: *** [source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/socat-1.7.1.3/socat] Error 1
Ursache ist hier, daß im "configure" für "socat" beim Cross-Compile immer die feste Angabe "-1" für ISPEED_OFFSET angenommen wird (das hat sich auch in der aktuellen 1.7.3.2 nicht geändert) und das entsprechende "define"-Statement für "ISPEED_OFFSET" nur dann erzeugt wird, wenn der Wert größer als 0 ist:
Code:
if test "${ac_cv_ispeed_offset+set}" = set; then
echo $ECHO_N "(cached) $ECHO_C" >&6
else
conftestspeedoff="conftestspeedoff.out"
if test "$cross_compiling" = yes; then
ac_cv_ispeed_offset=-1 #!
else
cat >conftest.$ac_ext <<_ACEOF
/* confdefs.h. */
_ACEOF
Code:
AC_MSG_RESULT($ac_cv_ispeed_offset)
if test $ac_cv_ispeed_offset -ge 0; then
AC_DEFINE_UNQUOTED(ISPEED_OFFSET, $ac_cv_ispeed_offset)
fi
fi
In der Folge ist ISPEED_OFFSET eben "undefined" - würde der Test auf "c_ispeed" gleich fehlschlagen, wie es beim VR9 der Fall ist:
Code:
configure:10505: checking for termios.c_ispeed
configure:10531: /home/freetz/vr9/toolchain/build/mips_gcc-4.9.4_uClibc-0.9.33.2-nptl_kernel-3.10/mips-linux-uclibc/bin/mips-linux-uclibc-gcc -c -march=24kc -mtune=24kc -msoft-float -Os -pipe -Wa,--trap -D_LARGEFILE_SOURCE -D_LARGEFILE64
_SOURCE -D_FILE_OFFSET_BITS=64 -D_GNU_SOURCE -Wall -Wno-parentheses conftest.c >&5
conftest.c: In function 'main':
conftest.c:143:20: error: 'struct termios' has no member named 'c_ispeed'
struct termios t; t.c_ispeed=0;
^
conftest.c:143:16: warning: variable 't' set but not used [-Wunused-but-set-variable]
struct termios t; t.c_ispeed=0;
^
configure:10537: $? = 1
configure: failed program was:
[...]
configure:10559: result: no
, dann gäbe es das Problem für den ATOM-Prozessor auch nicht. Was man hier nun wie anpassen sollte (die "termios"-Definition für die Toolchain, das "configure" im "socat"-Paket (in "xioinitialize.c" wird das sogar richtig abgefangen, wenn ISPEED_OFFSET halt "-1" wäre, nur eben nicht in die "config.h" geschrieben wegen des zusätzlichen Tests in "configure.in" - auch die Änderung der "config.h.in" könnte ein Weg sein, damit wenigstens "-1" definiert ist, wenn es nicht überschrieben wird) oder gleich die Vorbelegung von "configure"-Variablen in "socat.mk", damit der Test auf "c_ispeed" gar nicht erst erfolgt), weiß ich auch nicht ... auch das Auslassen des "termios"-Supports beim "socat"-Build hilft ja bereits.
==============================================================
Auch das Installieren der "libffi" läuft für die Toolchain offenbar etwas anders ... wird das Paket implizit eingeschlossen (z.B. über die "glib2", die wieder vom "Midnight Commander"-Paket gebraucht wird), wird bei jedem "make"-Aufruf dessen Installation erneut ausgeführt, egal wie oft die zuvor schon erfolgt ist:
Code:
cmd() { PATH="/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/bin:/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4/i686-unknown-linux-gnu/bin:/home/freetz/bin:/usr/local/sbin:/usr/local/bin:/usr/
sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin" LD_RUN_PATH="/usr/lib/freetz" FREETZ_LIBRARY_DIR="/usr/lib/freetz" make -j2 "$@" || { printf "\n\\033[33m%s\\033[m\n" "ERROR: Build failed."; exit 1; } }; if [ -e so
urce/.echo_item_start -a ! -e source/.echo_item_build ]; then echo -n "building... "; touch source/.echo_item_build; fi; cmd -C source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1
make[1]: Entering directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1'
MAKE i686-pc-linux-gnu : 0 * all-all
make[2]: Entering directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu'
make 'AR_FLAGS=' 'CC_FOR_BUILD=' 'CFLAGS=-march=atom -mtune=atom -Os -pipe -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Wall -fexceptions' 'CXXFLAGS=-march=atom -mtune=atom -Os -pipe -D_LARGEFILE_SOURCE -D_LARGEFIL
E64_SOURCE -D_FILE_OFFSET_BITS=64' 'CFLAGS_FOR_BUILD=' 'CFLAGS_FOR_TARGET=' 'INSTALL=/usr/bin/install -c' 'INSTALL_DATA=/usr/bin/install -c -m 644' 'INSTALL_PROGRAM=/usr/bin/install -c' 'INSTALL_SCRIPT=/usr/bin/install -c' 'JC1FLAGS=' 'L
DFLAGS=' 'LIBCFLAGS=' 'LIBCFLAGS_FOR_TARGET=' 'MAKE=make' 'MAKEINFO=/bin/bash /home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/missing makeinfo ' 'PICFLAG=' 'PICFLAG_FOR_TARGET=' 'RUNTESTFLAGS=' 'SHELL=/b
in/bash' 'exec_prefix=/usr' 'infodir=/usr/share/info' 'libdir=/usr/lib' 'mandir=/usr/share/man' 'prefix=/usr' 'AR=i686-linux-ar' 'AS=as' 'CC=/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/bin/i68
6-linux-uclibc-gcc' 'CXX=/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/bin/i686-linux-uclibc-g++-wrapper' 'LD=/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uc
libc/i686-linux-uclibc/bin/ld' 'NM=/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/bin/i686-linux-nm -B' 'RANLIB=i686-linux-ranlib' 'DESTDIR=' all-recursive
make[3]: Entering directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu'
Making all in include
make[4]: Entering directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu/include'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu/include'
make[4]: Entering directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu'
make[4]: Leaving directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu'
make[3]: Leaving directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu'
make[2]: Leaving directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu'
make[1]: Leaving directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1'
cmd() { PATH="/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/bin:/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4/i686-unknown-linux-gnu/bin:/home/freetz/bin:/usr/local/sbin:/usr/local/bin:/usr/
sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin" LD_RUN_PATH="/usr/lib/freetz" FREETZ_LIBRARY_DIR="/usr/lib/freetz" make -j2 "$@" || { printf "\n\\033[33m%s\\033[m\n" "ERROR: Build failed."; exit 1; } }; if [ -e so
urce/.echo_item_start -a ! -e source/.echo_item_build ]; then echo -n "building... "; touch source/.echo_item_build; fi; cmd -C source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1 \
DESTDIR="/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc" \
install
make[1]: Entering directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1'
MAKE i686-pc-linux-gnu : 0 * install
make[2]: Entering directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu'
Making install in include
make[3]: Entering directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu/include'
make[4]: Entering directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu/include'
make[4]: Nothing to be done for 'install-exec-am'.
/bin/mkdir -p '/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/include'
/usr/bin/install -c -m 644 ffi.h ffitarget.h '/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/include'
make[4]: Leaving directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu/include'
make[3]: Leaving directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu/include'
make[3]: Entering directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu'
make[4]: Entering directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu'
/bin/mkdir -p '/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/lib/pkgconfig'
/usr/bin/install -c -m 644 libffi.pc '/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/lib/pkgconfig'
/bin/mkdir -p '/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/lib'
/bin/bash ./libtool --mode=install /usr/bin/install -c libffi.la '/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/lib'
libtool: install: /usr/bin/install -c .libs/libffi.so.6.0.4 /home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/lib/libffi.so.6.0.4
libtool: install: (cd /home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/lib && { ln -s -f libffi.so.6.0.4 libffi.so.6 || { rm -f libffi.so.6 && ln -s libffi.so.6.0.4 libffi.so.6; }; })
libtool: install: (cd /home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/lib && { ln -s -f libffi.so.6.0.4 libffi.so || { rm -f libffi.so && ln -s libffi.so.6.0.4 libffi.so; }; })
libtool: install: /usr/bin/install -c .libs/libffi.lai /home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/lib/libffi.la
libtool: install: /usr/bin/install -c .libs/libffi.a /home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/lib/libffi.a
libtool: install: chmod 644 /home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/lib/libffi.a
libtool: install: i686-linux-ranlib /home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/lib/libffi.a
libtool: install: warning: remember to run `libtool --finish /usr/lib'
make[4]: Leaving directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu'
make[3]: Leaving directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu'
make[2]: Leaving directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1/i686-pc-linux-gnu'
make[1]: Leaving directory '/home/freetz/puma6/source/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/libffi-3.2.1'
sed -i -r -e "s,^(libdir=)(['"'"'"]?)([^'"'"'"]*)(\2)$,\1\2/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc\3\4,g" -e "s,^(includedir=)(['"'"'"]?)([^'"'"'"]*)(\2)$,\1\2/home/freetz/puma6/toolchain/
build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc\3\4,g" -e "s,^(prefix=)(['"'"'"]?)([^'"'"'"]*)(\2)$,\1\2/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc\3\4,g" -e "s,^(exec_prefix=)(['"
'"'"]?)([^'"'"'"]*)(\2)$,\1\2/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc\3\4,g" -e "/^dependency_libs/s,[ \t], ,g;s,([ '])((/usr)?/lib/[^ /]+[.]la)([ ']),\1/home/freetz/puma6/toolchain/build/
i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc\2\4,g;s, +, ,g" \
/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/lib/libffi.la \
/home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/lib/pkgconfig/libffi.pc
chmod 755 /home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/lib/libffi.so.6.0.4; mkdir -p packages/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/root/usr/lib/freetz/; rm -f packages/target-i686_gcc
-4.7.4_uClibc-0.9.33.2-nptl/root/usr/lib/freetz/libffi.so*; cp -a /home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/usr/lib/libffi.so* packages/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/root/usr/li
b/freetz/; /home/freetz/puma6/toolchain/build/i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/i686-linux-uclibc/bin/i686-linux-uclibc-strip --remove-section={.comment,.note,.pdr} packages/target-i686_gcc-4.7.4_uClibc-0.9.33.2-nptl/root/usr/lib/freet
z/libffi.so.6.0.4;
(unmotivierte Zeilenumbrüche sind der Tatsache geschuldet, daß ich das nur über das Clipboard aus einer Terminal-Session kopiert habe).
Das geschieht bei der VR9-Version auch nicht ... aber auch hier habe ich noch nicht genauer nachgesehen, welche Abhängigkeit jetzt dazu führt, daß dieses Makefile zumindest für die Installation immer wieder aufgerufen wird ... man sieht ja auch, daß es nichts mehr zu Kompilieren oder Linken gibt und nur irgendein "install"-Ergebnis wohl nicht dort ist, wo es am Ende erwartet wird. Auch das kann aber natürlich ebenfalls im Paket liegen, falls da irgendwo noch ein Pfad in den Abhängigkeiten hartkodiert ist, der bei der anderen Toolchain eben anders lautet.
==============================================================
Ansonsten hat das Bauen der Pakete auch einigermaßen reibungslos funktioniert (mit kleinen Reibereien bzgl. der neuen Applets in der BusyBox 1.27.2, die der alten Kernel-Version für die 6490 geschuldet waren) ... zur tatsächlichen Funktion irgendwelcher Images kann ich leider nichts beitragen, weil ich keine Freetz-Images verwende.