Buildroot Printing with Cups
v4 cover Buildroot Printing with Cups
I'm resubbmitting this patch series. It seems that the previous sub- mission got lost due to a mail server or other issue. The versions has been updated to the latest available.
CUPS 2.1.0 adds support for 3D printing. Lots of possibilities...
CUPS-filters provides backends, filters, and other software that was once part of the core CUPS distribution but is no longer maintained by Apple Inc. From CUPS 1.6.0 forward, cups-filters is required for using printer drivers with CUPS under linux. It is maintained by the openprinting group of the linux foundation.
Changes V1 -> V2
Modify Cups makefile to not use -fPIE and -pie when doing static builds. (Vicente Olivert Riera)
Changes V2 -> V3 (Suggestions by Thomas Pettazoni)
Cups:
Modify Cups patches to show [PATCH] instead of [PATCH 1/2]. Add comment to cups genstrings patch to explain why it is being built. Remove AVAHI configuration selection, enable/disable according to BR_PACKAGE_AVAHI
Add BR2_PACKAGE_CUPS_PDFTOPS to Config.in.legacy
Add locally calculated sh256 hash to cups.hash
Add zlib as cups dependency
HPLIP:
Remove +HPLIP_MAKE_OPTS += LDFLAGS+=-lpthread - Not necessary for succesful compilation
Cups-filters
Add dependencies depends on lines and comments for when the dependencies are not available.
Remove AVAHI configuration selection, enable/disable according to BR_PACKAGE_AVAHI
Fix indentation in cups-filters.mk
Remove --disable-avahi and --without-png from default configuration. Create a separate commit to enable xpdf-headers for poppler
Add selection of BR2_PACKAGE_CUPS_FILTERS_PDFTOPS to Config.in.legacy
Changes V3 -> V4 (Suggestions by Samuel Martin, and updates) Cups:
Update to version 2.1.2
Update Config.in.legacy
Remove building of manpages from configure script (DIRS uses $(BUILDDIRS) which is passed by configure. Autoreconf not working due to missing defines) Add comment for case when toolchain dependency is not met
Remove PIE-removal section for static builds
Add --enable-systemd and else case for --disable-systemd
HPLIP:
Update to version 3.15.11
Remove inapropriate comment.
Gutenprint:
Remove inapropriate comment.
Cups-filters
Update to 1.7.0
Change dependencies in Config.in to select statements
Remove comments for dependencies
Remove trailing slash in download link
Add dependency on dynamic libraries.(With static libs it failed to find -lcups)
Olivier Schonken (5):
package/cups: Un-deprecate, and update CUPS to 2.1.2 package/hplip: Un-deprecate and bump version to 3.15.11 package/gutenprint: Un-deprecate and bump version to 5.2.10 Enable xpdf-headers in poppler to enable building of cups-filters package/cups-filters: Add new package cups-filters 1.7.0
Config.in.legacy | 8 +++ package/Config.in | 1 + package/cups-filters/Config.in | 41 ++++++++++++++++ package/cups-filters/cups-filters.hash | 2 + package/cups-filters/cups-filters.mk | 57 ++++++++++++++++++++++ ...01-Remove-man-from-BUILDDIRS-in-configure.patch | 28 +++++++++++ package/cups/0001-fix-static.patch | 28 ----------- package/cups/0002-Do-not-use-genstrings.patch | 30 ++++++++++++ package/cups/0002-fix-stack-protector-check.patch | 25 ---------- package/cups/0003-mantohtml.patch | 11 ----- package/cups/Config.in | 16 ++---- package/cups/cups.hash | 2 + package/cups/cups.mk | 50 ++++++++++++------- package/gutenprint/Config.in | 2 - package/gutenprint/gutenprint.hash | 2 +- package/gutenprint/gutenprint.mk | 2 +- package/hplip/0001-fix-make.patch | 40 +++++++-------- package/hplip/Config.in | 2 - package/hplip/hplip.hash | 2 +- package/hplip/hplip.mk | 2 +- package/poppler/poppler.mk | 3 +- 21 files changed, 230 insertions(+), 124 deletions(-) create mode 100644 package/cups-filters/Config.in create mode 100644 package/cups-filters/cups-filters.hash create mode 100644 package/cups-filters/cups-filters.mk create mode 100644 package/cups/0001-Remove-man-from-BUILDDIRS-in-configure.patch delete mode 100644 package/cups/0001-fix-static.patch create mode 100644 package/cups/0002-Do-not-use-genstrings.patch delete mode 100644 package/cups/0002-fix-stack-protector-check.patch delete mode 100644 package/cups/0003-mantohtml.patch create mode 100644 package/cups/cups.hash
Signature · 1 line
2.5.0
PATCH v4 1/5 package/cups: Un-deprecate, and update CUPS to 2.1.2
Remove 0001-fix-static.patch - Fixed upstream
Remove 0002-fix-stack-protector-check.patch - Fixed upstream Remove 0003-mantohtml.patch - Replaced by 0001-Remove-man-from-BUILDDIRS-in- configure.patch
Add 0002-Do-not-use-genstrings.patch
Add CUPS_PDFTOPS option to Config.in.legacy - This support was moved to the cups-filters package.
--- Config.in.legacy | 7 +++ ...01-Remove-man-from-BUILDDIRS-in-configure.patch | 28 ++++++++++++ package/cups/0001-fix-static.patch | 28 ------------ package/cups/0002-Do-not-use-genstrings.patch | 30 +++++++++++++ package/cups/0002-fix-stack-protector-check.patch | 25 ----------- package/cups/0003-mantohtml.patch | 11 ----- package/cups/Config.in | 16 ++----- package/cups/cups.hash | 2 + package/cups/cups.mk | 50 ++++++++++++++-------- 9 files changed, 102 insertions(+), 95 deletions(-) create mode 100644 package/cups/0001-Remove-man-from-BUILDDIRS-in-configure.patch delete mode 100644 package/cups/0001-fix-static.patch create mode 100644 package/cups/0002-Do-not-use-genstrings.patch delete mode 100644 package/cups/0002-fix-stack-protector-check.patch delete mode 100644 package/cups/0003-mantohtml.patch create mode 100644 package/cups/cups.hash
Config.in.legacy +7 -0
@@ -145,6 +145,13 @@ endif ############################################################################### comment "Legacy options removed in 2016.02" +config BR2_PACKAGE_CUPS_PDFTOPS + bool "Pdftops support has been removed from Cups" + select BR2_LEGACY + help + Pdftops support has been removed from the cups package + It is now part of the cups-filters package. + config BR2_KERNEL_HEADERS_3_16 bool "kernel headers version 3.16.x are no longer supported" select BR2_KERNEL_HEADERS_3_18
package/cups/0001-Remove-man-from-BUILDDIRS-in-configure.patch new file +28 -0
@@ -0,0 +1,28 @@ +From a77bb18a5584bb23687ed3c522dbd91a9987d5a7 Mon Sep 17 00:00:00 2001 +From: Olivier Schonken <[email protected]> +Date: Wed, 20 Jan 2016 22:13:11 +0200 +Subject: [PATCH] Remove man from BUILDDIRS in configure + +Removing it by using AUTORECONF and makedefs.in causes a lot of missing template errors + +Signed-off-by: Olivier Schonken <[email protected]> +--- + configure | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure b/configure +index 4170ff3..3879a75 100755 +--- a/configure ++++ b/configure +@@ -5921,7 +5921,7 @@ fi + + case "$COMPONENTS" in + all) +- BUILDDIRS="filter backend berkeley cgi-bin monitor notifier ppdc scheduler systemv conf data desktop locale man doc examples templates" ++ BUILDDIRS="filter backend berkeley cgi-bin monitor notifier ppdc scheduler systemv conf data desktop locale doc examples templates" + ;; + + core) +-- +2.5.0 +
package/cups/0001-fix-static.patch deleted +0 -28
@@ -1,28 +0,0 @@ -cups: fix static linking - -Append -lz to the cups linking libs to fix a problem like this one: - -../cups/libcups.a(file.o): In function `cupsFileSeek': -/home/test/test/1/output/build/cups-1.3.11/cups/file.c:1444: undefined -reference to `inflateEnd' -collect2: error: ld returned 1 exit status -make[2]: *** [ipp] Error 1 -make[2]: *** Waiting for unfinished jobs.... - -This solution is the same used upstream in newer versions. - -Fixes: - http://autobuild.buildroot.net/results/f3d/f3d4f67ce7ee1d54f5bd4c87dfddb7417db614e5/ - -Signed-off-by: Vicente Olivert Riera <[email protected]> ---- cups-1.3.11/Makedefs.in.orig 2014-03-05 13:28:10.175437880 +0000 -+++ cups-1.3.11/Makedefs.in 2014-03-05 13:28:35.398845162 +0000 -@@ -132,7 +132,7 @@ LDFLAGS = -L../cups -L../filter @LDARCH - LEGACY_BACKENDS = @LEGACY_BACKENDS@ - LIBCUPSORDER = @LIBCUPSORDER@ - LIBCUPSIMAGEORDER = @LIBCUPSIMAGEORDER@ --LINKCUPS = @LINKCUPS@ $(SSLLIBS) -+LINKCUPS = @LINKCUPS@ $(SSLLIBS) $(LIBZ) - LINKCUPSIMAGE = @LINKCUPSIMAGE@ - LIBS = $(LINKCUPS) $(COMMONLIBS) - OPTIM = @OPTIM@
package/cups/0002-Do-not-use-genstrings.patch new file +30 -0
@@ -0,0 +1,30 @@ +From a863814f6dadda054c964897210789eafff6f605 Mon Sep 17 00:00:00 2001 +From: Olivier Schonken <[email protected]> +Date: Wed, 18 Mar 2015 20:33:41 +0200 +Subject: [PATCH] Do not use genstrings + +Using cross compiled genstrings while cross-compiling will break compilation. +Genstrings is still compiled because some power users might want to do ppd +compilation on their target machine, and for that they would need to use the +native compiled genstrings binary, to generate a sample.c file for their target + +Signed-off-by: Olivier Schonken <[email protected]> +--- + ppdc/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/ppdc/Makefile b/ppdc/Makefile +index bc8bb64..f6bae25 100644 +--- a/ppdc/Makefile ++++ b/ppdc/Makefile +@@ -243,7 +243,7 @@ genstrings: genstrings.o libcupsppdc.a ../cups/$(LIBCUPSSTATIC) \ + libcupsppdc.a ../cups/$(LIBCUPSSTATIC) $(LIBGSSAPI) $(SSLLIBS) \ + $(DNSSDLIBS) $(COMMONLIBS) $(LIBZ) + echo Generating localization strings... +- ./genstrings >sample.c ++ #./genstrings >sample.c + + + # +-- +1.9.1
package/cups/0002-fix-stack-protector-check.patch deleted +0 -25
@@ -1,25 +0,0 @@ -[PATCH]: use AC_TRY_LINK for stack protector check - -Actually try to link an executable to test for stack protector support, -as gcc seems to accept the -fstack-protector argument even when it's -compiled with --disable-libssp (but linking fails with a error -finding -lssp_nonshared). - -Signed-off-by: Peter Korsgaard <[email protected]> ---- - config-scripts/cups-compiler.m4 | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: cups-1.3.9/config-scripts/cups-compiler.m4 -=================================================================== ---- cups-1.3.9.orig/config-scripts/cups-compiler.m4 -+++ cups-1.3.9/config-scripts/cups-compiler.m4 -@@ -109,7 +109,7 @@ if test -n "$GCC"; then - AC_MSG_CHECKING(if GCC supports -fstack-protector) - OLDCFLAGS="$CFLAGS" - CFLAGS="$CFLAGS -fstack-protector" -- AC_TRY_COMPILE(,, -+ AC_TRY_LINK(,, - OPTIM="$OPTIM -fstack-protector" - AC_MSG_RESULT(yes), - AC_MSG_RESULT(no))
package/cups/0003-mantohtml.patch deleted +0 -11
@@ -1,11 +0,0 @@ ---- cups-1.3.5/man/Makefile 2007-07-12 21:01:14.000000000 -0400 -+++ cups-1.3.5/man/Makefile 2008-02-11 08:55:24.000000000 -0500 -@@ -173,7 +173,7 @@ html: $(MAN1) $(MAN5) $(MAN7) $(MAN8) ma - done - - mantohtml: mantohtml.o -- $(CC) $(LDFLAGS) -o $@ mantohtml.o -+ gcc -I/usr/include -I../ -L/usr/lib mantohtml.c -o mantohtml - - - #
package/cups/Config.in +3 -13
@@ -1,7 +1,7 @@ config BR2_PACKAGE_CUPS bool "cups" - # serious security issues, needs upgrading - depends on BR2_DEPRECATED_SINCE_2015_05 + # needs libstdcpp for ppdc + depends on BR2_INSTALL_LIBSTDCPP # needs fork() depends on BR2_USE_MMU help
@@ -9,15 +9,5 @@ config BR2_PACKAGE_CUPS http://www.cups.org -if BR2_PACKAGE_CUPS - -config BR2_PACKAGE_CUPS_PDFTOPS - bool "pdftops support" - depends on BR2_INSTALL_LIBSTDCPP - help - Enable pdftops support - -comment "pdftops support needs a toolchain w/ C++" +comment "cups needs a toolchain w/ C++" depends on !BR2_INSTALL_LIBSTDCPP - -endif
package/cups/cups.hash new file +2 -0
@@ -0,0 +1,2 @@ +# Locally calculated: +sha256 bab0ca3ba80eae48319b3a6b19a5b14fad5ce230f30151a0cfa4c0271df281ad cups-2.1.2-source.tar.bz2
package/cups/cups.mk +32 -18
85 lines not on this page · raw message
Signature · 1 line
2.5.0
PATCH v4 1/5 package/cups: Un-deprecate, and update CUPS to 2.1.2
Olivier,
Quoted 18 lines · Olivier Schonken
Remove 0001-fix-static.patch - Fixed upstream
Remove 0002-fix-stack-protector-check.patch - Fixed upstream Remove 0003-mantohtml.patch - Replaced by 0001-Remove-man-from-BUILDDIRS-in- configure.patch
Add 0002-Do-not-use-genstrings.patch
AddCUPS_PDFTOPSoption to Config.in.legacy - This support was moved to the cups-filters package.Signed-off-by Olivier Schonken <[email protected]>--- Config.in.legacy | 7 +++ ...01-Remove-man-from-BUILDDIRS-in-configure.patch | 28 ++++++++++++ package/cups/0001-fix-static.patch | 28 ------------ package/cups/0002-Do-not-use-genstrings.patch | 30 +++++++++++++ package/cups/0002-fix-stack-protector-check.patch | 25 ----------- package/cups/0003-mantohtml.patch | 11 ----- package/cups/Config.in | 16 ++----- package/cups/cups.hash | 2 +
Quoted 8 lines
package/cups/cups.mk | 50 ++++++++++++++-------- 9 files changed, 102 insertions(+), 95 deletions(-) create mode 100644 package/cups/0001-Remove-man-from-BUILDDIRS-in-configure.patch delete mode 100644 package/cups/0001-fix-static.patch create mode 100644 package/cups/0002-Do-not-use-genstrings.patch delete mode 100644 package/cups/0002-fix-stack-protector-check.patch delete mode 100644 package/cups/0003-mantohtml.patch create mode 100644 package/cups/cups.hash
Applied after doing a few changes:
[Thomas:
- rewrap patch description in patch 0001
- adjust patch 0002 to completely remove the call to genstrings instead of commenting it, and remove the potentially confusing 'echo' above it
- add a third patch that sanitizes the installation process to avoid non-working stripping, owernship changes, etc.]
If you could work with upstream to submit those patches (they will have to be done in a better way to be acceptable upstream), it would be good.
Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v4 2/5 package/hplip: Un-deprecate and bump version to 3.15.11
In reply to Olivier Schonken--- package/hplip/0001-fix-make.patch | 40 +++++++++++++++++++-------------------- package/hplip/Config.in | 2 -- package/hplip/hplip.hash | 2 +- package/hplip/hplip.mk | 2 +- 4 files changed, 22 insertions(+), 24 deletions(-)
package/hplip/0001-fix-make.patch +20 -20
@@ -1,35 +1,35 @@ -From 6019d012246578ae1a191d3510284e7b894fb528 Mon Sep 17 00:00:00 2001 +From c1822a19e75bae8e044cd46a257a234cd9649896 Mon Sep 17 00:00:00 2001 From: Olivier Schonken <[email protected]> -Date: Sat, 2 Mar 2013 18:01:03 +0200 +Date: Wed, 20 Jan 2016 23:46:50 +0200 Subject: [PATCH] Changed Makefile.am to allow cross-compilation of HPLIP Signed-off-by: Olivier Schonken <[email protected]> --- - Makefile.am | 28 ++++++++++++++-------------- - 1 file changed, 14 insertions(+), 14 deletions(-) + Makefile.am | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Makefile.am b/Makefile.am -index 16ea902..b22f46a 100644 +index 73fed2e..23aa0ec 100644 --- a/Makefile.am +++ b/Makefile.am -@@ -72,7 +72,7 @@ libhpmud_la_SOURCES = io/hpmud/hpmud.c io/hpmud/mlc.c io/hpmud/model.c io/hpmud/ - io/hpmud/hpmud.h io/hpmud/hpmudi.h io/hpmud/list.h io/hpmud/mlc.h io/hpmud/pml.h io/hpmud/dot4.c \ - io/hpmud/dot4.h io/hpmud/jd.c io/hpmud/jd.h io/hpmud/pp.c io/hpmud/pp.h io/hpmud/musb.h io/hpmud/musb_libusb01.c +@@ -92,7 +92,7 @@ libhpmud_la_SOURCES += io/hpmud/musb_libusb01.c + libhpmud_la_LDFLAGS += -lusb else --libhpmud_la_CFLAGS = -I/usr/include/libusb-1.0 -DMUDNAME=\"$(MUDNAME)\" -DCONFDIR=\"$(hplip_confdir)\" -+libhpmud_la_CFLAGS = -I$(includedir)/libusb-1.0 -DMUDNAME=\"$(MUDNAME)\" -DCONFDIR=\"$(hplip_confdir)\" - libhpmud_la_SOURCES = io/hpmud/hpmud.c io/hpmud/mlc.c io/hpmud/model.c io/hpmud/pml.c \ - io/hpmud/hpmud.h io/hpmud/hpmudi.h io/hpmud/list.h io/hpmud/mlc.h io/hpmud/pml.h io/hpmud/dot4.c \ - io/hpmud/dot4.h io/hpmud/jd.c io/hpmud/jd.h io/hpmud/pp.c io/hpmud/pp.h io/hpmud/musb.h io/hpmud/musb.c -@@ -292,7 +292,7 @@ hpmudext_la_LIBADD = libhpmud.la - if LIBUSB01_BUILD - hpmudext_la_CFLAGS = -I$(PYTHONINCLUDEDIR) - else --hpmudext_la_CFLAGS =-I/usr/include/libusb-1.0 -I$(PYTHONINCLUDEDIR) -+hpmudext_la_CFLAGS =-I$(includedir)/libusb-1.0 -I$(PYTHONINCLUDEDIR) + libhpmud_la_SOURCES += io/hpmud/musb.c +-libhpmud_la_CFLAGS += -I/usr/include/libusb-1.0 ++libhpmud_la_CFLAGS += -I$(includedir)/libusb-1.0 + libhpmud_la_LDFLAGS += -lusb-1.0 + endif + +@@ -314,7 +314,7 @@ hpmudext_la_LIBADD = libhpmud.la libhpdiscovery.la + hpmudext_la_CFLAGS = -I$(PYTHONINCLUDEDIR) -Iprotocol/discovery + + if !LIBUSB01_BUILD +-hpmudext_la_CFLAGS +=-I/usr/include/libusb-1.0 ++hpmudext_la_CFLAGS +=-I$(includedir)/libusb-1.0 endif # ui (qt3) -- -1.7.10.4 +2.5.0
package/hplip/Config.in +0 -2
@@ -1,7 +1,5 @@ config BR2_PACKAGE_HPLIP bool "hplip" - # because of cups security issues - depends on BR2_DEPRECATED_SINCE_2015_05 depends on BR2_INSTALL_LIBSTDCPP depends on BR2_PACKAGE_CUPS depends on BR2_TOOLCHAIN_HAS_THREADS # libusb
package/hplip/hplip.hash +1 -1
@@ -1,2 +1,2 @@ # Locally computed: -sha256 a8122cd824398ac6374154f86152e24fdf5c0100b5c1d6518e853308362e627d hplip-3.13.10.tar.gz +sha256 33c4711bde04a34b81f3f70e6277a0375dded171469e5aa8b9cef1a14a407c6d hplip-3.15.11.tar.gz
package/hplip/hplip.mk +1 -1
@@ -4,7 +4,7 @@ # ################################################################################ -HPLIP_VERSION = 3.13.10 +HPLIP_VERSION = 3.15.11 HPLIP_SITE = http://downloads.sourceforge.net/hplip/hplip HPLIP_AUTORECONF = YES HPLIP_DEPENDENCIES = cups libusb jpeg
Signature · 1 line
2.5.0
PATCH v4 2/5 package/hplip: Un-deprecate and bump version to 3.15.11
Dear Olivier Schonken,
Quoted 7 lines · Olivier Schonken
Signed-off-by Olivier Schonken <[email protected]>--- package/hplip/0001-fix-make.patch | 40 +++++++++++++++++++-------------------- package/hplip/Config.in | 2 -- package/hplip/hplip.hash | 2 +- package/hplip/hplip.mk | 2 +- 4 files changed, 22 insertions(+), 24 deletions(-)
I've applied. However, I was horrified to discover the 0001-fix-make.patch (which already existed before this patch). Using includedir this way is really wrong. So I fixed that up in a followup commit:
https://git.busybox.net/buildroot/commit/?id=ffca78cbcdab370a3916be51db3ca54ea03fba24
And also did another minor improvements:
https://git.busybox.net/buildroot/commit/?id=3fc77e5f81906d774be2710b16166fca48fb3e05
Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v4 3/5 package/gutenprint: Un-deprecate and bump version to 5.2.10
In reply to Olivier Schonken--- package/gutenprint/Config.in | 2 -- package/gutenprint/gutenprint.hash | 2 +- package/gutenprint/gutenprint.mk | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-)
package/gutenprint/Config.in +0 -2
@@ -1,7 +1,5 @@ config BR2_PACKAGE_GUTENPRINT bool "gutenprint" - # because of cups security issues - depends on BR2_DEPRECATED_SINCE_2015_05 depends on BR2_INSTALL_LIBSTDCPP depends on BR2_PACKAGE_CUPS select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
package/gutenprint/gutenprint.hash +1 -1
@@ -1,2 +1,2 @@ # Locally computed: -sha256 4b27e4f06f32d30271df89ecb6089bb11bcf2caec5f60b0909e083095354bca0 gutenprint-5.2.9.tar.bz2 +sha256 431f352b412dfb9809d126a85a37a1fcd1c1826275ace8cdcd4fd9a6ee360e59 gutenprint-5.2.10.tar.bz2
package/gutenprint/gutenprint.mk +1 -1
@@ -5,7 +5,7 @@ ################################################################################ GUTENPRINT_VERSION_MAJOR = 5.2 -GUTENPRINT_VERSION = $(GUTENPRINT_VERSION_MAJOR).9 +GUTENPRINT_VERSION = $(GUTENPRINT_VERSION_MAJOR).10 GUTENPRINT_SITE = http://downloads.sourceforge.net/project/gimp-print/gutenprint-$(GUTENPRINT_VERSION_MAJOR)/$(GUTENPRINT_VERSION) GUTENPRINT_SOURCE = gutenprint-$(GUTENPRINT_VERSION).tar.bz2 GUTENPRINT_LICENSE = GPLv2+
Signature · 1 line
2.5.0
PATCH v4 3/5 package/gutenprint: Un-deprecate and bump version to 5.2.10
Dear Olivier Schonken,
Quoted 6 lines · Olivier Schonken
Signed-off-by Olivier Schonken <[email protected]>--- package/gutenprint/Config.in | 2 -- package/gutenprint/gutenprint.hash | 2 +- package/gutenprint/gutenprint.mk | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-)
This one doesn't build here:
print-olympus.c: In function ?dyesub_do_print?:
print-olympus.c:4909:2: error: #error "Unable to determine endianness, aborting compilation!"
#error "Unable to determine endianness, aborting compilation!"
Here is the defconfig to reproduce:
BR2_arm=y
BR2_cortex_a9=y
BR2_ARM_ENABLE_VFP=y
BR2_COMPILER_PARANOID_UNSAFE_PATH=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-cortex-a9-musl-2015.11-rc1-71-g90d1299.tar.bz2" BR2_TOOLCHAIN_EXTERNAL_GCC_4_9=y
BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_3=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL=y
BR2_TOOLCHAIN_EXTERNAL_CXX=y
BR2_INIT_NONE=y
BR2_SYSTEM_BIN_SH_NONE=y
# BR2_PACKAGE_BUSYBOX is not set
BR2_PACKAGE_CUPS=y
BR2_PACKAGE_GUTENPRINT=y
BR2_PACKAGE_HPLIP=y
# BR2_TARGET_ROOTFS_TAR is not set
It's late, I'm heading off to bed, so I haven't investigated at all. It might be trivial.
Best regards,
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v4 3/5 package/gutenprint: Un-deprecate and bump version to 5.2.10
Hi Thomas, All
Attached is a patch that worked for fixing the build issue you had with Gutenprint. Seems they have a bit of issues with code quality control/review upstream.
For the print-olympus.c file the way in which they checked the endianess differed from the rest of the project, and the also had a variable in genppd.c that was dependant on a HAVE_ZLIB define, but not encased in an #ifdef block.
If the changes are in order I will resubmit using the usual methods.
Regards
Olivier Schonken
Quoted 44 lines · Thomas Petazzoni
Dear Olivier Schonken,
Quoted 6 lines · Olivier Schonken
Signed-off-by Olivier Schonken <[email protected]>--- package/gutenprint/Config.in | 2 -- package/gutenprint/gutenprint.hash | 2 +- package/gutenprint/gutenprint.mk | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-)This one doesn't build here:
print-olympus.c: In function ?dyesub_do_print?:
print-olympus.c:4909:2: error: #error "Unable to determine endianness, aborting compilation!"
#error "Unable to determine endianness, aborting compilation!"Here is the defconfig to reproduce:
BR2_arm=y
BR2_cortex_a9=y
BR2_ARM_ENABLE_VFP=y
BR2_COMPILER_PARANOID_UNSAFE_PATH=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-cortex-a9-musl-2015.11-rc1-71-g90d1299.tar.bz2
"
BR2_TOOLCHAIN_EXTERNAL_GCC_4_9=y
BR2_TOOLCHAIN_EXTERNAL_HEADERS_4_3=y
BR2_TOOLCHAIN_EXTERNAL_CUSTOM_MUSL=y
BR2_TOOLCHAIN_EXTERNAL_CXX=y
BR2_INIT_NONE=y
BR2_SYSTEM_BIN_SH_NONE=y
#BR2_PACKAGE_BUSYBOXis not set
BR2_PACKAGE_CUPS=y
BR2_PACKAGE_GUTENPRINT=y
BR2_PACKAGE_HPLIP=y
#BR2_TARGET_ROOTFS_TARis not setIt's late, I'm heading off to bed, so I haven't investigated at all. It might be trivial.
Quoted 8 lines
Best regards,
Thomas
--
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20160124/8d117a80/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-gutenprint-fixup.patch
Type: text/x-patch
Size: 1585 bytes
Desc: not available
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20160124/8d117a80/attachment.bin>
PATCH v4 3/5 package/gutenprint: Un-deprecate and bump version to 5.2.10
Quoted 11 lines · Olivier Schonken
Hi Thomas, All
Attached is a patch that worked for fixing the build issue you had with Gutenprint. Seems they have a bit of issues with code quality control/review upstream.
For theprint-olympus.cfile the way in which they checked the endianess differed from the rest of the project, and the also had a variable ingenppd.cthat was dependant on aHAVE_ZLIBdefine, but not encased in an #ifdef block.If the changes are in order I will resubmit using the usual methods.
A few small comments:
It should be two separate patches, because they do two unrelated things.
The patch commit log for the endianness fix could be improved a little, e.g.
print-olympus.c: fix endianness detection
The __LITTLE_ENDIAN__ and __BIG_ENDIAN__ macros are not a reliable way to detect endianness. Instead, rely on __BYTE_ORDER like we do in the rest of the code.
There's a redundant newline in the patch description.
And finally, don't forget to send these patches upstream.
Thanks,
Arnout
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286500 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF
PATCH v4 4/5 Enable xpdf-headers in poppler to enable building of cups-filters
In reply to Olivier SchonkenAdd --enable-xpdf-headers to poppler.mk. Required for succesfull build of cups-filters.
--- package/poppler/poppler.mk | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
package/poppler/poppler.mk +2 -1
@@ -11,7 +11,8 @@ POPPLER_DEPENDENCIES = fontconfig host-pkgconf POPPLER_LICENSE = GPLv2+ POPPLER_LICENSE_FILES = COPYING POPPLER_INSTALL_STAGING = YES -POPPLER_CONF_OPTS = --with-font-configuration=fontconfig +POPPLER_CONF_OPTS = --with-font-configuration=fontconfig \ + --enable-xpdf-headers ifeq ($(BR2_PACKAGE_LCMS2),y) POPPLER_CONF_OPTS += --enable-cms=lcms2
Signature · 1 line
2.5.0
Thomas Petazzoni
AppliedPATCH v4 4/5 Enable xpdf-headers in poppler to enable building of cups-filters
Dear Olivier Schonken,
Quoted 8 lines · Olivier Schonken
Add --enable-xpdf-headers to poppler.mk. Required for succesfull build of cups-filters.
Signed-off-by Olivier Schonken <[email protected]>Reviewed-by Samuel Martin <[email protected]>--- package/poppler/poppler.mk | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
The title of all commits touching packages should have the following form:
<package>: <what happens>
So, I've changed the commit title of this patch to:
poppler: install xpdf-headers to enable building of cups-filters
Applied to next with this change, thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux, Kernel and Android engineering http://free-electrons.com
PATCH v4 5/5 package/cups-filters: Add new package cups-filters 1.7.0
In reply to Olivier Schonken--- Config.in.legacy | 1 + package/Config.in | 1 + package/cups-filters/Config.in | 41 ++++++++++++++++++++++++ package/cups-filters/cups-filters.hash | 2 ++ package/cups-filters/cups-filters.mk | 57 ++++++++++++++++++++++++++++++++++ 5 files changed, 102 insertions(+) create mode 100644 package/cups-filters/Config.in create mode 100644 package/cups-filters/cups-filters.hash create mode 100644 package/cups-filters/cups-filters.mk
Config.in.legacy +1 -0
@@ -147,6 +147,7 @@ comment "Legacy options removed in 2016.02" config BR2_PACKAGE_CUPS_PDFTOPS bool "Pdftops support has been removed from Cups" + select BR2_PACKAGE_CUPS_FILTERS_PDFTOPS select BR2_LEGACY help Pdftops support has been removed from the cups package
package/Config.in +1 -0
@@ -1310,6 +1310,7 @@ menu "Networking applications" source "package/crda/Config.in" source "package/ctorrent/Config.in" source "package/cups/Config.in" + source "package/cups-filters/Config.in" if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/dhcp/Config.in" endif
package/cups-filters/Config.in new file +41 -0
41 lines not on this page · raw message
package/cups-filters/cups-filters.hash new file +2 -0
@@ -0,0 +1,2 @@ +# Locally computed: +sha256 c6996e51b43e3baed99f0e386c1914e6d2245aa93c2cca182da0f59953cd6854 cups-filters-1.7.0.tar.gz
package/cups-filters/cups-filters.mk new file +57 -0
57 lines not on this page · raw message
Signature · 1 line
2.5.0
PATCH v4 5/5 package/cups-filters: Add new package cups-filters 1.7.0
Olivier,
Quoted 60 lines · Olivier Schonken
Signed-off-by Olivier Schonken <[email protected]>--- Config.in.legacy | 1 + package/Config.in | 1 + package/cups-filters/Config.in | 41 ++++++++++++++++++++++++ package/cups-filters/cups-filters.hash | 2 ++ package/cups-filters/cups-filters.mk | 57 ++++++++++++++++++++++++++++++++++ 5 files changed, 102 insertions(+) create mode 100644 package/cups-filters/Config.in create mode 100644 package/cups-filters/cups-filters.hash create mode 100644 package/cups-filters/cups-filters.mkConfig.in.legacy +1
-0@@ -147,6 +147,7 @@ comment "Legacy options removed in 2016.02" config BR2_PACKAGE_CUPS_PDFTOPS bool "Pdftops support has been removed from Cups" + select BR2_PACKAGE_CUPS_FILTERS_PDFTOPS select BR2_LEGACY help Pdftops support has been removed from the cups packagepackage/Config.in +1
-0@@ -1310,6 +1310,7 @@ menu "Networking applications" source "package/crda/Config.in" source "package/ctorrent/Config.in" source "package/cups/Config.in" + source "package/cups-filters/Config.in" if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS source "package/dhcp/Config.in" endifpackage/cups-filters/Config.in new file +18
-0@@ -0,0 +1,41 @@ +config BR2_PACKAGE_CUPS_FILTERS + bool "cups-filters" + # needs fork() + depends on BR2_USE_MMU + depends on !BR2_STATIC_LIBS + select BR2_PACKAGE_CUPS + select BR2_PACKAGE_LIBGLIB2 + select BR2_PACKAGE_IJS + select BR2_PACKAGE_LCMS2 + select BR2_PACKAGE_POPPLER + select BR2_PACKAGE_QPDF + help + This project provides backends, filters, and other software that was + once part of the core CUPS distribution but is no longer maintained + by Apple Inc. In addition it contains additional filters and software + developed independently of Apple, especially filters for the PDF- + centric printing workflow introduced by OpenPrinting and a daemon + to browse Bonjour broadcasts of remote CUPS printers to make these
package/cups-filters/Config.in line 28
Quoted 10 lines
package/cups-filters/Config.in new file +10
-0+ printers available locally and to provide backward compatibility to + the old CUPS broadcasting and browsing of CUPS 1.5.x and older. + From CUPS 1.6.0 on, this package is required for using printer drivers + with CUPS under Linux. With CUPS 1.5.x and earlier this package can be + used optionally to switch over to PDF-based printing. + + http://www.linuxfoundation.org/collaborate/workgroups/openprinting/cups-filters + +comment "cups-filters needs a toolchain w/ dynamic library" + depends on BR2_STATIC_LIBS
Nitpicking: if you move this comment before the config, the options in the below if-block will be intented in menuconfig (just to make the the look and feel better ;-]).
Otherwize, it looks good!
Regards,
Signature · 1 line
Samuel