From owner-cvs-all@FreeBSD.ORG Tue Jun 22 02:55:54 2010 Return-Path: Delivered-To: cvs-all@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 4E8851065674 for ; Tue, 22 Jun 2010 02:55:54 +0000 (UTC) (envelope-from dougb@FreeBSD.org) Received: from mail2.fluidhosting.com (mx21.fluidhosting.com [204.14.89.4]) by mx1.freebsd.org (Postfix) with ESMTP id A7F008FC17 for ; Tue, 22 Jun 2010 02:55:53 +0000 (UTC) Received: (qmail 26591 invoked by uid 399); 22 Jun 2010 02:55:52 -0000 Received: from localhost (HELO foreign.dougb.net) (dougb@dougbarton.us@127.0.0.1) by localhost with ESMTPAM; 22 Jun 2010 02:55:52 -0000 X-Originating-IP: 127.0.0.1 X-Sender: dougb@dougbarton.us Message-ID: <4C202637.2010105@FreeBSD.org> Date: Mon, 21 Jun 2010 19:55:51 -0700 From: Doug Barton Organization: http://SupersetSolutions.com/ User-Agent: Mozilla/5.0 (X11; U; FreeBSD i386; en-US; rv:1.9.1.9) Gecko/20100330 Thunderbird/3.0.4 MIME-Version: 1.0 To: Norikatsu Shigemura References: <201006131614.o5DGEJQM026112@repoman.freebsd.org> <4C1539B4.2060702@FreeBSD.org> <20100621005607.13850416.nork@FreeBSD.org> In-Reply-To: <20100621005607.13850416.nork@FreeBSD.org> X-Enigmail-Version: 1.0.1 OpenPGP: id=1A1ABC84 Content-Type: multipart/mixed; boundary="------------010300000407000502010204" Cc: cvs-ports@FreeBSD.org, cvs-all@FreeBSD.org, ports-committers@FreeBSD.org Subject: Re: cvs commit: ports/net/liveMedia Makefile distinfo X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: **OBSOLETE** CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Jun 2010 02:55:54 -0000 This is a multi-part message in MIME format. --------------010300000407000502010204 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit On 06/20/10 08:56, Norikatsu Shigemura wrote: > Hi dougb. > > On Sun, 13 Jun 2010 13:04:04 -0700 > Doug Barton wrote: >> I'm getting this: >> ===> Building for liveMedia-2010.06.11,1 >> (cd liveMedia ; /usr/bin/make) >> g++45 -pipe -g -march=native -fpic -g -c Media.cpp >> g++45 -pipe -g -march=native -fpic -g -c MediaSource.cpp >> Media.cpp:21:20: fatal error: Media.hh: No such file or directory >> MediaSource.cpp:21:26: fatal error: MediaSource.hh: No such file or >> directory >> compilation terminated. >> compilation terminated. >> *** Error code 1 >> Could it be related to my using gcc45 for ports? > > I did give liveMedia some robustness by files/config.fixed-freebsd. > So it is unthinkable issue. > Please give me work/live/Makefile. Ok, this is a weird one. I can now tell you _what_ is happening, but I cannot tell you why. The problem actually is gcc-related, so let me set the stage. I followed the instructions at http://www.freebsd.org/doc/en_US.ISO8859-1/articles/custom-gcc/configuring-ports-gcc.html except with gcc 4.5.1. I also rebuild libtool every time I switch compilers. The relevant bits of my make.conf are: .if !empty(.CURDIR:M/usr/ports*) WRKDIRPREFIX= /usr/local/tmp .endif .if !empty(.CURDIR:M/usr/ports*) || !empty(.CURDIR:M/home/*) || defined(UPGRADE_TOOL) CC= /usr/local/bin/gcc45 CXX= /usr/local/bin/g++45 CPP= /usr/local/bin/cpp45 CPUTYPE= native .endif So, if I'm building in the ports tree, WRKDIRPREFIX is set. Also, the test for when to set CC, etc. is not true in the directory I use for WRKDIRPREFIX, but IS always true if UPGRADE_TOOL is defined (which it always is for portmaster). Now, here is where it gets weird. If I use _exactly_ this configuration, and build the port by doing 'cd /usr/ports/net/liveMedia && make' it works. However, if I comment out WRKDIRPREFIX, or if I make the setting of CC, etc. unconditional, it does not work (I get the error above). To make it even weirder, the working configuration appears to actually be using gcc 4.5.1, and all of the right cflags are included on the command line: ===> Building for liveMedia-2010.06.11,1 (cd liveMedia ; make) /usr/local/bin/g++45 -c -O2 -pipe -march=native -fpic -fno-strict-aliasing -Iinclude -I../UsageEnvironment/include -I../groupsock/include -I. -DBSD=1 -DSOCKLEN_T=socklen_t -DHAVE_SOCKADDR_LEN=1 -Wall -Wno-deprecated DVVideoStreamFramer.cpp It's probably also worth noting that the file that is first to compile in the working example above is different than the non-working version. I also tried using gmake just in case, no luck there either. So, something is very, very odd here. I've spent a lot of time staring at this trying to figure out what is without success. :( The "good" news is that in the simple case (unconditional definition of CC) it fails, so hopefully that will give you some hint as to where to proceed in terms of fixing the build with gcc 4.5.1. Sorry I couldn't figure out the solution myself. Doug -- ... and that's just a little bit of history repeating. -- Propellerheads Improve the effectiveness of your Internet presence with a domain name makeover! http://SupersetSolutions.com/ --------------010300000407000502010204 Content-Type: text/plain; name="Makefile" Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename="Makefile" COMPILE_OPTS = -O2 -pipe -march=native -fpic -fno-strict-aliasing $(INCLUDES) -I. -DBSD=1 -DSOCKLEN_T=socklen_t -DHAVE_SOCKADDR_LEN=1 C = c C_COMPILER = $(CC) C_FLAGS = $(COMPILE_OPTS) CPLUSPLUS_COMPILER = $(CXX) CPLUSPLUS_FLAGS = $(COMPILE_OPTS) -Wall -Wno-deprecated OBJ = o LINK = $(CXX) -o LINK_OPTS = -L. CONSOLE_LINK_OPTS = $(LINK_OPTS) LIBRARY_LINK = $(AR) cr LIBRARY_LINK_OPTS = LIB_SUFFIX = a LIBS_FOR_CONSOLE_APPLICATION = LIBS_FOR_GUI_APPLICATION = EXE = ##### End of variables to change LIVEMEDIA_DIR = liveMedia GROUPSOCK_DIR = groupsock USAGE_ENVIRONMENT_DIR = UsageEnvironment BASIC_USAGE_ENVIRONMENT_DIR = BasicUsageEnvironment TESTPROGS_DIR = testProgs MEDIA_SERVER_DIR = mediaServer all: (cd $(LIVEMEDIA_DIR) ; $(MAKE)) (cd $(GROUPSOCK_DIR) ; $(MAKE)) (cd $(USAGE_ENVIRONMENT_DIR) ; $(MAKE)) (cd $(BASIC_USAGE_ENVIRONMENT_DIR) ; $(MAKE)) (cd $(TESTPROGS_DIR) ; $(MAKE)) (cd $(MEDIA_SERVER_DIR) ; $(MAKE)) clean: (cd $(LIVEMEDIA_DIR) ; $(MAKE) clean) (cd $(GROUPSOCK_DIR) ; $(MAKE) clean) (cd $(USAGE_ENVIRONMENT_DIR) ; $(MAKE) clean) (cd $(BASIC_USAGE_ENVIRONMENT_DIR) ; $(MAKE) clean) (cd $(TESTPROGS_DIR) ; $(MAKE) clean) (cd $(MEDIA_SERVER_DIR) ; $(MAKE) clean) --------------010300000407000502010204--