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

Diff for /src/Makefile.cross between version 1.72 and 1.92

version 1.72, 2014/07/16 01:23:39 version 1.92, 2017/01/27 13:38:40
Line 6 
Line 6 
   
 # Have to compute TARGET_ARCH directly in the Makefile, for .if tests involving  # Have to compute TARGET_ARCH directly in the Makefile, for .if tests involving
 # this variable to work.  # this variable to work.
 .if     (${TARGET} == "armish" || ${TARGET} == "armv7" || \  .if     (${TARGET} == "arm64")
          ${TARGET} == "zaurus")  TARGET_ARCH=    aarch64
   .elif   (${TARGET} == "armv7")
 TARGET_ARCH=    arm  TARGET_ARCH=    arm
 .elif   (${TARGET} == "aviion" || ${TARGET} == "luna88k")  .elif   (${TARGET} == "luna88k")
 TARGET_ARCH=    m88k  TARGET_ARCH=    m88k
 .elif   (${TARGET} == "sgi" || ${TARGET} == "octeon")  .elif   (${TARGET} == "sgi" || ${TARGET} == "octeon")
 TARGET_ARCH=    mips64  TARGET_ARCH=    mips64
 .elif   (${TARGET} == "loongson")  .elif   (${TARGET} == "loongson")
 TARGET_ARCH=    mips64el  TARGET_ARCH=    mips64el
 TARGET_CPU=     mips64  TARGET_CPU=     mips64
 .elif   (${TARGET} == "solbourne")  
 TARGET_ARCH=    sparc  
 .elif   (${TARGET} == "macppc" || ${TARGET} == "socppc")  .elif   (${TARGET} == "macppc" || ${TARGET} == "socppc")
 TARGET_ARCH=    powerpc  TARGET_ARCH=    powerpc
 .elif   (${TARGET} == "landisk")  .elif   (${TARGET} == "landisk")
Line 29 
Line 28 
   
 # List of LP64 archs  # List of LP64 archs
 # XXX move to bsd.*.mk?  # XXX move to bsd.*.mk?
 LP64_ARCH = amd64 alpha hppa64 ia64 mips64 sparc64 vax64  LP64_ARCH = aarch64 amd64 alpha mips64 sparc64
   
 TARGET_IS_LP64 =  TARGET_IS_LP64 =
 MACHINE_IS_LP64 =  MACHINE_IS_LP64 =
Line 80 
Line 79 
 .include <bsd.own.mk>  .include <bsd.own.mk>
   
 .for _arch in ${TARGET_ARCH}  .for _arch in ${TARGET_ARCH}
 .if !empty(GCC3_ARCH:M${_arch})  .if !empty(CLANG_ARCH:M${_arch})
   COMPILER_VERSION=clang
   .elif !empty(GCC3_ARCH:M${_arch})
 COMPILER_VERSION=gcc3  COMPILER_VERSION=gcc3
 .else  .else
 COMPILER_VERSION=gcc4  COMPILER_VERSION=gcc4
 .endif  .endif
   
 .if !empty(BINUTILS217_ARCH:M${_arch})  
 BINUTILS_VERSION=binutils-2.17  
 .else  
 BINUTILS_VERSION=binutils  
 .endif  
   
 .if !empty(PIE_ARCH:M${_arch})  .if !empty(PIE_ARCH:M${_arch})
 NOPIE_FLAGS=-fno-pie  NOPIE_FLAGS=-fno-pie
 NOPIE_LDFLAGS=-nopie  NOPIE_LDFLAGS=-nopie
Line 103 
Line 98 
   
 BINUTILS=       ar as gasp ld nm objcopy objdump ranlib readelf size \  BINUTILS=       ar as gasp ld nm objcopy objdump ranlib readelf size \
                 strings strip                  strings strip
 BINUTILS_DIR=gnu/usr.bin/${BINUTILS_VERSION}  BINUTILS_DIR=gnu/usr.bin/binutils-2.17
 .endfor  .endfor
   
 # no libcrypto.... these won't build  # no libcrypto.... these won't build
 #NO_CROSS+=     dc passwd ppp tcpdump telnet ftp gzsig sasyncd vnconfig  #NO_CROSS+=     dc passwd ppp tcpdump telnet ftp sasyncd vnconfig
   
 # explicit cross-compile  # explicit cross-compile
 NO_CROSS+=bind  
 NO_CROSS+=httpd  
 NO_CROSS+=microcode  NO_CROSS+=microcode
 NO_CROSS+=groff binutils binutils-2.17 perl texinfo gcc cvs  NO_CROSS+=groff binutils binutils-2.17 perl texinfo gcc cvs
 NO_CROSS+=nsd  NO_CROSS+=nsd
 NO_CROSS+=nginx  NO_CROSS+=bind
 NO_CROSS+=sqlite3  NO_CROSS+=unbound
   
 cross-dirs:     ${CROSSDIRS}  cross-dirs:     ${CROSSDIRS}
 cross-obj:      ${CROSSOBJ}  cross-obj:      ${CROSSOBJ}
Line 158 
Line 151 
   
 ${CROSSOBJ}:    ${CROSSDIRS}  ${CROSSOBJ}:    ${CROSSDIRS}
         @-mkdir -p ${CROSSDIR}/usr/obj          @-mkdir -p ${CROSSDIR}/usr/obj
           @-chgrp ${WOBJGROUP} ${CROSSDIR}/usr/obj
           @-chmod g+w ${CROSSDIR}/usr/obj
         @(cd ${.CURDIR} && \          @(cd ${.CURDIR} && \
             BSDOBJDIR=${CROSSDIR}/usr/obj \              BSDOBJDIR=${CROSSDIR}/usr/obj \
             COMPILER_VERSION=${COMPILER_VERSION} \              COMPILER_VERSION=${COMPILER_VERSION} \
Line 223 
Line 218 
   
   
 ${CROSSGCC}:            ${CROSSBINUTILS}  ${CROSSGCC}:            ${CROSSBINUTILS}
 .if ${COMPILER_VERSION:L} == "gcc3"  .if ${COMPILER_VERSION:L} == "clang"
           (cd ${.CURDIR}/gnu/usr.bin/clang; \
               MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
               MACHINE_ARCH=${TARGET_ARCH} \
               ${MAKE} obj)
           (cd ${.CURDIR}/gnu/usr.bin/clang; \
               MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
               MACHINE_ARCH=${TARGET_ARCH} \
               ${MAKE} depend)
           (cd ${.CURDIR}/gnu/usr.bin/clang; \
               MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
               MACHINE_ARCH=${TARGET_ARCH} \
               ${MAKE} all)
           (cd ${.CURDIR}/gnu/usr.bin/clang; \
               DESTDIR=${CROSSDIR} \
               MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
               MACHINE_ARCH=${TARGET_ARCH} \
               ${MAKE} install)
           mv ${CROSSDIR}/usr/bin/clang ${CROSSDIR}/usr/bin/${TARGET_CANON}-clang
           mv ${CROSSDIR}/usr/bin/clang++ ${CROSSDIR}/usr/bin/${TARGET_CANON}-clang++
           cp -f ${CROSSDIR}/usr/bin/${TARGET_CANON}-clang ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-clang
           ln -sf ${TARGET_CANON}-cc ${CROSSDIR}/usr/${TARGET_CANON}/bin/cc
           ln -sf ${TARGET_CANON}-c++ ${CROSSDIR}/usr/${TARGET_CANON}/bin/c++
           echo "#!/bin/sh\n${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-clang --sysroot ${CROSSDIR} \"$$""@\"" > ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cc; \
           chmod +x ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cc;
           echo "#!/bin/sh\n${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-clang --driver-mode=g++ --sysroot ${CROSSDIR} \"$$""@\"" > ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-c++; \
           chmod +x ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-c++;
   .elif ${COMPILER_VERSION:L} == "gcc3"
         (cd ${.CURDIR}/gnu/usr.bin/gcc; \          (cd ${.CURDIR}/gnu/usr.bin/gcc; \
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
             TARGET_ARCH=${TARGET_ARCH} TARGET_CPU=${TARGET_CPU} \              TARGET_ARCH=${TARGET_ARCH} TARGET_CPU=${TARGET_CPU} \
Line 296 
Line 318 
 # XXX MAKEOBJDIR maybe should be obj.${TARGET} here, revisit later  # XXX MAKEOBJDIR maybe should be obj.${TARGET} here, revisit later
 cross-lib:      ${CROSSGCC}  cross-lib:      ${CROSSGCC}
         MACHINE=${TARGET} \          MACHINE=${TARGET} \
             MACHINE_ARCH=${TARGET_ARCH} MACHINE_CPU=${TARGET_CPU}; \              MACHINE_ARCH=${TARGET_ARCH} MACHINE_CPU=${TARGET_CPU} \
         export MACHINE MACHINE_ARCH MACHINE_CPU; \              BSDOBJDIR=${CROSSDIR}/usr/obj; \
           export MACHINE MACHINE_ARCH MACHINE_CPU BSDOBJDIR; \
         (cd ${.CURDIR}/lib; \          (cd ${.CURDIR}/lib; \
             for lib in csu libc; do \              for lib in csu libc; do \
             (cd $$lib; \              (cd $$lib; \
Line 307 
Line 330 
                     ${MAKE} install); \                      ${MAKE} install); \
             done; \              done; \
             eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                 SKIPDIR=\"${NO_CROSS} libocurses/PSD.doc\" \                  SKIPDIR=\"${NO_CROSS}\" \
                 ${MAKE} depend all ; \                  ${MAKE} depend all ; \
             eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} DESTDIR=${CROSSDIR} \              eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} DESTDIR=${CROSSDIR} \
                 SKIPDIR=\"${NO_CROSS} libocurses/PSD.doc\" \                  SKIPDIR=\"${NO_CROSS}\" \
                 ${MAKE} install)                  ${MAKE} install)
   
 cross-bin:      ${CROSSOBJ}  cross-bin:      ${CROSSOBJ}
Line 349 
Line 372 
             (cd ${.CURDIR}/$$i; \              (cd ${.CURDIR}/$$i; \
                 eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \                  eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                 SKIPDIR=\"${NO_CROSS}\" \                  SKIPDIR=\"${NO_CROSS}\" \
                   DESTDIR=${CROSSDIR} \
                 ${MAKE} depend all install); \                  ${MAKE} depend all install); \
         done          done
   
Line 360 
Line 384 
             (cd ${.CURDIR}/$$i; \              (cd ${.CURDIR}/$$i; \
                 eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \                  eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                 SKIPDIR=\"${NO_CROSS}\" \                  SKIPDIR=\"${NO_CROSS}\" \
                   DESTDIR=${CROSSDIR} \
                 ${MAKE} depend all install); \                  ${MAKE} depend all install); \
         done          done
   

Legend:
Removed from v.1.72  
changed lines
  Added in v.1.92