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

Diff for /src/Makefile.cross between version 1.85 and 1.99

version 1.85, 2016/05/11 21:52:48 version 1.99, 2018/02/04 21:11:32
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} == "luna88k")  .elif   (${TARGET} == "luna88k")
 TARGET_ARCH=    m88k  TARGET_ARCH=    m88k
Line 27 
Line 28 
   
 # List of LP64 archs  # List of LP64 archs
 # XXX move to bsd.*.mk?  # XXX move to bsd.*.mk?
 LP64_ARCH = amd64 alpha mips64 sparc64  LP64_ARCH = aarch64 amd64 alpha mips64 sparc64
   
 TARGET_IS_LP64 =  TARGET_IS_LP64 =
 MACHINE_IS_LP64 =  MACHINE_IS_LP64 =
Line 61 
Line 62 
                 HOSTLDFLAGS=\"${LDFLAGS}\" \                  HOSTLDFLAGS=\"${LDFLAGS}\" \
                 CFLAGS=\"${CROSSCFLAGS}\" CPPFLAGS=\"${CROSSCPPFLAGS}\" \                  CFLAGS=\"${CROSSCFLAGS}\" CPPFLAGS=\"${CROSSCPPFLAGS}\" \
                 CXXFLAGS=\"${CROSSCXXFLAGS}\" \                  CXXFLAGS=\"${CROSSCXXFLAGS}\" \
                 LDFLAGS=\"${CROSSLDFLAGS}\"                  LDFLAGS=\"${CROSSLDFLAGS}\" \
                   CROSSDIR=\"${CROSSDIR}\"
 CROSSADDPATH=:${CROSSDIR}/usr/${TARGET_CANON}/bin  CROSSADDPATH=:${CROSSDIR}/usr/${TARGET_CANON}/bin
 CROSSPATH=      /usr/bin:/bin:/usr/sbin:/sbin${CROSSADDPATH}  CROSSPATH=      /usr/bin:/bin:/usr/sbin:/sbin${CROSSADDPATH}
 CROSSLANGS?=    c c++  CROSSLANGS?=    c c++
Line 78 
Line 80 
 .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
   BUILD_CLANG=yes
   CC=clang
   CXX=clang++
   .elif !empty(GCC3_ARCH:M${_arch})
 COMPILER_VERSION=gcc3  COMPILER_VERSION=gcc3
   CC=gcc
   CXX=g++
 .else  .else
 COMPILER_VERSION=gcc4  COMPILER_VERSION=gcc4
   CC=gcc
   CXX=g++
 .endif  .endif
   
 .if !empty(PIE_ARCH:M${_arch})  .if !empty(PIE_ARCH:M${_arch})
Line 105 
Line 116 
 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+=sqlite3  
 NO_CROSS+=bind  NO_CROSS+=bind
 NO_CROSS+=unbound  NO_CROSS+=unbound
   
Line 149 
Line 159 
   
 ${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 177 
Line 189 
   
 ${CROSSBINUTILS}:       ${CROSSINCLUDES}  ${CROSSBINUTILS}:       ${CROSSINCLUDES}
         (cd ${.CURDIR}/${BINUTILS_DIR}; \          (cd ${.CURDIR}/${BINUTILS_DIR}; \
               env CROSSDIR=${CROSSDIR} \
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
             PIE_DEFAULT=${PIE_DEFAULT} \              PIE_DEFAULT=${PIE_DEFAULT} \
             TARGET_ARCH=${TARGET_ARCH} TARGET_CPU=${TARGET_CPU} \              TARGET_ARCH=${TARGET_ARCH} TARGET_CPU=${TARGET_CPU} \
             PATH=${CROSSPATH} \              PATH=${CROSSPATH} \
             ${MAKE} -f Makefile.bsd-wrapper depend && \              ${MAKE} -f Makefile.bsd-wrapper depend && \
               env CROSSDIR=${CROSSDIR} \
               CC=${CC} CXX=${CXX} \
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
             PIE_DEFAULT=${PIE_DEFAULT} \              PIE_DEFAULT=${PIE_DEFAULT} \
             TARGET_ARCH=${TARGET_ARCH} TARGET_CPU=${TARGET_CPU} \              TARGET_ARCH=${TARGET_ARCH} TARGET_CPU=${TARGET_CPU} \
             ${MAKE} -f Makefile.bsd-wrapper all && \              ${MAKE} -f Makefile.bsd-wrapper all && \
             DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              env CROSSDIR=${CROSSDIR} DESTDIR=${CROSSDIR} \
             COMPILER_VERSION=${COMPILER_VERSION} \              COMPILER_VERSION=${COMPILER_VERSION} \
             PIE_DEFAULT=${PIE_DEFAULT} \  
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
               PIE_DEFAULT=${PIE_DEFAULT} \
             TARGET_ARCH=${TARGET_ARCH} TARGET_CPU=${TARGET_CPU} \              TARGET_ARCH=${TARGET_ARCH} TARGET_CPU=${TARGET_CPU} \
             ${MAKE} -f Makefile.bsd-wrapper install)              ${MAKE} -f Makefile.bsd-wrapper install)
         @for cmd in ${BINUTILS}; do \          @for cmd in ${BINUTILS}; do \
Line 214 
Line 229 
   
   
 ${CROSSGCC}:            ${CROSSBINUTILS}  ${CROSSGCC}:            ${CROSSBINUTILS}
 .if ${COMPILER_VERSION:L} == "gcc3"  .if ${COMPILER_VERSION:L} == "clang"
           (cd ${.CURDIR}/gnu/usr.bin/clang; \
               CC=${CC} CXX=${CXX} \
               BSDOBJDIR=${CROSSDIR}/usr/obj \
               MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
               MACHINE_ARCH=${TARGET_ARCH} \
               ${MAKE} all)
           (cd ${.CURDIR}/gnu/usr.bin/clang; \
               DESTDIR=${CROSSDIR} \
               BSDOBJDIR=${CROSSDIR}/usr/obj \
               MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
               MACHINE_ARCH=${TARGET_ARCH} \
               ${MAKE} install)
           (cd ${.CURDIR}/gnu/usr.bin/clang; \
               BSDOBJDIR=${CROSSDIR}/usr/obj \
               MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
               MACHINE_ARCH=${TARGET_ARCH} \
               ${MAKE} clean)
           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++
           @if [ -e ${CROSSDIR}/usr/bin/ld ]; then \
                   mv ${CROSSDIR}/usr/bin/ld ${CROSSDIR}/usr/bin/${TARGET_CANON}-ld ;\
                   cp -f ${CROSSDIR}/usr/bin/${TARGET_CANON}-ld \
                       ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-ld ;\
                   ln -sf ${TARGET_CANON}-ld ${CROSSDIR}/usr/${TARGET_CANON}/bin/ld ;\
           fi
           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 223 
Line 271 
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
             TARGET_ARCH=${TARGET_ARCH} TARGET_CPU=${TARGET_CPU} \              TARGET_ARCH=${TARGET_ARCH} TARGET_CPU=${TARGET_CPU} \
             CROSSDIR=${CROSSDIR} \              CROSSDIR=${CROSSDIR} \
               CC=${CC} CXX=${CXX} \
             ${MAKE} -f Makefile.bsd-wrapper all && \              ${MAKE} -f Makefile.bsd-wrapper all && \
             env CROSSDIR=${CROSSDIR} DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              env CROSSDIR=${CROSSDIR} DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
             PATH=${CROSSPATH} ${MAKE} -f Makefile.bsd-wrapper install)              PATH=${CROSSPATH} ${MAKE} -f Makefile.bsd-wrapper install)
Line 243 
Line 292 
         ln -sf ${TARGET_CANON}-cpp ${CROSSDIR}/usr/${TARGET_CANON}/bin/cpp          ln -sf ${TARGET_CANON}-cpp ${CROSSDIR}/usr/${TARGET_CANON}/bin/cpp
 .else  .else
         (cd ${.CURDIR}/gnu/usr.bin/cc; \          (cd ${.CURDIR}/gnu/usr.bin/cc; \
               env CROSSDIR=${CROSSDIR} \
             PIE_DEFAULT=${PIE_DEFAULT} \              PIE_DEFAULT=${PIE_DEFAULT} \
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
             TARGET_ARCH=${TARGET_ARCH} TARGET_CPU=${TARGET_CPU} \              TARGET_ARCH=${TARGET_ARCH} TARGET_CPU=${TARGET_CPU} \
             CROSSDIR=${CROSSDIR} \  
             MACHINE=${TARGET} \              MACHINE=${TARGET} \
             PATH=${CROSSPATH} ${MAKE} depend  )              PATH=${CROSSPATH} ${MAKE} depend  )
         (cd ${.CURDIR}/gnu/usr.bin/cc; \          (cd ${.CURDIR}/gnu/usr.bin/cc; \
               env CROSSDIR=${CROSSDIR} \
               COMPILER_VERSION=${COMPILER_VERSION} \
               CC=${CC} CXX=${CXX} \
             PIE_DEFAULT=${PIE_DEFAULT} \              PIE_DEFAULT=${PIE_DEFAULT} \
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
             TARGET_ARCH=${TARGET_ARCH} TARGET_CPU=${TARGET_CPU} \              TARGET_ARCH=${TARGET_ARCH} TARGET_CPU=${TARGET_CPU} \
             CROSSDIR=${CROSSDIR} \  
             MACHINE=${TARGET} \              MACHINE=${TARGET} \
             ${MAKE} all )              ${MAKE} all )
         (cd ${.CURDIR}/gnu/usr.bin/cc; \          (cd ${.CURDIR}/gnu/usr.bin/cc; \
             env CROSSDIR=${CROSSDIR} DESTDIR=${CROSSDIR} \              env CROSSDIR=${CROSSDIR} DESTDIR=${CROSSDIR} \
               COMPILER_VERSION=${COMPILER_VERSION} \
             PIE_DEFAULT=${PIE_DEFAULT} \              PIE_DEFAULT=${PIE_DEFAULT} \
             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 291 
Line 343 
             BSDOBJDIR=${CROSSDIR}/usr/obj; \              BSDOBJDIR=${CROSSDIR}/usr/obj; \
         export MACHINE MACHINE_ARCH MACHINE_CPU BSDOBJDIR; \          export MACHINE MACHINE_ARCH MACHINE_CPU BSDOBJDIR; \
         (cd ${.CURDIR}/lib; \          (cd ${.CURDIR}/lib; \
             for lib in csu libc; do \              for lib in csu libcompiler_rt libc; do \
             (cd $$lib; \              (cd $$lib; \
                 eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \                  eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                     ${MAKE} depend all ;\                      ${MAKE} depend all ;\
Line 353 
Line 405 
             (cd ${.CURDIR}/$$i; \              (cd ${.CURDIR}/$$i; \
                 eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \                  eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                 SKIPDIR=\"${NO_CROSS}\" \                  SKIPDIR=\"${NO_CROSS}\" \
                   ${MAKE} depend all); \
               (cd ${.CURDIR}/$$i; \
                   eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                   SKIPDIR=\"${NO_CROSS}\" \
                 DESTDIR=${CROSSDIR} \                  DESTDIR=${CROSSDIR} \
                 ${MAKE} depend all install); \                  ${MAKE} install); \
         done          done
   
 cross-etc-root-var:     ${CROSSOBJ}  cross-etc-root-var:     ${CROSSOBJ}

Legend:
Removed from v.1.85  
changed lines
  Added in v.1.99