diff mbox

[1/2] libdebian-installer: new package

Message ID 1458298843-21326-1-git-send-email-benoit.allard@greenbone.net
State Changes Requested
Headers show

Commit Message

Benoît Allard March 18, 2016, 11 a.m. UTC
This package is a mandatory dependency of cdebootstrap.

Signed-off-by: Benoît Allard <benoit.allard@greenbone.net>
---
Changes v1 -> v2
  - Use snapshot.debian.org
  - Remove INSTALL_TARGET (is default value)
---
 package/Config.in                                    |  1 +
 package/libdebian-installer/Config.in                | 11 +++++++++++
 package/libdebian-installer/libdebian-installer.hash |  2 ++
 package/libdebian-installer/libdebian-installer.mk   | 18 ++++++++++++++++++
 4 files changed, 32 insertions(+)
 create mode 100644 package/libdebian-installer/Config.in
 create mode 100644 package/libdebian-installer/libdebian-installer.hash
 create mode 100644 package/libdebian-installer/libdebian-installer.mk

Comments

Thomas Petazzoni March 30, 2016, 6:47 p.m. UTC | #1
Hello,

On Fri, 18 Mar 2016 12:00:42 +0100, Benoît Allard wrote:

> diff --git a/package/libdebian-installer/libdebian-installer.mk b/package/libdebian-installer/libdebian-installer.mk
> new file mode 100644
> index 0000000..b542659
> --- /dev/null
> +++ b/package/libdebian-installer/libdebian-installer.mk
> @@ -0,0 +1,18 @@
> +################################################################################
> +#
> +# libdebian-installer
> +#
> +################################################################################
> +
> +
> +LIBDEBIAN_INSTALLER_VERSION = 0.104
> +LIBDEBIAN_INSTALLER_SOURCE = libdebian-installer_$(LIBDEBIAN_INSTALLER_VERSION).tar.xz
> +LIBDEBIAN_INSTALLER_SITE = http://snapshot.debian.org/archive/debian-debug/20160218T034808Z/pool/main/libd/libdebian-installer/

Another possibility could be to fetch from the Git repository at
https://anonscm.debian.org/cgit/d-i/libdebian-installer.git/, but I'm
fine with snapshot.debian.org.

> +LIBDEBIAN_INSTALLER_LICENSE = GPLv2

License is GPLv2+.

> +LIBDEBIAN_INSTALLER_LICENSE_FILES = debian/copyright
> +LIBDEBIAN_INSTALLER_INSTALL_STAGING = YES
> +# Provided files are too old (missing reference to newly added source files)
> +LIBDEBIAN_INSTALLER_AUTORECONF = YES
> +LIBDEBIAN_INSTALLER_DEPENDENCIES = check host-pkgconf

Unfortunately, the following configuration doesn't build here:

BR2_arm=y
BR2_TOOLCHAIN_EXTERNAL=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=y
BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD=y
BR2_TOOLCHAIN_EXTERNAL_URL="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-basic-2016.02-3-g762b7c9.tar.bz2"
BR2_TOOLCHAIN_EXTERNAL_GCC_4_9=y
BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_4=y
# BR2_TOOLCHAIN_EXTERNAL_HAS_THREADS_DEBUG is not set
BR2_INIT_NONE=y
BR2_SYSTEM_BIN_SH_NONE=y
# BR2_PACKAGE_BUSYBOX is not set
BR2_PACKAGE_LIBDEBIAN_INSTALLER=y
# BR2_TARGET_ROOTFS_TAR is not set

I get the following failure:

libtool: link: /home/thomas/projets/buildroot/output/host/usr/bin/arm-linux-gcc -shared  -fPIC -DPIC  .libs/exec.o .libs/hash.o .libs/log.o .libs/mem.o .libs/mem_chunk.o .libs/package.o .libs/package_parser.o .libs/packages.o .libs/packages_parser.o .libs/parser.o .libs/parser_rfc822.o .libs/slist.o .libs/string.o .libs/tree.o .libs/utils.o  -Wl,--whole-archive system/.libs/libsystem.a -Wl,--no-whole-archive   -Os -Wl,--version-script=./libdebian-installer.ver -Wl,--no-undefined-version   -Wl,-soname -Wl,libdebian-installer.so.4 -o .libs/libdebian-installer.so.4.0.7
/home/thomas/projets/buildroot/output/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/4.9.3/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: di_system_subarch_analyze_guess: undefined version: LIBDI_4.7
/home/thomas/projets/buildroot/output/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/4.9.3/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: failed to set dynamic section sizes: Bad value

Also, I'm concerned by a few other things:

 * The configure.ac script calls dpkg-architecture. Not only this means
   that the configure script assumes it will be run on Debian (which is
   not guaranteed in Buildroot), but it breaks when cross-compiling:
   the target architecture is not the one of the build machine.

 * In src/system/, you will see that there are a number of architecture
   specific files, which probably means that libdebian-installer is not
   going to build properly for all target architectures.

Could you investigate those issues/concerns, and send an updated version?

Thanks!

Thomas
diff mbox

Patch

diff --git a/package/Config.in b/package/Config.in
index 2401867..db4ceab 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1208,6 +1208,7 @@  menu "Other"
 	source "package/libcroco/Config.in"
 	source "package/libcrossguid/Config.in"
 	source "package/libdaemon/Config.in"
+	source "package/libdebian-installer/Config.in"
 	source "package/libee/Config.in"
 	source "package/libev/Config.in"
 	source "package/libevdev/Config.in"
diff --git a/package/libdebian-installer/Config.in b/package/libdebian-installer/Config.in
new file mode 100644
index 0000000..f3b0ed3
--- /dev/null
+++ b/package/libdebian-installer/Config.in
@@ -0,0 +1,11 @@ 
+config BR2_PACKAGE_LIBDEBIAN_INSTALLER
+	bool "libdebian-installer"
+	select BR2_PACKAGE_CHECK
+	help
+	  This library is used by debian-installer to perform common
+	  functions such as logging messages and executing commands.
+	  If you aren't working on debian-installer or building your
+	  own install system based on debian-installer, then you
+	  probably don't need this library.
+
+	  http://debian.org
diff --git a/package/libdebian-installer/libdebian-installer.hash b/package/libdebian-installer/libdebian-installer.hash
new file mode 100644
index 0000000..24c3aee
--- /dev/null
+++ b/package/libdebian-installer/libdebian-installer.hash
@@ -0,0 +1,2 @@ 
+# From http://snapshot.debian.org/archive/debian/20160218T041621Z/pool/main/libd/libdebian-installer/libdebian-installer_0.104.dsc
+sha256 5bf6c1b88e99164d0411f8434523f0f3b8e7e3902da17c55fee740ab34746ebf libdebian-installer_0.104.tar.xz
diff --git a/package/libdebian-installer/libdebian-installer.mk b/package/libdebian-installer/libdebian-installer.mk
new file mode 100644
index 0000000..b542659
--- /dev/null
+++ b/package/libdebian-installer/libdebian-installer.mk
@@ -0,0 +1,18 @@ 
+################################################################################
+#
+# libdebian-installer
+#
+################################################################################
+
+
+LIBDEBIAN_INSTALLER_VERSION = 0.104
+LIBDEBIAN_INSTALLER_SOURCE = libdebian-installer_$(LIBDEBIAN_INSTALLER_VERSION).tar.xz
+LIBDEBIAN_INSTALLER_SITE = http://snapshot.debian.org/archive/debian-debug/20160218T034808Z/pool/main/libd/libdebian-installer/
+LIBDEBIAN_INSTALLER_LICENSE = GPLv2
+LIBDEBIAN_INSTALLER_LICENSE_FILES = debian/copyright
+LIBDEBIAN_INSTALLER_INSTALL_STAGING = YES
+# Provided files are too old (missing reference to newly added source files)
+LIBDEBIAN_INSTALLER_AUTORECONF = YES
+LIBDEBIAN_INSTALLER_DEPENDENCIES = check host-pkgconf
+
+$(eval $(autotools-package))