TODO for PTXdist 0.10 Series - High Priority ============================================ [ ] util-linux: re-calls automake during compile [ ] unbreak host-zlib; it is necessary for host-umkimage if there is no zlib devel packet installed on the host. [ ] Start a "Global Patch Repository Unification Project". Potential members: * PTXdist * T2 * OpenEmbedded http://www.openembedded.org/repo/org.openembedded.dev/packages/ * Gentoo * Debian [ ] if a packet is not selected, it's dependencies are not generated. If you kick a stage then, the dependend stages are not executed. Solution: generate the stages as well, so we get an error in that case. [ ] we seem to need python2.3-dev, reported by Marco Cavallini: ------------------------------- target: host-ipkg-utils.install ------------------------------- mkdir -p ""/home/koan/ptxtest/generic_test/local""/usr/bin # ipkg.py is forgotten by MAKE_INSTALL, so we copy it manually # FIXME: this should probably be fixed upstream make[1]: Entering directory `/home/koan/ptxtest/generic_test/build-host/ipkg-utils-1.7' cp ipkg-build ipkg-deb-unbuild ipkg-unbuild ipkg-compare-versions ipkg-upload /home/koan/ptxtest/generic_test/local/usr/bin python setup.py install --prefix=/home/koan/ptxtest/generic_test/local/usr /usr/lib/python2.3/distutils/dist.py:213: UserWarning: 'licence' distribution option is deprecated; use 'license' warnings.warn(msg) running install error: invalid Python installation: unable to open /usr/lib/python2.3/config/Makefile (No such file or directory) make[1]: *** [install] Error 1 make[1]: Leaving directory `/home/koan/ptxtest/generic_test/build-host/ipkg-utils-1.7' make: *** [/home/koan/ptxtest/generic_test/state/host-ipkg-utils.install] Error 2 [ ] jbe: timezone files installation doesn't work as expected [ ] jbe: if ipkg building crashes, PTXdist doesn't break. rsc: see pipeline error fixing in scripts/libptxdist.sh [ ] rsc: ChangeLog automatism: http://www.simios.org/node/266?PHPSESSID=a736cf6396ad789e0148d9690761e733 [ ] ero: add -mcpu=... to PTXCONF_TARGET_EXTRA_CPPFLAGS, to let host tools definitely barf if they are accidently being built with the target compiler. [ ] mol: ptxdist commands behave differently for arguments which exceed the "current" command; some continue parsing and some exit. [ ] mol: add possibility to 'ptxdist print' more than one variable in one make call [ ] modify macros to use FOOBAR instead of $(FOOBAR_DIR) etc.; see install macro for example. [ ] check if ${PTXCONF_PREFIX} can be written to and barf if not [ ] add sanity checks for all user configurable variables (especially paths) [ ] audit project files for CROSS_AUTOCONF [ ] Problem: When doing things like "PKG_CONFIG_PATH=bla something", something does not inherit the environment variable PKG_CONFIG_PATH. To achieve this properly, we need to export these variables to the calling shell. The same applies to lots of variables from Rules.make. [ ] Write macros $(call compile) and $(call configure). [ ] libxslt crypto support is broken [ ] add menu entry for user local config files in /etc [ ] image build mechanism tries to access data and infos from already disabled targets! (if they where enabled before). It does so unless a manually delete of the remaining and (now) useless targets in "state/" Interesting packets ------------------- [ ] RSC: http://cryptmount.sourceforge.net/ [ ] RSC: http://www.nongnu.org/failmalloc/ [ ] RSC: http://stapgui.sourceforge.net [ ] RSC: http://home.eol.ca/~parkw/index.html [ ] RSC: http://podgorny.cz/moin/UnionFsFuse [ ] RSC: http://perso.wanadoo.fr/sebastien.godard/ [ ] RSC: http://clpbar.sourceforge.net/ [ ] RSC: http://xmlrpc-c.sourceforge.net/ [ ] RSC: http://www.vanheusden.com/httping/ [ ] RSC: http://urunlevel.sourceforge.net/ [ ] RSC: http://www.freshmeat.net/projects/bootutils [ ] RSC: ethtool: http://sourceforge.net/project/showfiles.php?group_id=3242&package_id=19201 [ ] RSC: ntpclient: http://doolittle.faludi.com/ntpclient/ [ ] RSC: openntpd: http://www.openntpd.org/ [ ] RSC: http://www.reportlab.com/ftp/ [ ] RSC: http://rlib.sicompos.com/ [ ] RSC: MatrixSSL [ ] MKL: lilo, tinylogin targetinstall (RSC: find out what MKL means here) [ ] RSC: finish integration of zebra [ ] RSC: install e2fsck Test suite components to be added ================================= [ ] RSC: http://ltp.sourceforge.net/tooltable.php [ ] RSC: Add more test suite stuff: http://gcc.gnu.org/install/test.html http://www.plumhall.com/stec.html [ ] RSC: lmbench [ ] RSC: add regression tests from crosstool [ ] RSC: look at Herbert Poetzl's cross test stuff: 20040224182505.GA25038@MAIL.13thfloor.at Update: seems to have disappeared. [ ] RSC: look at Linux Kernel Headers project: http://ep09.pld-linux.org/~mmazur/linux-libc-headers/ [ ] RSC: audit for LSB compatiblity; are there any handable tests for checking compliance? [ ] RSC: have a look at http://asic-linux.com.mx/~izto/checkinstall/ Current TODO List ================= [ ] JBE: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27363 [ ] bump bluez-utils/libs to 3.0 (needs dbus) [ ] port scripts/mkprefix to non-perl [ ] ptxdist arch Split build-target into build-${PTXCONF_ARCH} [ ] RSC: port XOrg 7.0 Requirements, according to http://xorg.freedesktop.org/wiki/ModularDevelopersGuide [x] pkg-config > 0.18 [ ] write test in configure to check for >0.18! [x] expat 1.95.8 [x] freetype 1.2.9 [x] fontconfig-2.2.3 recommendet, we have 2.2.99 (latest 2.2) [x] libpng 1.2.8 [x] libdrm 2.0 [x] zlib 1.2.3 [x] mesa 6.4.1 Things noticed during xorg port: [ ] address PTXCONF_XORG_SERVER_QUIRKS by sane upstream patching [ ] check ac_cv_* variables - they are problably not really needed, at least not all of them. [ ] Tree Structure RSC: Find sane place for generic files from projects/generic ERO: Make subdirectories, e.g. for x.org stuff. Might use symlinks to avoid changing the scripts. SHA: push make and in files into subdirs, add patches to that dirs as well. [ ] Menu Structure JBE: Use menuconfig instead of menu + configs whereever possible. It looks nicer in "menuconfig" and its much better supported when using "xconfig" [ ] Program Name Sorting JBE: Sort program entries in "Shell & Console Tools" and other menus by function, not by program name! Especially if there is more than one program that can do the job (see menu entries "Apache 1", "Apache 2" and "thttpd"). To be more concise the whole group should have a checkbox. Not until someone unlocks the "HTTP Server" group he can see the programs in this group. RSC: Please let's stay with alphabetic sorting in the menues. You don't find programs any more otherwhise. If the structure is not clear enough we should clean it up. [ ] Graphical Configurator JBE: For a graphical configurator instead of the ncurses one: Maybe ship a static linked "qconfig" version, otherwise the user also has to install the qt development libraries Same with ncurses (menuconfig), or the user has to be forced to install the development libraries for ncurses RSC: good idea, but only for customer packets. Maybe this will become obsolete when we have a good Eclipse based configurator. [ ] JBE: Make target "qconfig" starts target "oldconfig", even if the configuration was aborted! Target "menuconfig" doesn't [ ] Startup Documentation JBE: add documentation to start from scratch with "make setup" this menu should provide the toolchain, all pathes to everything (also to a prebuilt toochain). All other targets should be project specific. [ ] JBE: more help texts [ ] RSC: make projects doesn't find local_projects/something, if something is a softlink and not a directory. [ ] RSC: replace perl by (modern) sed -i (hosttool) [ ] RSC: Do ipkg stuff during make images [ ] RSC: in NATIVE=1 mode libpthread.so.0 is not copied; find out why [ ] MKL: let get stages depend on the actual makefile [ ] RSC: Finish autotoolisation of chrony. The old features from the handwritten configure script have to be added; readline dependency is now temporarily fixed, it should be made optional again. [ ] RSC:sed: replace all "sed" occurences by $(SED) and maybe switch to a newer GNU sed, which has to be packaged as a hosttool then. [ ] RSC:Invent a project_clean mechanism (workaround done) [ ] RSC:is "select GLIBC_DEBUG" in gdb.in necessary?? [ ] sandeep: add a script to setup a new project interactively [ ] RSC: do module stuff in kernel only when modules are enabled in kernel configuration [ ] RSC: audit bash for configure/menu entry consistency [ ] RSC: bing outputs strange large numbers when being compiled for ARM :-) Add test suite for floating point. [ ] RSC: port LTT-ng [ ] RSC: Mozilla has still problems with cross compilation. See the following Bugzilla entries for possible solutions: http://bugzilla.mozilla.org/show_bug.cgi?id=104541 http://bugzilla.mozilla.org/show_bug.cgi?id=172651 [ ] RSC: add some useful statistics at the end of build (root size, image size etc.). [ ] RSC: fix busybox extract script to support "select CONFIG_foo" [ ] RSC: make MTDutils release and, by the way, fix build process. This "override" mechanism in the Makefile seems to be broken. MKL: mtdutils buildprocess fixed, splitted into 2 seperate file mtd.make and xchain-mtd.make 'override' seems to be working [ ] RSC: audit all configure calls to be relative; configure scripts seem to have major problems when being called with absulute path [ ] RSC: test flash [ ] RSC: finish integration of iwconfig [ ] RSC: add #ifdef __cplusplus ... #else ... #endif to bits/in.h [ ] RSC: add .in file for xvkbd; integrate fixes for Makefile... [ ] MKL: check openssl works with arm big endian (-DL_ENDIAN doesn't look good) [ ] MKL: gmp3 cannot produce shared libc for ppc target (host i686-linux) [ ] MKL: uclinux, patch breaks due to unclean produced patch at uclinux [ ] MKL: test betaftp, old breaks due to a patch from DKE [ ] MKL: test wxwindows [ ] MKL: gawk fix prefix, due to hard coded path [ ] MKL: integrate ldd (./build/glibc-2.2.5/elf/ldd.bash.in) [ ] MKL: tweak wireless to xcompile [ ] RSC: you currently need gdk-pixbuf-csource on the host [ ] RSC: pango has a patch which has to be verified (GLIB_CFLAGS) [ ] RSC: you currently need libXcursor.so.* and xcursorgen on the development host [ ] RSC: replace bootdisk build mechanism by genext2fs; mke2fs is able to reserve N blocks at the beginning of the image! [ ] KUB: busybox/ash job control is broken [ ] RSC: add checksums for download [ ] RSC: restructure config file layout [ ] RSC: add a test: if #!/bin/sh scripts return "/bin/sh: bad interpreter: Permission denied" tell the user to look if his filesystem was monted with the "exec" option [ ] RSC: check for uImage targets: have to depend on vmlinux, not on zImage. [ ] LGR: concept for debug levels: strip, -g, -S [ ] LGR: key infrastructure: integrate signing, activate this only when running the release cycle. [ ] BBU: Implement scheme for alternative download-URLs as fallback (e.g. mirrors) [ ] BBU: rsync URLs [ ] BBU: show required cross-tool, host-gcc and -glibc-versions (compilercheck) [ ] SHA: scripts/make_image_root.sh puts all ipkg packages from imagedir into the resulting images, even those which are lying there from old builds DONE ---- [x] add prerequisite checks to configure script; find out which prerequisites we really need. [x] Toolchain selection JBE: add an identifier to a (central) toolchain (in "make setup"). It should be possible to use more than one toolchain in a local ptxdist folder (for different targets/projects). So the idetifier selects the right toolchain for this project. This identifier simplifies the toolchain selection. There could be a central folder in the system with all informations (and identifiers) about any available toolchain installed on this system. --> done: "ptxdist toolchain path" per project