Date: Tue, 18 Dec 2007 15:51:00 +0100 (CET) From: "Julian H. Stacey" <jhs@berklix.org> To: FreeBSD-gnats-submit@FreeBSD.org Cc: jhs@berklix.com Subject: conf/118823: Remove -pipe from sys.mk it cripples small machines Message-ID: <200712181451.lBIEp015095991@fire.js.berklix.net> Resent-Message-ID: <200712181500.lBIF0BWM021838@freefall.freebsd.org>
next in thread | raw e-mail | index | archive | help
>Number: 118823 >Category: conf >Synopsis: Remove -pipe from sys.mk it cripples small machines >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: change-request >Submitter-Id: current-users >Arrival-Date: Tue Dec 18 15:00:11 UTC 2007 >Closed-Date: >Last-Modified: >Originator: Julian H. Stacey <jhs@berklix.com> >Release: FreeBSD 6.2-RELEASE amd64 & 7.0BETA4-i386 >Organization: http://berklix.com >Environment: System: FreeBSD fire.js.berklix.net 6.2-RELEASE FreeBSD 6.2-RELEASE #0: Mon Sep 17 23:01:21 CEST 2007 jhs@fire.js.berklix.net:/usr1/src/sys/amd64/compile/FIRE64.small amd64 FreeBSD 6.2-RELEASE amd64 & 7.0BETA4-i386 >Description: Remove -pipe from /usr/share/mk/sys.mk it cripples small machines >How-To-Repeat: Any older machine with not much RAM or swap cd /usr/src/gnu/usr.bin/cc/cc_int ; make Watch it eat swap on eg cc -O2 -fno-strict-aliasing -Dzonk=bla -DIN_GCC -DHAVE_CONFIG_H -DPREFIX=\"/usr\" -I/usr/obj/usr/src/gnu/usr.bin/cc/cc_int/../cc_tools -I/usr/src/gnu/usr.bin/cc/cc_int/../cc_tools -I/usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcc -I/usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcc/config -I/usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcclibs/include -I/usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcclibs/libcpp/include -I/usr/src/gnu/usr.bin/cc/cc_int/../../../../contrib/gcclibs/libdecnumber -c ../cc_tools/insn-attrtab.c OK im not sure thats the right proof, but thats how I found this bug. >Fix: Patch appended. To: stable@@freebsd.org Fcc: sent In-reply-to: <200712181108.lBIB8rAL090380@@fire.js.berklix.net> References: <200712181108.lBIB8rAL090380@@fire.js.berklix.net> Comments: In-reply-to "Julian Stacey" <jhs@@berklix.org> message dated "Tue, 18 Dec 2007 12:08:53 +0100." > Has 7.0-BETA4 perhaps wrongly got a -pipe in the .mk macros ? > Please someone with generic 7.0BETA4 check with eg: > A single line /etc/make.conf > CFLAGS += -Dzonk=bla > ~/tmp/Makefile > tst: > @echo "XX ${CFLAGS} YY" > make tst > XX -O2 -fno-strict-aliasing -pipe -Dzonk=bla YY > Is pipe coming from generic mk/ ? > Or from my local hacked version ? > Could someone test please: > My /usr/src is no longer generic, on a very slow CPU, SLIP > linked, building rest of src/ & I'm about to go away, & > will miss the 7-RELEASE date, but -pipe should not be in > generic, needs to be a host dependent choice. ) Error found. I will send-pr. Patch below stored in : http://berklix.com/~jhs/src/bsd/fixes/FreeBSD/src/gen/share/mk/sys.mk.REL=ALL.diff pipe should not be on by default as - It cripples machines with limited memory. - Pipe can be enabled by any memory rich host in /etc/make.conf with: CFLAGS += -pipe - Man cc lists how to turn it on but not off. - Man cc also notes assembler problems *** -current/src/share/mk/sys.mk.orig Tue Dec 18 15:11:26 2007 --- -current/src/share/mk/sys.mk Tue Dec 18 15:12:23 2007 *************** *** 36,44 **** .else CC ?= cc .if ${MACHINE_ARCH} == "arm" ! CFLAGS ?= -O -fno-strict-aliasing -pipe .else ! CFLAGS ?= -O2 -fno-strict-aliasing -pipe .endif .if defined(NO_STRICT_ALIASING) CFLAGS += -fno-strict-aliasing --- 36,44 ---- .else CC ?= cc .if ${MACHINE_ARCH} == "arm" ! CFLAGS ?= -O -fno-strict-aliasing .else ! CFLAGS ?= -O2 -fno-strict-aliasing .endif .if defined(NO_STRICT_ALIASING) CFLAGS += -fno-strict-aliasing *** 6.2-RELEASE/src/share/mk/sys.mk.orig Tue Sep 18 09:32:40 2007 --- 6.2-RELEASE/src/share/mk/sys.mk Tue Dec 18 15:21:09 2007 *************** *** 35,41 **** CFLAGS ?= -O .else CC ?= cc ! CFLAGS ?= -O2 -fno-strict-aliasing -pipe .endif CXX ?= c++ --- 35,41 ---- CFLAGS ?= -O .else CC ?= cc ! CFLAGS ?= -O2 -fno-strict-aliasing .endif CXX ?= c++ -- Julian Stacey. Munich Computer Consultant, BSD Unix C Linux. http://berklix.com Ihr Rauch = mein allergischer Kopfschmerz. Dump cigs 4 snuff. >Release-Note: >Audit-Trail: >Unformatted:
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200712181451.lBIEp015095991>