Re: 1.7.3.4 build regression

2 messages, 2 authors, 2016-06-15 · open the first message on its own page

Re: 1.7.3.4 build regression

From: Jeremy Huddleston <hidden>
Date: 2016-06-15 22:50:16

On Dec 16, 2010, at 19:41, Jonathan Nieder wrote:
Hi Jeremy,

Jeremy Huddleston wrote:
quoted
1.7.3.4 seems to have a regression (over 1.7.3.2 ... didn't try 1.7.3.3)
building.  I do:

make
(strip the built executables)
make install

During 'make install', the executables get remade even though they
shouldn't be.
Just a wild guess: do you pass CC on the "make" and not the "make
install" command line?
Yes.  Good guess.  Why would that be affecting it?

Some updates:

It occurs with 1.7.3.3 as well.

"make" line is:
/Developer/usr/bin/make -C /tmp/Git-16.roots/Git-16~obj/i386/ -j`sysctl -n hw.activecpu` prefix=/usr NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease RUNTIME_PREFIX=YesPlease GITGUI_VERSION=0.12.0 V=1 CFLAGS='-ggdb3 -Os -pipe -Wall -Wformat-security -D_FORTIFY_SOURCE=2' 'CC=cc -arch i386' 'uname_M=i386' 'uname_P=i386' && touch /tmp/Git-16.roots/Git-16~obj/i386/build.timestamp

"make install" line is:
/Developer/usr/bin/make -C /tmp/Git-16.roots/Git-16~obj/i386 -j`sysctl -n hw.activecpu` prefix=/usr NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease RUNTIME_PREFIX=YesPlease GITGUI_VERSION=0.12.0 V=1 CFLAGS='-ggdb3 -Os -pipe -Wall -Wformat-security -D_FORTIFY_SOURCE=2' \          'DESTDIR=/tmp/Git-16.roots/Git-16~dst' \
          install

Re: 1.7.3.4 build regression

From: Jonathan Nieder <hidden>
Date: 2016-06-15 22:50:16

Jeremy Huddleston wrote:
On Dec 16, 2010, at 19:41, Jonathan Nieder wrote:
quoted
Jeremy Huddleston wrote:
quoted
quoted
make
(strip the built executables)
make install

During 'make install', the executables get remade even though they
shouldn't be.
Just a wild guess: do you pass CC on the "make" and not the "make
install" command line?
Yes.  Good guess.  Why would that be affecting it?
See v1.7.3.3~28^2 (Makefile: add CC to TRACK_CFLAGS, 2010-09-12),
found with "git log --no-merges v1.7.3.2..v1.7.3.4 -- Makefile".
That is, now CC is tracked like $prefix and $CFLAGS are.

The idea of that change was presumably that if you switch CC from,
say, "gcc -m32" to "gcc -m64", then the build result will not be
correct unless you remake things.  I have mixed feelings about it,
since from time to time I might want to switch between gcc-4.4 and
gcc-4.5 without rebuilding everything.
"make" line is:
/Developer/usr/bin/make -C /tmp/Git-16.roots/Git-16~obj/i386/ \
-j`sysctl -n hw.activecpu` \
prefix=/usr NO_FINK=YesPlease NO_DARWIN_PORTS=YesPlease \
RUNTIME_PREFIX=YesPlease \
GITGUI_VERSION=0.12.0 V=1 \
CFLAGS='-ggdb3 -Os -pipe -Wall -Wformat-security -D_FORTIFY_SOURCE=2' \
'CC=cc -arch i386' 'uname_M=i386' 'uname_P=i386'
Interesting.  It might be convenient to save these variables in
/tmp/Git-16.roots/Git-16~obj/i386/config.mak.

Thanks for reporting.  Some thinking to do.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help