emacs-devel
[Top][All Lists]
Advanced

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

Makefile issues on Solaris


From: Dhruva Krishnamurthy
Subject: Makefile issues on Solaris
Date: Tue, 28 Jun 2005 14:42:53 +0530
User-agent: Gnus/5.11 (Gnus v5.11) Emacs/22.0.50 (usg-unix-v)

Hello,
 I am building GNU Emacs (CVS Head), the output of emacs-version is:
 GNU Emacs 22.0.50.2 (sparc-sun-solaris2.8, X toolkit) of 2005-06-28

 The problem I am facing is in the generated Makefile in lib-src under the
 following conditions.

 - I run configure from a different folder (build folder).
   Ex: 
     The pristine Emacs sources are in: ~/cvs/emacs/
     The build folder is: ~/cvs/build/sunos
 - I do a 'make bootstrap' the first time (and make subsequently)
 - I do a 'make install' and get the following error.

---- START OF ERROR MESSAGE ------ 
Installing utilities run internally by Emacs.
/home/dhu2kor/stub/build/emacs/emacs/mkinstalldirs 
/share/emacs/beta/sunos/libexec/emacs/22.0.50/sparc-sun-solaris2.8
if [ `(cd /share/emacs/beta/sunos/libexec/emacs/22.0.50/sparc-sun-solaris2.8 && 
/bin/pwd)` != `/bin/pwd` ]; then \
  for file in profile digest-doc sorted-doc movemail cvtmail fakemail  yow hexl 
update-game-score; do \
    /home/dhu2kor/stub/build/emacs/emacs/install-sh -c  $file 
/share/emacs/beta/sunos/libexec/emacs/22.0.50/sparc-sun-solaris2.8/$file ; \
  done ; \
       fi
/home/dhu2kor/stub/build/emacs/emacs/mkinstalldirs 
/share/emacs/beta/var/games/emacs
touch /share/emacs/beta/var/games/emacs/snake-scores
touch /share/emacs/beta/var/games/emacs/tetris-scores
if chown games 
/share/emacs/beta/sunos/libexec/emacs/22.0.50/sparc-sun-solaris2.8/update-game-score
 && chmod u+s 
/share/emacs/beta/sunos/libexec/emacs/22.0.50/sparc-sun-solaris2.8/update-game-score;
 then \
  chown games /share/emacs/beta/var/games/emacs; \
  chmod u=rwx,g=rwx,o=rx /share/emacs/beta/var/games/emacs; \
fi
chown: unknown user id games
if [ `(cd /share/emacs/beta/sunos/libexec/emacs/22.0.50/sparc-sun-solaris2.8 && 
/bin/pwd)` \
            != `(cd /home/dhu2kor/stub/build/emacs/emacs/lib-src && /bin/pwd)` 
]; then \
  for file in /home/dhu2kor/stub/build/emacs/emacs/lib-src/rcs2log vcdiff; do \
    /home/dhu2kor/stub/build/emacs/emacs/install-sh -c 
/home/dhu2kor/stub/build/emacs/emacs/lib-src/$file 
/share/emacs/beta/sunos/libexec/emacs/22.0.50/sparc-sun-solaris2.8/$file; \
  done ; \
fi
install:  
/home/dhu2kor/stub/build/emacs/emacs/lib-src//home/dhu2kor/stub/build/emacs/emacs/lib-src/rcs2log
 does not exist
*** Error code 1
make: Fatal error: Command failed for target 
`/share/emacs/beta/sunos/libexec/emacs/22.0.50/sparc-sun-solaris2.8'
---- END OF ERROR MESSAGE ------ 

The error is due to the complete path to which the complete path of the script
to be installed is getting appended. I made a manual fix to the Makefile which
fixed the problem for me. Maybe this is the desired behavior, I am not too
sure.

The diff -u output:

--- lib-src/Makefile    2005-06-28 14:18:51.530028000 +0530
+++ ../Makefile 2005-06-28 14:15:42.700003000 +0530
@@ -189,6 +189,7 @@
               if [ `(cd ${archlibdir} && /bin/pwd)` \
                    != `(cd ${srcdir} && /bin/pwd)` ]; then \
          for file in ${SCRIPTS}; do \
+           file=`basename $$file`; \
            $(INSTALL_PROGRAM) ${srcdir}/$$file ${archlibdir}/$$file; \
          done ; \
        fi
@@ -196,16 +197,19 @@
        @echo
        @echo "Installing utilities for users to run."
        for file in ${INSTALLABLES} ; do \
+         file=`basename $$file`; \
          $(INSTALL_PROGRAM) $(INSTALL_STRIP) $${file} ${bindir}/`echo $${file} 
| sed '$(TRANSFORM)'` ; \
          chmod a+rx ${bindir}/`echo $${file} | sed '$(TRANSFORM)'`; \
        done
        for file in ${INSTALLABLE_SCRIPTS} ; do \
+         file=`basename $$file`; \
          $(INSTALL_PROGRAM) ${srcdir}/$${file} ${bindir}/`echo $${file} | sed 
'$(TRANSFORM)'`  ; \
          chmod a+rx ${bindir}/`echo $${file} | sed '$(TRANSFORM)'`; \
        done
 uninstall:
        (cd ${bindir}; \
        for file in ${INSTALLABLES} ${INSTALLABLE_SCRIPTS}; do \
+         file=`basename $$file`; \
          rm -f ${bindir}/`echo $${file} | sed '$(TRANSFORM)'` ; \
        done)
        (cd ${archlibdir}; \

with best regards,
dhruva

-- 
Name : Dhruva Krishnamurthy (dk)
Phone: +91-(0)80-22999190
Proud FSF member: #1935




reply via email to

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