From owner-freebsd-ports@FreeBSD.ORG Sun Jun 10 17:52:45 2012 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 54E941065670 for ; Sun, 10 Jun 2012 17:52:45 +0000 (UTC) (envelope-from ahicks@p-o.co.uk) Received: from mail.p-o.co.uk (ligeti.p-o.co.uk [80.254.233.132]) by mx1.freebsd.org (Postfix) with ESMTP id 040CE8FC08 for ; Sun, 10 Jun 2012 17:52:44 +0000 (UTC) Received: from alanhicks.plus.com ([80.229.143.200] helo=schnittke.p-o.co.uk) by p-o.co.uk with esmtpsa (TLSv1:CAMELLIA256-SHA:256) (Exim 4.77 (FreeBSD)) (envelope-from ) id 1SdmH5-000NKV-5o; Sun, 10 Jun 2012 18:50:06 +0100 Message-ID: <4FD4DE45.80108@p-o.co.uk> Date: Sun, 10 Jun 2012 18:49:57 +0100 From: Alan Hicks Organization: Persistent Objects Ltd User-Agent: Mozilla/5.0 (X11; FreeBSD i386; rv:12.0) Gecko/20120609 Thunderbird/12.0.1 MIME-Version: 1.0 To: rotkap@gmx.de References: <4FD05DD0.6050401@cyberleo.net> <20120608092750.5b5cecb7@arsenic.lan> <4FD20839.9020708@p-o.co.uk> In-Reply-To: <4FD20839.9020708@p-o.co.uk> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -1.9 (-) Cc: Heino Tiedemann , freebsd-ports@freebsd.org Subject: Re: firefox 13.0,1 needs lang/gcc46 -- to RUN?! 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: Sun, 10 Jun 2012 17:52:45 -0000 On 08/06/2012 15:12, Alan Hicks wrote: > On 08/06/2012 11:09, Heino Tiedemann wrote: >> Maciej Suszko wrote: >> >>> Heino Tiedemann wrote: >>>> >>>> What ist the meaning of >>>> >>>> ,---- >>>> | Use GCC 4.6 to fix build on newer FreeBSD versions >>>> `---- >>>> >>>> >>>> What meians "newer FreeBSD versions" here? >>>> http://www.freshports.org/www/firefox/ >>>> >>>> >>>> And what means >>>> >>>> ,---- >>>> | Don't depend on GCC 4.6 if clang is used >>>> `---- >>>> >>>> >>>> How an I use clang? >>>> http://www.freshports.org/www/firefox/ >>> >>> >>> I just simply built www/firefox with those flags to make: >>> CC=clang CXX=clang++ CPP=clang-cpp >>> >>> If you use portupgrade, this should work: >>> portupgrade -m 'CC=clang CXX=clang++ CPP=clang-cpp' firefox\* >> >> does not work :( >> >> clang++ -o nsUTF8UtilsSSE2.o -c -fvisibility=hidden >> -DMOZ_GLUE_IN_PROGRAM -DMOZILLA_INTERNlude >> -I../../../dist/include/nsprpub -I/usr/local/include >> -I/usr/local/include/nspr -I/usr -I/usr/local/include -fno-rtti >> -Qunused-arguments -Wall -Wpointer-arith -Woverloaded-virtid-offsetof >> -Wno-variadic-macros -Werror=return-type -Wno-unknown-warning-option >> -Wno-retur-std=gnu++0x -ffunction-sections -fdata-sections -pipe >> -DNDEBUG -DTRIMMED -fno-omit-frame-/../../mozilla-config.h >> /usr/ports/www/firefox/work/mozilla-release/xpcom/string/src/nsUTF8 >> In file included from >> /usr/ports/www/firefox/work/mozilla-release/xpcom/string/src/nsUTF8UtilsSSE2.cpp:3: >> >> In file included from /usr/include/clang/3.0/emmintrin.h:31: >> In file included from /usr/include/clang/3.0/xmmintrin.h:31: >> /usr/include/clang/3.0/mmintrin.h:28:2: error: #error "MMX instruction >> set not enabled" >> #error "MMX instruction set not enabled" >> ^ >> In file included from >> /usr/ports/www/firefox/work/mozilla-release/xpcom/string/src/nsUTF8UtilsSSE2.cpp:3: >> >> In file included from /usr/include/clang/3.0/emmintrin.h:31: >> /usr/include/clang/3.0/xmmintrin.h:417:19: error: unknown type name >> '__m64' >> static __inline__ __m64 __attribute__((__always_inline__, __nodebug__)) >> ^ >> /usr/include/clang/3.0/xmmintrin.h:417:25: error: expected unqualified-id >> static __inline__ __m64 __attribute__((__always_inline__, __nodebug__)) >> ^ >> In file included from >> /usr/ports/www/firefox/work/mozilla-release/xpcom/string/src/nsUTF8UtilsSSE2.cpp:3: >> >> /usr/include/clang/3.0/emmintrin.h:42:19: error: unknown type name >> '__m128d' >> static __inline__ __m128d __attribute__((__always_inline__, __nodebug__)) >> ^ >> /usr/include/clang/3.0/emmintrin.h:42:27: error: expected unqualified-id >> static __inline__ __m128d __attribute__((__always_inline__, __nodebug__)) >> ^ >> In file included from >> /usr/ports/www/firefox/work/mozilla-release/xpcom/string/src/nsUTF8UtilsSSE2.cpp:4: >> >> ../../../dist/include/nsUTF8Utils.h:90:10: error: use of undeclared >> identifier 'UTF8traits' >> if ( UTF8traits::isASCII(c) ) >> ^ >> ../../../dist/include/nsUTF8Utils.h:146:10: error: use of undeclared >> identifier 'UTF8traits' >> if ( UTF8traits::is2byte(c) ) >> ^ >> ../../../dist/include/nsUTF8Utils.h:152:15: error: use of undeclared >> identifier 'UTF8traits' >> else if ( UTF8traits::is3byte(c) ) >> ^ >> ../../../dist/include/nsUTF8Utils.h:158:15: error: use of undeclared >> identifier 'UTF8traits' >> else if ( UTF8traits::is4byte(c) ) >> ^ >> ../../../dist/include/nsUTF8Utils.h:164:15: error: use of undeclared >> identifier 'UTF8traits' >> else if ( UTF8traits::is5byte(c) ) >> ^ >> ../../../dist/include/nsUTF8Utils.h:170:15: error: use of undeclared >> identifier 'UTF8traits' >> else if ( UTF8traits::is6byte(c) ) >> ^ >> ../../../dist/include/nsUTF8Utils.h:186:10: error: use of undeclared >> identifier 'UTF8traits' >> if ( UTF8traits::isInSeq(c) ) >> ^ >> ../../../dist/include/nsUTF8Utils.h:393:18: error: use of undeclared >> identifier 'UTF8traits' >> if ( UTF8traits::isASCII(*p) ) >> ^ >> ../../../dist/include/nsUTF8Utils.h:395:23: error: use of undeclared >> identifier 'UTF8traits' >> else if ( UTF8traits::is2byte(*p) ) >> ^ >> ../../../dist/include/nsUTF8Utils.h:397:23: error: use of undeclared >> identifier 'UTF8traits' >> else if ( UTF8traits::is3byte(*p) ) >> ^ >> ../../../dist/include/nsUTF8Utils.h:399:23: error: use of undeclared >> identifier 'UTF8traits' >> else if ( UTF8traits::is4byte(*p) ) { >> ^ >> ../../../dist/include/nsUTF8Utils.h:442:23: error: use of undeclared >> identifier 'UTF8traits' >> else if ( UTF8traits::is5byte(*p) ) >> ^ >> ../../../dist/include/nsUTF8Utils.h:444:23: error: use of undeclared >> identifier 'UTF8traits' >> else if ( UTF8traits::is6byte(*p) ) >> ^ >> ../../../dist/include/nsUTF8Utils.h:686:24: error: no member named >> 'supports_sse2' in namespace 'mozilla' >> if (mozilla::supports_sse2()) >> ~~~~~~~~~^ >> fatal error: too many errors emitted, stopping now [-ferror-limit=] >> 20 errors generated. >> gmake[5]: *** [nsUTF8UtilsSSE2.o] Error 1 >> gmake[5]: Leaving directory >> `/usr/ports/www/firefox/work/mozilla-release/xpcom/string/src' >> gmake[4]: *** [libs] Error 2 >> gmake[4]: Leaving directory >> `/usr/ports/www/firefox/work/mozilla-release/xpcom/string' >> gmake[3]: *** [libs] Error 2 >> gmake[3]: Leaving directory >> `/usr/ports/www/firefox/work/mozilla-release/xpcom' >> gmake[2]: *** [libs_tier_platform] Error 2 >> gmake[2]: Leaving directory `/usr/ports/www/firefox/work/mozilla-release' >> gmake[1]: *** [tier_platform] Error 2 >> gmake[1]: Leaving directory `/usr/ports/www/firefox/work/mozilla-release' >> gmake: *** [default] Error 2 >> *** Error code 1 >> >> Stop in /usr/ports/www/firefox. >> *** Error code 1 >> >> Stop in /usr/ports/www/firefox. >> > This may be related to clang treating mmx and sse separately, in some of > the Makefiles such as at xpcom/string/src/Makefile.in there are > CXXFLAGS+=-msse2 assignments without mmx which appears to be the issue, > after adding CFLAGS+= -mmmx to the port Makefile firefox appears to be > building ok, it'll be some hours om my ancient machine before it > finishes and I'm able to test. > > Hope this is of some help, > Alan I'm pleased to confirm that adding -mmmx works, after an hour or so firefox 13 is stable and I am happy, thunderbird also builds and is stable. For completeness, the cpu features from dmesg shows: CPU: Intel(R) Xeon(TM) CPU 2.40GHz (2392.09-MHz 686-class CPU) Origin = "GenuineIntel" Id = 0xf29 Family = f Model = 2 Stepping = 9 Features=0xbfebfbff Alan