lwip-devel
[Top][All Lists]
Advanced

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

Re: [lwip-devel] Desiderata for 2.2.0: better support for Debian packagi


From: address@hidden
Subject: Re: [lwip-devel] Desiderata for 2.2.0: better support for Debian packaging and VirtualSquare
Date: Wed, 4 Jan 2023 21:36:50 +0100
User-agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.6.1

Hi Renzo, Joan,

(Joan, please see last part)

Am 27.12.2022 um 11:19 schrieb Renzo Davoli:
Dear Simon and dear lwip developers,
Dear Joan (maintainer of lwip Debian package).

I have some desiderata for the upcoming 2.2.0 release: fixes and
new features to simplify the packaging process (for Debian and
other distros) and the integration with VirtualSquare projects like
Virtual Distributed Ethernet (VDE) and Internet of Threads (IoTh).
(see www.virtualsquare.org)

More precisely my desiderata are:

0 - unify the contrib code into the main lwip source tree.
This upgrade has been already planned.

This change should permit a more strightforward building of the
new Debian package (currently the implementation is quite tricky:
a large packaging patch named "port" adds the required code from
contrib and rewrites the main CMakeLists.txt).

This will of course be included in 2.2.0, since it is the main
difference to 2.1.x


1- The code generated by contrib/ports/unix/lib has unresolved symbols:
$ nm liblwip.so | grep ' U ' | grep -v @
                  U sio_read
                  U sio_tryread
slirpif requires sio_read and sio_tryread.
The patch named 1-libnoslip.patch excludes slip.c from the library

That's probably ok since I'm not sure who would use slipif on unix.
I see that liplwip.so is shipped with the debian package. Does that mean
everyone linking to that library has to provide sio_read/sio_tryread
even if not using slipif right now? Or do we have lazy binding and this
is only a "cleanup" thing?


2- CMakeLists.txt in contrib/ports/unix/lib lacks support for install and
uninstall and the compatibility with linux sockaddr.
The patch named 2-linuxlib.patch adds a new dir contrib/ports/unix/linuxlib
to generate a more linux-consistent library.

I'm not sure what's the use here: we have liblwip.so. Where is linuxlib
used?

Also, lwIP is BSP*ish, unless there are strong external requirements, we
cannot just accept GPL code.


3- Add VDE support (see https://wiki.virtualsquare.org/#!tutorials/vdebasics.md)
The patch named 3-vdeif.patch adds an interface driver for vde.
(It requires libvdeplug).

I'm not opposed to adding such a netif, but the formatting of this file
is *very* awkward (spaces/tabs mixed, "-------" lines, etc).


Applying all these patches to lwip 2.2.0 should make the Debian packaging
project almost as simple as adding:
%:
   dh $@ --sourcedirectory=contrib/ports/unix/linuxlib
to the 'debian/rules' file.

Joan, can I take you in here? What do you think would be required to
make packaging lwIP into debian easier? This is kind of the last thing
before releasing 2.2.0 I'm waiting for...


Regards,
Simon



reply via email to

[Prev in Thread] Current Thread [Next in Thread]