pkgsrc-Bugs archive

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

pkg/24345 fix



Hi, in a bored moment I wrote this, which should address the problem of
pkg/24345. It creates a new directory in ${WORKDIR}/.gcc, libexec and
links cc1/cc1plus/f771 there as appropriate, letting gcc find them in
../libexec.

Having not found any established way of contacting the appropriate
person, (aside from appending to the bug report? should I do this? I
found no clues on www.netbsd.org and this seems like a better place for
an untested patch anyway) I post it here.

Regards,

-- 
Staffan Thomén
     GPG key: 1024D/7C7E2EF8
 Fingerprint: ADB3 455F 10D5 86D1 78D6  048D 11BB D66E 7C7E 2EF8

--- gcc.mk.orig Sun Feb  8 01:42:07 2004
+++ gcc.mk      Sun Feb  8 01:43:25 2004
@@ -252,14 +252,20 @@
 
 .  if !empty(_USE_PKGSRC_GCC:M[yY][eE][sS])
 _GCCBINDIR=    ${_GCC_PREFIX}bin
+_GCCLIBEXECDIR=        ${_GCC_PREFIX}libexec
 .  elif !empty(_IS_BUILTIN_GCC:M[yY][eE][sS])
 _GCCBINDIR=    ${_CC:H}
+_GCCLIBEXECDIR=        ${_CC:H}/../libexec
 .  endif
 .  if exists(${_GCCBINDIR}/gcc) && !empty(_LANGUAGES.gcc:Mc)
 _GCC_CC=       ${_GCC_DIR}/bin/gcc
 _GCC_LINKS+=   _GCC_CC
 CC=            ${_GCC_CC}
 .  endif
+.  if exists(${_GCCLIBEXECDIR}/cc1) && !empty(_LANGUAGES.gcc:Mc)
+_GCC_CC1=      ${_GCC_DIR}/libexec/cc1
+_GCC_LINKS+=   _GCC_CC1
+.  endif
 .  if exists(${_GCCBINDIR}/cpp) && !empty(_LANGUAGES.gcc:Mc)
 _GCC_CPP=      ${_GCC_DIR}/bin/cpp
 _GCC_LINKS+=   _GCC_CPP
@@ -270,16 +276,25 @@
 _GCC_LINKS+=   _GCC_CXX
 CXX=           ${_GCC_CXX}
 .  endif
+.  if exists(${_GCCLIBEXECDIR}/cc1plus) && !empty(_LANGUAGES.gcc:Mc++)
+_GCC_CXX1=     ${_GCC_DIR}/libexec/cc1plus
+_GCC_LINKS+=   _GCC_CXX1
+.  endif
 .  if exists(${_GCCBINDIR}/g77) && !empty(_LANGUAGES.gcc:Mfortran)
 _GCC_F77=      ${_GCC_DIR}/bin/g77
 _GCC_LINKS+=   _GCC_F77
 F77=           ${_GCC_F77}
 PKG_FC:=       ${F77}
 .  endif
+.  if exists(${_GCCLIBEXECDIR}/f771) && !empty(_LANGUAGES.gcc:Mfortran)
+_GCC_F771=     ${_GCC_DIR}/libexec/f771
+_GCC_LINKS+=   _GCC_F771
+.  endif
 
 # GCC passes flags to the linker using "-Wl,".
 _COMPILER_LD_FLAG=     -Wl,
 
+#
 # Pass the required flags to imake to tell it we're using gcc on Solaris.
 .  if ${OPSYS} == "SunOS"
 IMAKEOPTS+=    -DHasGcc2=YES -DHasGcc2ForCplusplus=YES
@@ -340,8 +355,13 @@
 override-tools: ${${_target_}}        
 ${${_target_}}:
        ${_PKG_SILENT}${_PKG_DEBUG}${MKDIR} ${.TARGET:H}
+.       ifdef ${${_target_}:M*libexec*}
+       ${_PKG_SILENT}${_PKG_DEBUG}                                     \
+       ${LN} -fs ${_GCCLIBEXECDIR}/${${_target_}:T} ${.TARGET}
+.       else
        ${_PKG_SILENT}${_PKG_DEBUG}                                     \
        ${LN} -fs ${_GCCBINDIR}/${${_target_}:T} ${.TARGET}
+.       endifdef
 .      endif
 .    endfor
 .  endif # COMPILER_GCC_MK

Attachment: pgpLnNKjyOZMo.pgp
Description: PGP signature



Home | Main Index | Thread Index | Old Index