Message ID | 1407279610-15589-2-git-send-email-paul@crapouillou.net |
---|---|
State | Accepted |
Headers | show |
Hi Paul, On Wed, Aug 06, 2014 at 01:00:10AM +0200, Paul Cercueil wrote: > GNU lightning is a library that generates assembly language code > at run-time. > > https://www.gnu.org/software/lightning/ > > Signed-off-by: Paul Cercueil <paul@crapouillou.net> > --- > package/Config.in | 1 + > package/lightning/Config.in | 8 ++++++++ > package/lightning/lightning.mk | 18 ++++++++++++++++++ > 3 files changed, 27 insertions(+) > create mode 100644 package/lightning/Config.in > create mode 100644 package/lightning/lightning.mk > > diff --git a/package/Config.in b/package/Config.in > index 1e4bc50..6ca10a8 100644 > --- a/package/Config.in > +++ b/package/Config.in > @@ -864,6 +864,7 @@ menu "Other" > source "package/libunwind/Config.in" > source "package/liburcu/Config.in" > source "package/libuv/Config.in" > + source "package/lightning/Config.in" > source "package/linux-pam/Config.in" > source "package/lttng-libust/Config.in" > source "package/mpc/Config.in" > diff --git a/package/lightning/Config.in b/package/lightning/Config.in > new file mode 100644 > index 0000000..5a7152a > --- /dev/null > +++ b/package/lightning/Config.in > @@ -0,0 +1,8 @@ > +config BR2_PACKAGE_LIGHTNING > + bool "lightning" > + depends on BR2_sparc || BR2_i386 || BR2_x86_64 || BR2_mips || BR2_mipsel || BR2_arm || BR2_powerpc > + help > + GNU lightning is a library that generates > + assembly language code at run-time. > + > + https://www.gnu.org/software/lightning/ > diff --git a/package/lightning/lightning.mk b/package/lightning/lightning.mk > new file mode 100644 > index 0000000..ff3ea92 > --- /dev/null > +++ b/package/lightning/lightning.mk > @@ -0,0 +1,18 @@ > +################################################################################ > +# > +# lightning > +# > +################################################################################ > + > +LIGHTNING_VERSION = 2.0.4 > +LIGHTNING_SITE = http://ftp.gnu.org/gnu/lightning/ > +LIGHTNING_LICENSE = GPLv3 > +LIGHTNING_LICENSE_FILES = COPYING > +LIGHTNING_INSTALL_STAGING = YES > + > +ifeq ($(BR2_PACKAGE_BINUTILS),y) > +LIGHTNING_DEPENDENCIES += binutils > +LIGHTNING_CONF_OPT += --enable-disassembler > +endif Have you tested external toolchains? baruch > + > +$(eval $(autotools-package))
Hi Baruch, Le 06/08/2014 05:12, Baruch Siach a écrit : > Hi Paul, > > On Wed, Aug 06, 2014 at 01:00:10AM +0200, Paul Cercueil wrote: >> GNU lightning is a library that generates assembly language code >> at run-time. >> >> https://www.gnu.org/software/lightning/ >> >> Signed-off-by: Paul Cercueil <paul@crapouillou.net> >> --- >> package/Config.in | 1 + >> package/lightning/Config.in | 8 ++++++++ >> package/lightning/lightning.mk | 18 ++++++++++++++++++ >> 3 files changed, 27 insertions(+) >> create mode 100644 package/lightning/Config.in >> create mode 100644 package/lightning/lightning.mk >> >> diff --git a/package/Config.in b/package/Config.in >> index 1e4bc50..6ca10a8 100644 >> --- a/package/Config.in >> +++ b/package/Config.in >> @@ -864,6 +864,7 @@ menu "Other" >> source "package/libunwind/Config.in" >> source "package/liburcu/Config.in" >> source "package/libuv/Config.in" >> + source "package/lightning/Config.in" >> source "package/linux-pam/Config.in" >> source "package/lttng-libust/Config.in" >> source "package/mpc/Config.in" >> diff --git a/package/lightning/Config.in b/package/lightning/Config.in >> new file mode 100644 >> index 0000000..5a7152a >> --- /dev/null >> +++ b/package/lightning/Config.in >> @@ -0,0 +1,8 @@ >> +config BR2_PACKAGE_LIGHTNING >> + bool "lightning" >> + depends on BR2_sparc || BR2_i386 || BR2_x86_64 || BR2_mips || BR2_mipsel || BR2_arm || BR2_powerpc >> + help >> + GNU lightning is a library that generates >> + assembly language code at run-time. >> + >> + https://www.gnu.org/software/lightning/ >> diff --git a/package/lightning/lightning.mk b/package/lightning/lightning.mk >> new file mode 100644 >> index 0000000..ff3ea92 >> --- /dev/null >> +++ b/package/lightning/lightning.mk >> @@ -0,0 +1,18 @@ >> +################################################################################ >> +# >> +# lightning >> +# >> +################################################################################ >> + >> +LIGHTNING_VERSION = 2.0.4 >> +LIGHTNING_SITE = http://ftp.gnu.org/gnu/lightning/ >> +LIGHTNING_LICENSE = GPLv3 >> +LIGHTNING_LICENSE_FILES = COPYING >> +LIGHTNING_INSTALL_STAGING = YES >> + >> +ifeq ($(BR2_PACKAGE_BINUTILS),y) >> +LIGHTNING_DEPENDENCIES += binutils >> +LIGHTNING_CONF_OPT += --enable-disassembler >> +endif > > Have you tested external toolchains? > > baruch No I did not, as I don't use one. Furthermore, I only tested the package on mipsel, the list of archs specified in this package is taken from lightning's web page and may be incorrect (hopefully not). Regards, Paul > >> + >> +$(eval $(autotools-package)) >
Hi Paul, On Sat, Aug 09, 2014 at 03:45:07PM +0200, Paul Cercueil wrote: > Le 06/08/2014 05:12, Baruch Siach a écrit : > >On Wed, Aug 06, 2014 at 01:00:10AM +0200, Paul Cercueil wrote: > >>+ifeq ($(BR2_PACKAGE_BINUTILS),y) > >>+LIGHTNING_DEPENDENCIES += binutils > >>+LIGHTNING_CONF_OPT += --enable-disassembler > >>+endif > > > >Have you tested external toolchains? > > No I did not, as I don't use one. Furthermore, I only tested the package on > mipsel, the list of archs specified in this package is taken from > lightning's web page and may be incorrect (hopefully not). You can easily test external toolchains using the minimal configs at http://autobuild.buildroot.net/toolchains/configs/. You'll also find a few mipsel variants there. If this package is not compatible with external toolchain (and so I suspect) then it should depend on BR2_TOOLCHAIN_BUILDROOT. baruch
Dear Baruch Siach, On Tue, 12 Aug 2014 12:10:15 +0300, Baruch Siach wrote: > If this package is not compatible with external toolchain (and so I suspect) > then it should depend on BR2_TOOLCHAIN_BUILDROOT. Why do you think this package is not compatible with external toolchain? Because of: +ifeq ($(BR2_PACKAGE_BINUTILS),y) +LIGHTNING_DEPENDENCIES += binutils +LIGHTNING_CONF_OPT += --enable-disassembler +endif There's absolutely no problem in having the _target_ binutils package enabled with external toolchains. So I don't see why this package would be particularly problematic for external toolchains. Best regards, Thomas
Dear Paul Cercueil, On Wed, 6 Aug 2014 01:00:10 +0200, Paul Cercueil wrote: > GNU lightning is a library that generates assembly language code > at run-time. > > https://www.gnu.org/software/lightning/ > > Signed-off-by: Paul Cercueil <paul@crapouillou.net> > --- > package/Config.in | 1 + > package/lightning/Config.in | 8 ++++++++ > package/lightning/lightning.mk | 18 ++++++++++++++++++ > 3 files changed, 27 insertions(+) > create mode 100644 package/lightning/Config.in > create mode 100644 package/lightning/lightning.mk Applied, after doing a number of changes. Note that this package was not compiling properly with a uClibc toolchain with the disassembler enabled. The changes I made: [Thomas: - Wrap list of architectures in Config.in - Introduce an explicit Config.in option for the disassembler support, since it needs both binutils and zlib, which may not be easy to guess. - Add hash file. - Bump to version 2.0.5. - Add patch to fix cross-compilation issues on ARM and x86 due to AC_RUN_IFELSE() tests. - Adjust license information: the library is actually under LGPLv3+, not GPLv3. There is a COPYING file with the text of the GPLv3 in the code base, but this license doesn't seem to be used in anything that is actually installed. - Add AUTORECONF = YES since we're now patching configure.ac. - Add missing dependency on zlib for the disassembler support. - Add a special LIBS=-lintl when enabling the disassembler support because binutils libraries use gettext functions, but they are not linked against libintl.] See http://git.buildroot.net/buildroot/commit/?id=952391db0477d1baa9c451fe0b3dabbfaef5a9b7 for the final commit. Thanks, Thomas
diff --git a/package/Config.in b/package/Config.in index 1e4bc50..6ca10a8 100644 --- a/package/Config.in +++ b/package/Config.in @@ -864,6 +864,7 @@ menu "Other" source "package/libunwind/Config.in" source "package/liburcu/Config.in" source "package/libuv/Config.in" + source "package/lightning/Config.in" source "package/linux-pam/Config.in" source "package/lttng-libust/Config.in" source "package/mpc/Config.in" diff --git a/package/lightning/Config.in b/package/lightning/Config.in new file mode 100644 index 0000000..5a7152a --- /dev/null +++ b/package/lightning/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_LIGHTNING + bool "lightning" + depends on BR2_sparc || BR2_i386 || BR2_x86_64 || BR2_mips || BR2_mipsel || BR2_arm || BR2_powerpc + help + GNU lightning is a library that generates + assembly language code at run-time. + + https://www.gnu.org/software/lightning/ diff --git a/package/lightning/lightning.mk b/package/lightning/lightning.mk new file mode 100644 index 0000000..ff3ea92 --- /dev/null +++ b/package/lightning/lightning.mk @@ -0,0 +1,18 @@ +################################################################################ +# +# lightning +# +################################################################################ + +LIGHTNING_VERSION = 2.0.4 +LIGHTNING_SITE = http://ftp.gnu.org/gnu/lightning/ +LIGHTNING_LICENSE = GPLv3 +LIGHTNING_LICENSE_FILES = COPYING +LIGHTNING_INSTALL_STAGING = YES + +ifeq ($(BR2_PACKAGE_BINUTILS),y) +LIGHTNING_DEPENDENCIES += binutils +LIGHTNING_CONF_OPT += --enable-disassembler +endif + +$(eval $(autotools-package))
GNU lightning is a library that generates assembly language code at run-time. https://www.gnu.org/software/lightning/ Signed-off-by: Paul Cercueil <paul@crapouillou.net> --- package/Config.in | 1 + package/lightning/Config.in | 8 ++++++++ package/lightning/lightning.mk | 18 ++++++++++++++++++ 3 files changed, 27 insertions(+) create mode 100644 package/lightning/Config.in create mode 100644 package/lightning/lightning.mk