[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

new very alpha release of future Emdebian tools...



Hello people,

Some of you have been waiting for this for a long time, and anyway it is
time to get this project moving again. With the recent apt extensions of
Raphael we also got a bit closer again. But here are then the adapted
package building tools so docs get thrown out, and you get the
possibility to use emdebian meta-data instead of debian one.

First install dpkg-cross on your machine, than install the dpkg-dev,
dpkg and debhelper packages that are on stag.mind.be

I made a demo busybox package (with the latest busybox) that should
compile ok in a normal debian environment. Compiles ok with the
environment variable "emdebian=true"set. This will throw out docs and
manpages with a normal build. This should work on all existing Debian
packages. (This is however not following the debian guidelines that say
a package should have docs, but this is EmDebian no??)

Further if you cross-compile with dpkg-cross... this means you have set
up /etc/dpkg/cross-compile to something like this.... (example for ARM)

#
crossbase = /usr
crossbin = /usr/arm-linux-uclibc/bin/
crossprefix = /usr/arm-linux-uclibc/bin/arm-linux-uclibc-

# -------------------------------
# This should fit EmDebian needs:
#
 mode emdebian:
 package all:
        scope environment:
                emdebian = true
        scope makeflags:
#               CROSSPREFIX = $(crossprefix)
#               EXTRA_CFLAGS = ...
#               LIBC = ...
                CONFIG = yes

And then compile the package with dpkg-buildpackage -b -aarm -rfakeroot,
you should get a small debian package (and a configuration menu for
busybox). Set config=no if you don't want it. (please remove
debian/changelog for this package before you build it like this,
otherwise you will get an error after the compilation. This will be
fixed in the tools, or by a requirement that it should have the same
package name in emdebian/changelog and debian/changelog. The latter
being the best solution for dependencies) 

Other known bug is in dh_shlibdeps if you compile with an non glibc
toolchain. It will nicely find the used libs, but no package that
contains it, throwing an error. Hopefully part of this can be catched by
dpkg-cross, another by making packages for uclibc that can be checked in
a chroot environment/ different installation env.

If you feel like it test it and report problems. I will fix them as soon
as I have time. Now I am trying to set up a uclibc based build
environment, that will contain all the necessary tools to start a
buildd. So i386 Emdebian is my first target (because this works best,
and should be do-able. cfr uwoody)

regards,

Philippe

PS: To build a minimal bootable system, get the stag-addons TARBALL and
get the dpkg-stag script out of it. You need to re-create an empty copy
of your dpkg database (see in the file for the correct location). Use
the script to install dev-init-tools and busybox-static and you will
have a basic rootfs.... (I know this is a very rudimentary description,
I will make a better one later on, and please point out sections which
caused you trouble... I might skip them because of being familiar with
them)

-- 
| Philippe De Swert 
|      
| Stag developer http://stag.mind.be/  
| Emdebian developer: http://www.emdebian.org  
|   
| Please do not send me documents in a closed format.
(*.doc,*.xls,*.ppt)    
| Use the open alternatives. (*.pdf,*.ps,*.html,*.txt)    
| Why? http://pallieter.is-a-geek.org:7832/~johan/word/english/    

Attachment: signature.asc
Description: This is a digitally signed message part


Reply to: