bug-hello
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

"make dist" does not fail on linux when missing "./build-aux/git-log-fix


From: Assaf Gordon
Subject: "make dist" does not fail on linux when missing "./build-aux/git-log-fix"
Date: Thu, 13 Mar 2014 14:09:51 -0400
User-agent: Mozilla/5.0 (X11; Linux i686 on x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0

Hello (again),

(Sorry for "spamming" with these minor issues - but I'm modeling a program after 
"hello", and these things pop up - to ensure they are not problems in my files, I resort 
to verifying with GNU hello.)

The new issue:
If "./build-aux/git-log-fix" is missing, "make dist" does *not* fail on Linux 
(but does fail on FreeBSD).

I discovered that because my project did not have "git-log-fix" (and it is not a 
"gnulib" module, just a file that needs to be created).

Thanks,
 -gordon


In Makefile.am, this is the relevant part:
===
gen_start_date = 2011-12-17
.PHONY: gen-ChangeLog
gen-ChangeLog:
        $(AM_V_GEN)if test -d .git; then                                \
          $(top_srcdir)/build-aux/gitlog-to-changelog                   \
            --amend=$(srcdir)/build-aux/git-log-fix                     \
            --since=$(gen_start_date) > $(distdir)/cl-t;                \
          rm -f $(distdir)/ChangeLog;                                   \
          mv $(distdir)/cl-t $(distdir)/ChangeLog;                      \
        fi
===


To reproduce:
===
git clone git://git.savannah.gnu.org/hello.git
./bootstrap
./configure
rm build-aux/git-log-fix
make dist
===




On Linux, "make dist" ends with this error, but still succeeds:
====
make[1]: Leaving directory `/home/gordon/projects/hello/po'
make  \
          top_distdir="hello-2.9.31-fa3c-dirty" 
distdir="hello-2.9.31-fa3c-dirty" \
          dist-info dist-hook
make[1]: Entering directory `/home/gordon/projects/hello'
if test -d .git; then                           \
          ./build-aux/gitlog-to-changelog                       \
            --amend=./build-aux/git-log-fix                     \
            --since=2011-12-17 > hello-2.9.31-fa3c-dirty/cl-t;          \
          rm -f hello-2.9.31-fa3c-dirty/ChangeLog;                              
        \
          mv hello-2.9.31-fa3c-dirty/cl-t hello-2.9.31-fa3c-dirty/ChangeLog;    
                \
        fi
###########################
### Note the error below
###########################
gitlog-to-changelog: ./build-aux/git-log-fix: failed to open for reading: No 
such file or directory
make[1]: Leaving directory `/home/gordon/projects/hello'
test -n "" \
        || find "hello-2.9.31-fa3c-dirty" -type d ! -perm -755 \
                -exec chmod u+rwx,go+rx {} \; -o \
          ! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
          ! -type d ! -perm -400 -exec chmod a+r {} \; -o \
          ! -type d ! -perm -444 -exec /bin/bash 
/home/gordon/projects/hello/build-aux/install-sh -c -m a+r {} {} \; \
        || chmod -R a+r "hello-2.9.31-fa3c-dirty"
tardir=hello-2.9.31-fa3c-dirty && ${TAR-tar} chof - "$tardir" | GZIP='--no-name 
--best --rsyncable' gzip -c >hello-2.9.31-fa3c-dirty.tar.gz
if test -d "hello-2.9.31-fa3c-dirty"; then find "hello-2.9.31-fa3c-dirty" -type d ! -perm -200 -exec chmod u+w {} 
';' && rm -rf "hello-2.9.31-fa3c-dirty" || { sleep 5 && rm -rf "hello-2.9.31-fa3c-dirty"; }; else 
:; fi
====


On FreeBSD, "make dist" fails with:
====
make   top_distdir="hello-2.9.27-f95ba-dirty" 
distdir="hello-2.9.27-f95ba-dirty"  dist-info dist-hook
if test -d .git; then                            ./build-aux/gitlog-to-changelog   
                      --amend=./build-aux/git-log-fix                         
--since=2011-12-17 > hello-2.9.27-f95ba-dirty/cl-t;             rm -f 
hello-2.9.27-f95ba-dirty/ChangeLog;                                       mv 
hello-2.9.27-f95ba-dirty/cl-t hello-2.9.27-f95ba-dirty/ChangeLog;                  
  fi
gitlog-to-changelog: ./build-aux/git-log-fix: failed to open for reading: No 
such file or directory
*** Error code 2

Stop.
make[2]: stopped in /usr/home/gordon/hello
*** Error code 1

Stop.
make[1]: stopped in /usr/home/gordon/hello
*** Error code 1

Stop.
make: stopped in /usr/home/gordon/hello
====



reply via email to

[Prev in Thread] Current Thread [Next in Thread]