From owner-freebsd-ports@FreeBSD.ORG Tue Aug 24 12:45:45 2010 Return-Path: Delivered-To: freebsd-ports@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 3A70A10656A5 for ; Tue, 24 Aug 2010 12:45:45 +0000 (UTC) (envelope-from avg@icyb.net.ua) Received: from citadel.icyb.net.ua (citadel.icyb.net.ua [212.40.38.140]) by mx1.freebsd.org (Postfix) with ESMTP id 6F45F8FC19 for ; Tue, 24 Aug 2010 12:45:44 +0000 (UTC) Received: from porto.topspin.kiev.ua (porto-e.starpoint.kiev.ua [212.40.38.100]) by citadel.icyb.net.ua (8.8.8p3/ICyb-2.3exp) with ESMTP id PAA06992 for ; Tue, 24 Aug 2010 15:35:03 +0300 (EEST) (envelope-from avg@icyb.net.ua) Received: from localhost.topspin.kiev.ua ([127.0.0.1]) by porto.topspin.kiev.ua with esmtp (Exim 4.34 (FreeBSD)) id 1OnsiT-000Hbd-Uv for freebsd-ports@FreeBSD.org; Tue, 24 Aug 2010 15:35:03 +0300 Resent-From: Andriy Gapon Resent-To: freebsd-ports@FreeBSD.org Resent-Date: Tue, 24 Aug 2010 15:34:59 +0300 Resent-Message-Id: <4C73BC73.4080200@icyb.net.ua> Resent-User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.2.8) Gecko/20100822 Lightning/1.0b2 Thunderbird/3.1.2 Message-ID: <4C73BA89.6040804@icyb.net.ua> Date: Tue, 24 Aug 2010 15:26:49 +0300 From: Andriy Gapon User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.2.8) Gecko/20100822 Lightning/1.0b2 Thunderbird/3.1.2 MIME-Version: 1.0 To: jesse@cs.uni-magdeburg.de X-Enigmail-Version: 1.1.2 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-UID: 17884 X-Keywords: Cc: Subject: Fwd: Re: devel/doxygen and non-default gcc X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 Aug 2010 12:45:45 -0000 Please see message below for a problem with non-default gcc (e.g. gcc44) and port(s) that use tmake. Looking in lib/unix/generic.t we see: ... ####### Compiler, tools and options CC ?= #$ Expand("TMAKE_CC"); CXX ?= #$ Expand("TMAKE_CXX"); CFLAGS += #$ Expand("TMAKE_CFLAGS"); ExpandGlue("DEFINES","-D"," -D",""); CXXFLAGS+= #$ Expand("TMAKE_CXXFLAGS"); ExpandGlue("DEFINES","-D"," -D",""); INCPATH = #$ ExpandPath("INCPATH","-I"," -I",""); #$ Config("staticlib") && DisableOutput(); LINK = #$ Expand("TMAKE_LINK"); ... So, CC and CXX are set in such a way that they can be overridden, but LINK can not be influenced from outside. We also see that lib/freebsd-g++/tmake.conf sets TMAKE_LINK to g++, TMAKE_CXX has the same value. So it seems that changing lib/unix/generic.t so that LINK is defined as follows should both preserve default behavior and allow LINK to stay in sync with CXX: LINK = $(CXX) P.S. and a cosmetic issue - it seems that the port needlessly installs freebsd-g++/tmake.conf.orig file that's created during patching. -------- Original Message -------- Subject: Re: devel/doxygen and non-default gcc Date: Thu, 05 Aug 2010 07:44:29 -0400 From: Naram Qashat To: Andriy Gapon On 08/05/10 04:56, Andriy Gapon wrote: > > I am trying to build devel/doxygen with gcc44 and in general it works good except > for one tiny issue. > Both src/Makefile.doxygen and src/Makefile.doxytag have this block of definitions > at the beginning: > CC ?= gcc > CXX ?= g++ > CFLAGS += -pipe -Wall -W > CXXFLAGS+= -pipe -Wall -W > INCPATH = -I../qtools -I/usr/local/include > LINK = g++ > > As you can see, CC and CXX can be overridden and they get set to gcc44 and g++44, > but LINK value is 'hardcoded'. > I would like to propose to change LINK definition to: > LINK = ${CXX} > > Thanks! Here's the thing, those files are generated by tmake. I'm not familiar with tmake enough to know what needs to be done in order to get it to generate a proper Makefile that has LINK set to the proper value. If you or someone else is more familiar with it and would know how to fix this, I'll gladly submit a PR for it, but without knowing how, I am unable to do so. Thanks, Naram Qashat