From owner-freebsd-current@FreeBSD.ORG Mon Jun 14 10:44:49 2010 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id B758A106576C; Mon, 14 Jun 2010 10:44:49 +0000 (UTC) (envelope-from alexbestms@uni-muenster.de) Received: from SECMAIL.UNI-MUENSTER.DE (SECMAIL.UNI-MUENSTER.DE [128.176.192.141]) by mx1.freebsd.org (Postfix) with ESMTP id 456908FC21; Mon, 14 Jun 2010 10:44:49 +0000 (UTC) Received: from mail-vw0-f54.google.com (mail-vw0-f54.google.com [209.85.212.54]) by SECMAIL.UNI-MUENSTER.DE (Postfix) with ESMTP id DA451BF40D; Mon, 14 Jun 2010 12:44:47 +0200 (CEST) Received: by vws20 with SMTP id 20so4834698vws.13 for ; Mon, 14 Jun 2010 03:44:46 -0700 (PDT) MIME-Version: 1.0 Received: by 10.224.59.30 with SMTP id j30mr1998306qah.143.1276512286320; Mon, 14 Jun 2010 03:44:46 -0700 (PDT) Received: by 10.229.247.142 with HTTP; Mon, 14 Jun 2010 03:44:46 -0700 (PDT) In-Reply-To: <20100614100500.GA35142@freebsd.org> References: <20100614100500.GA35142@freebsd.org> Date: Mon, 14 Jun 2010 12:44:46 +0200 Message-ID: From: Alexander Best To: Roman Divacky Content-Type: text/plain; charset=ISO-8859-1 Cc: freebsd-current@freebsd.org Subject: Re: two buildworld problems X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 14 Jun 2010 10:44:49 -0000 On Mon, Jun 14, 2010 at 12:05 PM, Roman Divacky wrote: > On Sun, Jun 13, 2010 at 10:28:23PM +0200, Alexander Best wrote: >> hi there. i'm experiencing two problems during buildworld. i'm not >> sure if these are the result of me doing weird stuff or a problem in >> the src structure: >> >> 1. i have the following in my make.conf: >> >> .if empty(.CURDIR:M/usr/src/*) && empty(.CURDIR:M/usr/obj/*) && >> exists(/usr/local/bin/gcc44) >> CC = gcc44 >> CXX = g++44 >> CPP = cpp44 >> .endif > > you may want to reverse the condition, ie. > > .if !empty(.CURDIR:M/usr/ports/*) yeah i had something like that in my make.conf beforehand. the problem was however that this would only use gcc44 when 'make' was run in the ports directory. however i want make to ALWAYS use gcc44 apart from /usr/src. I think this solution works quite well now: .if !target(buildworld) && !target(buildkernel) && exists(/usr/local/bin/gcc44) CC = /usr/local/bin/gcc44 CXX = /usr/local/bin/g++44 CPP = /usr/local/bin/cpp44 .endif so here're the results: 1. (buildworld without CC/CXX/CPP set in src.conf) => suceeds. 2. (buildworld with CC=gcc CXX=g++ CPP=cpp in src.conf) mkdep -f .depend -a -I/usr/src/lib/csu/i386-elf/../common -I/usr/src/lib/csu/i386-elf/../../libc/include /usr/src/lib/csu/i386-elf/crti.S /usr/src/lib/csu/i386-elf/crtn.S^M cc -O2 -pipe -fno-strict-aliasing -funroll-loops -I/usr/src/lib/csu/i386-elf/../common -I/usr/src/lib/csu/i386-elf/../../libc/include -g -std=gnu99 -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-ari cc -O2 -pipe -fno-strict-aliasing -funroll-loops -I/usr/src/lib/csu/i386-elf/../common -I/usr/src/lib/csu/i386-elf/../../libc/include -g -std=gnu99 -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-ari cc -O2 -pipe -fno-strict-aliasing -funroll-loops -I/usr/src/lib/csu/i386-elf/../common -I/usr/src/lib/csu/i386-elf/../../libc/include -g -std=gnu99 -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-ari cc -O2 -pipe -fno-strict-aliasing -funroll-loops -I/usr/src/lib/csu/i386-elf/../common -I/usr/src/lib/csu/i386-elf/../../libc/include -g -std=gnu99 -Wsystem-headers -Werror -Wall -Wno-format-y2k -W -Wno-unused-parameter -Wstrict-prototypes -Wmissing-prototypes -Wpointer-ari /usr/src/lib/csu/i386-elf/crt1_s.S: Assembler messages:^M /usr/src/lib/csu/i386-elf/crt1_s.S:34: Error: suffix or operands invalid for `push'^M /usr/src/lib/csu/i386-elf/crt1_s.S:37: Error: `8(%ebp)' is not a valid 64 bit base/index expression^M /usr/src/lib/csu/i386-elf/crt1_s.S:38: Error: suffix or operands invalid for `push'^M /usr/src/lib/csu/i386-elf/crt1_s.S:39: Error: `4(%ebp)' is not a valid 64 bit base/index expression^M /usr/src/lib/csu/i386-elf/crt1_s.S:40: Error: suffix or operands invalid for `push'^M *** Error code 1^M ^M Stop in /usr/src/lib/csu/i386-elf.^M *** Error code 1^M ^M Stop in /usr/src.^M *** Error code 1^M ^M Stop in /usr/src.^M *** Error code 1^M ^M Stop in /usr/src.^M *** Error code 1^M ^M Stop in /usr/src.^M ^[[1m^[[7m%^[[27m^[[1m^[[m 3. (buildworld with CC=clang CXX=clang++ CPP=clang in src.conf) clang: warning: argument unused during compilation: '-funroll-loops'^M clang -O2 -pipe -fno-strict-aliasing -funroll-loops -march=native -DTERMIOS -DANSI_SOURCE -I/usr/src/secure/lib/libcrypto/../../../crypto/openssl -I/usr/src/secure/lib/libcrypto/../../../crypto/openssl/crypto -I/usr/obj/usr/src/secure/lib/libcrypto -DOPENSSL_THREADS -DDSO_DLF clang: warning: argument unused during compilation: '-funroll-loops'^M ^[[1m/usr/src/secure/lib/libcrypto/../../../crypto/openssl/crypto/rc5/rc5_skey.c:122:11: ^[[0m^[[0;1;31merror: ^[[0m^[[1munsupported inline asm: input with type 'unsigned long' matching output with type 'unsigned int'^M ^[[0m A=S[ii]=ROTATE_l32(k,3);^M ^[[0;1;32m ^~~~~~~~~~~~~~~^M ^[[0m/usr/src/secure/lib/libcrypto/../../../crypto/openssl/crypto/rc5/rc5_skey.c:122:22: note: instantiated from:^M A=S[ii]=ROTATE_l32(k,3);^M ^[[0;1;32m ^^M ^[[0m^[[1m/usr/src/secure/lib/libcrypto/../../../crypto/openssl/crypto/rc5/rc5_skey.c:125:11: ^[[0m^[[0;1;31merror: ^[[0m^[[1munsupported inline asm: input with type 'unsigned long' matching output with type 'unsigned int'^M ^[[0m B=L[jj]=ROTATE_l32(k,m);^M ^[[0;1;32m ^~~~~~~~~~~~~~~^M ^[[0m/usr/src/secure/lib/libcrypto/../../../crypto/openssl/crypto/rc5/rc5_skey.c:125:22: note: instantiated from:^M B=L[jj]=ROTATE_l32(k,m);^M ^[[0;1;32m ^^M ^[[0m2 errors generated.^M *** Error code 1^M ^M Stop in /usr/src/secure/lib/libcrypto.^M *** Error code 1^M ^M Stop in /usr/src.^M *** Error code 1^M ^M Stop in /usr/src.^M *** Error code 1^M ^M Stop in /usr/src.^M *** Error code 1^M ^M Stop in /usr/src.^M cheers. alex > -- Alexander Best