Date: Mon, 1 Oct 2012 16:38:17 +0200 (CEST) From: Guido Falsi <madpilot@FreeBSD.org> To: FreeBSD-gnats-submit@FreeBSD.org Cc: cy@FreeBSD.org Subject: ports/172211: [PATCH] x11-wm/fvwm2 fix configure with clang Message-ID: <3XVmLy06MGz2k4@micro.madpilot.net> Resent-Message-ID: <201210011440.q91Ee3Dx024323@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 172211 >Category: ports >Synopsis: [PATCH] x11-wm/fvwm2 fix configure with clang >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Mon Oct 01 14:40:03 UTC 2012 >Closed-Date: >Last-Modified: >Originator: Guido Falsi >Release: FreeBSD 9.1-PRERELEASE amd64 >Organization: >Environment: FreeBSD fbsd.madpilot.net 10.0-CURRENT FreeBSD 10.0-CURRENT #1: Mon Oct 1 11:43:08 CEST 2012 root@fbsd.madpilot.net:/usr/obj/usr/src/sys/FBSD amd64 This is a Virtualbox machine I made to test a clang only system with WITH_CLANG_IS_CC=yes. >Description: Configure fails because clang refuses to compile a main not returning an int. It blames -Werror, but this is not the case with clang. Attached patch removes this check. Perhaps this is not the best fix, but works correctly. perhaps setting -Wno-return-type is also an option. While testing this I also noticed that the configure script gets modified in post-patch, so during configure phase autoconf sees it sith a newer date and does not touch it even if USE_AUTOTOOLS=autoconf is defined. So I added the touch command to fix this. Maintainer is CCed. >How-To-Repeat: Try to compile x11-wm/fvwm2 on a 10-CURRENT system with WITH_CLANG_IS_CC=yes >Fix: Index: Makefile =================================================================== --- Makefile (revision 305105) +++ Makefile (working copy) @@ -160,6 +160,7 @@ @${REINPLACE_CMD} -e 's,%%LOCALBASE%%,${LOCALBASE},' \ ${WRKSRC}/modules/FvwmM4/FvwmM4.c \ ${WRKSRC}/configure + ${TOUCH} ${WRKSRC}/configure.ac post-install: @${INSTALL_DATA} ${WRKSRC}/sample.fvwmrc/system.fvwm2rc \ Index: files/patch-configure.ac =================================================================== --- files/patch-configure.ac (revision 0) +++ files/patch-configure.ac (working copy) @@ -0,0 +1,20 @@ +--- configure.ac.orig 2012-10-01 16:10:17.000000000 +0200 ++++ configure.ac 2012-10-01 16:10:28.000000000 +0200 +@@ -219,17 +219,6 @@ + AC_ISC_POSIX + AC_MINIX + +-# catch -Werror and similar options when running configure +-AC_TRY_COMPILE([#include <stdio.h>], +-[int i; static j; int *p; char *c; +- switch (*p = p = *c) { case 0: printf("%Q", c, p); } +- *c = &i; c = p; +- while (1 || (unsigned int)3 >= 0 || ((int)-1) == ((unsigned int)1)); +- return;], , AC_MSG_ERROR(" +-configure is not able to compile programs with warnings. Please +-remove all offending options like -Werror from the CFLAGS and +-CPPFLAGS variables and run configure again.")) +- + # check size of some types + ac_save_CFLAGS="$CFLAGS" + CFLAGS="$CFLAGS $X_CFLAGS" >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3XVmLy06MGz2k4>