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

Bug#656643: Hardened build flags



tag 656643 - patch
thanks

Hi,

On Fri, Jan 20, 2012 at 06:32:16PM +0100, Moritz Muehlenhoff wrote:
> attached you can find a patch against libreoffice from experimental
> to enable dpkg-buildflags for libreoffice (enabling hardened build 
> flags for Wheezy).
[...]
> I haven't had a chance to compile libreoffice with that patch,
> I'll give it a shot in the next days.

Just tried.
Sorry, doesn't work...

> diff -aur libreoffice-3.5.0~beta2.orig/debian/rules libreoffice-3.5.0~beta2/debian/rules
> --- libreoffice-3.5.0~beta2.orig/debian/rules	2011-12-30 00:12:06.000000000 +0100
> +++ libreoffice-3.5.0~beta2/debian/rules	2012-01-16 11:33:37.694562649 +0100
> @@ -592,6 +592,13 @@
>  	DBG_DBG_SUGGESTS+= , libc6.1-dbg [alpha ia64], libc0.1-dbg [kfreebsd-i386 kfreebsd-amd64], libc0.3-dbg [hurd-i386], libc6-dbg [!ia64 !alpha !kfreebsd-i386 !kfreebsd-amd64 !hurd-i386], libatk1.0-dbg, libglib2.0-0-dbg, libgnomevfs2-0-dbg, libstdc++6-$(SYSTEM_GCC_VERSION)-dbg, libx11-6-dbg, libxext6-dbg, libxaw7-dbg, libxml2-dbg, libgtk2.0-0-dbg, libxau6-dbg, libice6-dbg, libsm6-dbg, libxinerama1-dbg, libfontconfig1-dbg, libhunspell-$(shell pkg-config --modversion hunspell | cut -d. -f1,2)-0-dbg, libcurl4-dbg
>  endif
>  # Small symbols?
> +CFLAGS = `dpkg-buildflags --get CFLAGS`
> +CXXFLAGS = `dpkg-buildflags --get CXXFLAGS`
> +LDFLAGS = `dpkg-buildflags --get LDFLAGS`
> +CPPFLAGS = `dpkg-buildflags --get CPPFLAGS`
> +export CPPFLAGS
> +export LDFLAGS
> +

This breaks configure as configure then tries to check for
x86_64-linux-gnu `dpkg-buildflags --get CFLAGS` `dpkg-buildflags --get CXXFLAGS`
(literally) and fails...

$(shell works around that and it seems to have effect there....

>  ifeq "$(SMALL_SYMBOLS)" "y"
>  	CONFIGURE_FLAGS += --enable-symbols=SMALL
>  	CFLAGS := $(shell echo $(CFLAGS) | sed -e "s/-g/-g1/")
> @@ -1560,7 +1567,7 @@
>  $(STAMP_DIR)/build: config.status
>  	dh_testdir
>  
> -	PATH=$(BUILD_PATH) LD_LIBRARY_PATH=$(BUILD_LD_LIBRARY_PATH) DEFAULT_TO_ENGLISH_FOR_PACKING=1 ARCH_FLAGS=$(ARCH_FLAGS) TMP=`mktemp -q -d` CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" $(MAKE) build
> +	PATH=$(BUILD_PATH) LD_LIBRARY_PATH=$(BUILD_LD_LIBRARY_PATH) DEFAULT_TO_ENGLISH_FOR_PACKING=1 ARCH_FLAGS=$(ARCH_FLAGS) TMP=`mktemp -q -d` CPPFLAGS="$(CPPFLAGS)" LDFLAGS="$(LDFLAGS)" CFLAGS="$(CFLAGS)" CXXFLAGS="$(CXXFLAGS)" $(MAKE) build

... but not here. Maybe one can whack that all into $(ARCH_FLAGS) if something else
in the build process would not mind unused/needed options...

Regards,

Rene



Reply to: