[BACK]Return to Makefile.cross CVS log [TXT][DIR] Up to [local] / src

Diff for /src/Makefile.cross between version 1.3 and 1.18

version 1.3, 2005/01/12 00:06:28 version 1.18, 2006/06/06 00:01:49
Line 3 
Line 3 
 cross-tools:    cross-includes cross-binutils cross-gcc cross-lib  cross-tools:    cross-includes cross-binutils cross-gcc cross-lib
 cross-distrib:  cross-tools cross-bin cross-etc-root-var  cross-distrib:  cross-tools cross-bin cross-etc-root-var
   
   # Have to compute TARGET_ARCH directly in the Makefile, for .if tests involving
   # this variable to work.
   .if     (${TARGET} == "armish" | ${TARGET} == "cats" || ${TARGET} == "zaurus")
   TARGET_ARCH=    arm
   .elif   (${TARGET} == "hp300" || ${TARGET} == "mac68k" || \
            ${TARGET} == "mvme68k")
   TARGET_ARCH=    m68k
   .elif   (${TARGET} == "aviion" || ${TARGET} == "luna88k" || \
            ${TARGET} == "mvme88k")
   TARGET_ARCH=    m88k
   .elif   (${TARGET} == "sgi")
   TARGET_ARCH=    mips64
   .elif   (${TARGET} == "macppc" || ${TARGET} == "mvmeppc")
   TARGET_ARCH=    powerpc
   .else
   TARGET_ARCH=    ${TARGET}
   .endif
   
 CROSSCPPFLAGS?= -nostdinc -I${CROSSDIR}/usr/include  CROSSCPPFLAGS?= -nostdinc -I${CROSSDIR}/usr/include
 CROSSLDFLAGS?=  -nostdlib -L${CROSSDIR}/usr/lib -static  CROSSLDFLAGS?=  -nostdlib -L${CROSSDIR}/usr/lib -static
 CROSSCFLAGS?=   ${CROSSCPPFLAGS}  CROSSCFLAGS?=   ${CROSSCPPFLAGS}
Line 13 
Line 31 
 CROSSENV=       AR=${CROSSDIR}/usr/bin/ar AS=${CROSSDIR}/usr/bin/as \  CROSSENV=       AR=${CROSSDIR}/usr/bin/ar AS=${CROSSDIR}/usr/bin/as \
                 CC=${CROSSDIR}/usr/bin/cc CPP=${CROSSDIR}/usr/bin/cpp \                  CC=${CROSSDIR}/usr/bin/cc CPP=${CROSSDIR}/usr/bin/cpp \
                 CXX=${CROSSDIR}/usr/bin/c++ \                  CXX=${CROSSDIR}/usr/bin/c++ \
                 LD=${CROSSDIR}/usr/bin/ld NM=${CROSSDIR}/usr/bin/nm \                  LD=${CROSSDIR}/usr/bin/ld \
                 LORDER=/usr/bin/lorder RANLIB=${CROSSDIR}/usr/bin/ranlib \                  LORDER=/usr/bin/lorder RANLIB=${CROSSDIR}/usr/bin/ranlib \
                 SIZE=${CROSSDIR}/usr/bin/size STRIP=${CROSSDIR}/usr/bin/strip \                  STRIP=${CROSSDIR}/usr/bin/strip \
                 HOSTCC=\"${CC}\" HOSTCXX=\"${CXX}\" NOMAN= DESTDIR=${CROSSDIR} \                  HOSTCC=\"${CC}\" HOSTCXX=\"${CXX}\" NOMAN= DESTDIR=${CROSSDIR} \
                 HOSTCFLAGS=\"${CFLAGS}\" HOSTCXXFLAGS=\"${CXXFLAGS}\" \                  HOSTCFLAGS=\"${CFLAGS}\" HOSTCXXFLAGS=\"${CXXFLAGS}\" \
                 HOSTLDFLAGS=\"${LDFLAGS} \" \                  HOSTLDFLAGS=\"${LDFLAGS}\" \
                 CFLAGS=\"${CROSSCFLAGS}\" CPPFLAGS=\"${CROSSCPPFLAGS}\" \                  CFLAGS=\"${CROSSCFLAGS}\" CPPFLAGS=\"${CROSSCPPFLAGS}\" \
                 CXXFLAGS=\"${CROSSCXXFLAGS}\" \                  CXXFLAGS=\"${CROSSCXXFLAGS}\" \
                 LDFLAGS=\"${CROSSLDFLAGS}\"                  LDFLAGS=\"${CROSSLDFLAGS}\"
Line 26 
Line 44 
 CROSSLANGS?=    c c++  CROSSLANGS?=    c c++
   
 TARGET_CANON=`cat ${CROSSDIR}/TARGET_CANON`  TARGET_CANON=`cat ${CROSSDIR}/TARGET_CANON`
 TARGET_ARCH=`cat ${CROSSDIR}/TARGET_ARCH`  
   
 CROSSDIRS=      ${CROSSDIR}/.dirs_done  CROSSDIRS=      ${CROSSDIR}/.dirs_done
 CROSSOBJ=       ${CROSSDIR}/usr/obj/.obj_done  CROSSOBJ=       ${CROSSDIR}/usr/obj/.obj_done
Line 34 
Line 51 
 CROSSBINUTILS=  ${CROSSDIR}/usr/bin/.binutils_done  CROSSBINUTILS=  ${CROSSDIR}/usr/bin/.binutils_done
 CROSSGCC=       ${CROSSDIR}/usr/bin/.gcc_done  CROSSGCC=       ${CROSSDIR}/usr/bin/.gcc_done
 NO_CROSS=       isakmpd tn3270 less sudo openssl libkeynote libssl \  NO_CROSS=       isakmpd tn3270 less sudo openssl libkeynote libssl \
                 photurisd keynote sectok ssh                  keynote sectok ssh
   
 # no libcrypto.... these won't build  # no libcrypto.... these won't build
 NO_CROSS+=      telnetd login_krb5 login_krb5-or-pwd dc passwd telnet ppp \  NO_CROSS+=      dc login_krb5 login_krb5-or-pwd passwd ppp tcpdump telnet
                 tcpdump  
 # need host setup for ydr  # need host setup for ydr
 NO_CROSS+=afs  NO_CROSS+=afs
 # explicit cross-compile  # explicit cross-compile
Line 56 
Line 72 
   
 ${CROSSDIRS}:  ${CROSSDIRS}:
         @-mkdir -p ${CROSSDIR}          @-mkdir -p ${CROSSDIR}
         @case ${TARGET} in \          @echo ${TARGET_ARCH} > ${CROSSDIR}/TARGET_ARCH
                 alpha|amd64|hppa|hppa64|i386|m68k|m88k|powerpc|sparc|sparc64|vax) \  
                         echo ${TARGET} ;;\  
                 amiga|hp300|mac68k|mvme68k) \  
                         echo m68k ;;\  
                 luna88k|mvme88k) \  
                         echo m88k ;;\  
                 macppc|mvmeppc) \  
                         echo powerpc ;;\  
                 sgi) \  
                         echo mips64 ;;\  
                 *) \  
                         (echo Unknown arch ${TARGET} >&2) ; exit 1;; \  
         esac > ${CROSSDIR}/TARGET_ARCH  
         @echo TARGET_ARCH is `cat ${CROSSDIR}/TARGET_ARCH`          @echo TARGET_ARCH is `cat ${CROSSDIR}/TARGET_ARCH`
         @eval `grep '^osr=' sys/conf/newvers.sh`; \          @eval `grep '^osr=' sys/conf/newvers.sh`; \
            sed "s/\$$/-unknown-openbsd$$osr/" ${CROSSDIR}/TARGET_ARCH > \             sed "s/\$$/-unknown-openbsd$$osr/" ${CROSSDIR}/TARGET_ARCH > \
Line 99 
Line 102 
         @(cd ${.CURDIR}/include && \          @(cd ${.CURDIR}/include && \
             MACHINE=${TARGET} MACHINE_ARCH=${TARGET_ARCH} \              MACHINE=${TARGET} MACHINE_ARCH=${TARGET_ARCH} \
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
               TARGET_ARCH=${TARGET_ARCH} \
             ${MAKE} prereq && \              ${MAKE} prereq && \
             MACHINE=${TARGET} MACHINE_ARCH=${TARGET_ARCH} \              MACHINE=${TARGET} MACHINE_ARCH=${TARGET_ARCH} \
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
               TARGET_ARCH=${TARGET_ARCH} \
             ${MAKE} DESTDIR=${CROSSDIR} includes)              ${MAKE} DESTDIR=${CROSSDIR} includes)
         @touch ${CROSSINCLUDES}          @touch ${CROSSINCLUDES}
   
 .if ${MACHINE_ARCH} == "m68k" || ${MACHINE_ARCH} == "m88k" || \  .if (${TARGET_ARCH} == "m68k" || ${TARGET_ARCH} == "m88k" || \
     ${MACHINE_ARCH} == "vax"       ${TARGET_ARCH} == "vax")
 BINUTILS=       ar as ld nm ranlib objcopy objdump strings strip  BINUTILS=       ar as ld nm ranlib objcopy objdump strings strip
 NEW_BINUTILS?=  No  NEW_BINUTILS?=  No
 .else  .else
Line 116 
Line 121 
 .endif  .endif
   
 ${CROSSBINUTILS}:       ${CROSSINCLUDES}  ${CROSSBINUTILS}:       ${CROSSINCLUDES}
 .if ${NEW_BINUTILS:L} == "yes"  
         (cd ${.CURDIR}/gnu/usr.bin/binutils; \          (cd ${.CURDIR}/gnu/usr.bin/binutils; \
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
               USING_NEW_BINUTILS=${NEW_BINUTILS} \
             TARGET_ARCH=${TARGET_ARCH} \              TARGET_ARCH=${TARGET_ARCH} \
             ${MAKE} -f Makefile.bsd-wrapper depend && \              ${MAKE} -f Makefile.bsd-wrapper depend && \
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
               USING_NEW_BINUTILS=${NEW_BINUTILS} \
             TARGET_ARCH=${TARGET_ARCH} \              TARGET_ARCH=${TARGET_ARCH} \
             ${MAKE} -f Makefile.bsd-wrapper all && \              ${MAKE} -f Makefile.bsd-wrapper all && \
             DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
               USING_NEW_BINUTILS=${NEW_BINUTILS} \
             ${MAKE} -f Makefile.bsd-wrapper install)              ${MAKE} -f Makefile.bsd-wrapper install)
 .else  .if ${NEW_BINUTILS:L} != "yes"
         (cd ${.CURDIR}/gnu/usr.bin/gas; \          (cd ${.CURDIR}/gnu/usr.bin/gas; \
             TARGET_MACHINE_ARCH=${TARGET_ARCH} \              TARGET_MACHINE_ARCH=${TARGET_ARCH} \
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} ${MAKE} depend all; \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} ${MAKE} depend all; \
Line 134 
Line 141 
             DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
             ${MAKE} NOMAN= install)              ${MAKE} NOMAN= install)
         ln -sf ${CROSSDIR}/usr/bin/as \          ln -sf ${CROSSDIR}/usr/bin/as \
             ${CROSSDIR}/usr/${TARGET_ARCH}/bin/as              ${CROSSDIR}/usr/${TARGET_CANON}/bin/as
         (cd ${.CURDIR}/gnu/usr.bin/ld; \          (cd ${.CURDIR}/gnu/usr.bin/ld; \
             TARGET_MACHINE_ARCH=${TARGET_ARCH} \              TARGET_MACHINE_ARCH=${TARGET_ARCH} \
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
Line 145 
Line 152 
         ln -sf ${CROSSDIR}/usr/bin/ld \          ln -sf ${CROSSDIR}/usr/bin/ld \
             ${CROSSDIR}/usr/${TARGET_CANON}/bin/ld              ${CROSSDIR}/usr/${TARGET_CANON}/bin/ld
         (cd ${.CURDIR}/usr.bin/ar; \          (cd ${.CURDIR}/usr.bin/ar; \
               ELF_TOOLCHAIN=no \
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} ${MAKE} NOMAN= depend all; \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} ${MAKE} NOMAN= depend all; \
               ELF_TOOLCHAIN=no \
             DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
             ${MAKE} NOMAN= install)              ${MAKE} NOMAN= install)
         ln -sf ${CROSSDIR}/usr/bin/ar \          ln -sf ${CROSSDIR}/usr/bin/ar \
             ${CROSSDIR}/usr/${TARGET_CANON}/bin/ar              ${CROSSDIR}/usr/${TARGET_CANON}/bin/ar
         (cd ${.CURDIR}/usr.bin/ranlib; \          (cd ${.CURDIR}/usr.bin/ranlib; \
               ELF_TOOLCHAIN=no \
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} ${MAKE} NOMAN= depend all; \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} ${MAKE} NOMAN= depend all; \
               ELF_TOOLCHAIN=no \
             DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
             ${MAKE} NOMAN= install)              ${MAKE} NOMAN= install)
         ln -sf ${CROSSDIR}/usr/bin/ranlib \          ln -sf ${CROSSDIR}/usr/bin/ranlib \
Line 183 
Line 194 
         @touch ${CROSSBINUTILS}          @touch ${CROSSBINUTILS}
   
 # bsd.own.mk can't do it for us  # bsd.own.mk can't do it for us
 .if ${TARGET} == "amd64" || ${TARGET} == "cats" || \  .if ${TARGET_ARCH} == "alpha" || \
     ${TARGET} == "hppa" || ${TARGET} == "hppa64" || \      ${TARGET_ARCH} == "m68k" || ${TARGET_ARCH} == "m88k" || \
     ${TARGET} == "i386" || \      ${TARGET_ARCH} == "sparc" || ${TARGET_ARCH} == "vax"
     ${TARGET} == "sparc64" || ${TARGET} == "sgi"  
 TARGET_USE_GCC3=Yes  
 .else  
 TARGET_USE_GCC3=No  TARGET_USE_GCC3=No
   .else
   TARGET_USE_GCC3=Yes
 .endif  .endif
   
 ${CROSSGCC}:            ${CROSSBINUTILS}  ${CROSSGCC}:            ${CROSSBINUTILS}
Line 230 
Line 240 
             ${CROSSDIR}/usr/libexec/cpp              ${CROSSDIR}/usr/libexec/cpp
         sed -e 's#/usr/libexec/cpp#${CROSSDIR}/usr/libexec/cpp#' \          sed -e 's#/usr/libexec/cpp#${CROSSDIR}/usr/libexec/cpp#' \
             -e 's#/usr/include#${CROSSDIR}/usr/include#' \              -e 's#/usr/include#${CROSSDIR}/usr/include#' \
               -e 's/@dollaropt@/-$$/' \
             ${.CURDIR}/usr.bin/cpp/cpp.sh > ${CROSSDIR}/usr/bin/cpp              ${.CURDIR}/usr.bin/cpp/cpp.sh > ${CROSSDIR}/usr/bin/cpp
         chmod ${BINMODE} ${CROSSDIR}/usr/bin/cpp          chmod ${BINMODE} ${CROSSDIR}/usr/bin/cpp
         chown ${BINOWN}:${BINGRP} ${CROSSDIR}/usr/bin/cpp          chown ${BINOWN}:${BINGRP} ${CROSSDIR}/usr/bin/cpp
Line 244 
Line 255 
             for lib in csu libc; do \              for lib in csu libc; do \
             (cd $$lib; \              (cd $$lib; \
                 eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \                  eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                     ${MAKE} depend all install); \                      ${MAKE} WANTLINT=no depend all install); \
             done; \              done; \
             eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                 SKIPDIR=\"${NO_CROSS} libocurses/PSD.doc\" \                  SKIPDIR=\"${NO_CROSS} libocurses/PSD.doc\" \
                 ${MAKE} depend all install)                  ${MAKE} WANTLINT=no depend all install)
   
 cross-bin:      ${CROSSOBJ}  cross-bin:      ${CROSSOBJ}
         MACHINE=${TARGET} MACHINE_ARCH=${TARGET_ARCH}; \          MACHINE=${TARGET} MACHINE_ARCH=${TARGET_ARCH}; \
Line 262 
Line 273 
   
 cross-etc-root-var:     ${CROSSOBJ}  cross-etc-root-var:     ${CROSSOBJ}
         (cd ${.CURDIR}/etc && \          (cd ${.CURDIR}/etc && \
               MACHINE=${TARGET} MACHINE_ARCH=${TARGET_ARCH} \
             DESTDIR=${CROSSDIR} ${MAKE} distribution-etc-root-var)              DESTDIR=${CROSSDIR} ${MAKE} distribution-etc-root-var)
   
 cross-depend:  cross-depend:
Line 284 
Line 296 
             BSDSRCDIR=${.CURDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              BSDSRCDIR=${.CURDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
             SKIPDIR="${NO_CROSS}" \              SKIPDIR="${NO_CROSS}" \
             ${MAKE} cleandir)              ${MAKE} cleandir)
   

Legend:
Removed from v.1.3  
changed lines
  Added in v.1.18