瀏覽代碼

cups: fix -fstack-protector configure check

The configure script failed to detect toolchains without stack protector
support.

Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Peter Korsgaard 16 年之前
父節點
當前提交
21c5e5d0d0
共有 2 個文件被更改,包括 27 次插入1 次删除
  1. 25 0
      package/cups/cups-fix-stack-protector-check.patch
  2. 2 1
      package/cups/cups.mk

+ 25 - 0
package/cups/cups-fix-stack-protector-check.patch

@@ -0,0 +1,25 @@
+[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 <jacmet@sunsite.dk>
+---
+ 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))

+ 2 - 1
package/cups/cups.mk

@@ -74,6 +74,7 @@ $(CUPS_DIR)/.unpacked: $(DL_DIR)/$(CUPS_SOURCE)
 	touch $@
 
 $(CUPS_DIR)/.configured: $(CUPS_DIR)/.unpacked
+	cd $(CUPS_DIR) && $(AUTOCONF)
 	(cd $(CUPS_DIR) && \
 		$(TARGET_CONFIGURE_OPTS) \
 		$(TARGET_CONFIGURE_ARGS) \
@@ -109,7 +110,7 @@ $(CUPS_DIR)/.installed: $(CUPS_DIR)/.compiled
 	$(SED) "s,^libdir=.*,libdir=\'$(STAGING_DIR)/usr/lib\',g" $(STAGING_DIR)/usr/bin/cups-config
 	touch $@
 
-cups: uclibc $(CUPS_DEPENDENCIES) $(CUPS_DIR)/.installed
+cups: uclibc host-autoconf $(CUPS_DEPENDENCIES) $(CUPS_DIR)/.installed
 
 cups-source: $(DL_DIR)/$(CUPS_SOURCE)