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

Diff for /src/Makefile.cross between version 1.25 and 1.26

version 1.25, 2008/05/13 21:15:58 version 1.26, 2008/09/06 16:26:39
Line 1 
Line 1 
 # $OpenBSD$  # $OpenBSD$
   
 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-share cross-sys cross-etc-root-var
   # cross-gnu \
   
 # 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.
Line 26 
Line 27 
 TARGET_ARCH=    ${TARGET}  TARGET_ARCH=    ${TARGET}
 .endif  .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} -O2 ${PIPE} ${DEBUG}
 CROSSCXXFLAGS?= ${CROSSCPPFLAGS}  CROSSCXXFLAGS?= ${CROSSCPPFLAGS}
 LDSTATIC?=      -static  #LDSTATIC?=     -static
   
   # XXX
   BINMODE?=555
   BINOWN?=root
   BINOWN?=bin
   
 CROSSDIR=       ${DESTDIR}/usr/cross/${TARGET}  CROSSDIR=       ${DESTDIR}/usr/cross/${TARGET}
 CROSSENV=       AR=${CROSSDIR}/usr/bin/ar AS=${CROSSDIR}/usr/bin/as \  CROSSENV=       AR=${CROSSDIR}/usr/${TARGET_CANON}/bin/ar \
                 CC=${CROSSDIR}/usr/bin/cc CPP=${CROSSDIR}/usr/bin/cpp \                  AS=${CROSSDIR}/usr/${TARGET_CANON}/bin/as \
                 CXX=${CROSSDIR}/usr/bin/c++ \                  CC=${CROSSDIR}/usr/${TARGET_CANON}/bin/cc \
                 LD=${CROSSDIR}/usr/bin/ld \                  CPP=${CROSSDIR}/usr/${TARGET_CANON}/bin/cpp \
                 LORDER=/usr/bin/lorder RANLIB=${CROSSDIR}/usr/bin/ranlib \                  CXX=${CROSSDIR}/usr/${TARGET_CANON}/bin/c++ \
                 STRIP=${CROSSDIR}/usr/bin/strip \                  LD=${CROSSDIR}/usr/${TARGET_CANON}/bin/ld \
                 HOSTCC=\"${CC}\" HOSTCXX=\"${CXX}\" NOMAN= DESTDIR=${CROSSDIR} \                  OBJCOPY=${CROSSDIR}/usr/${TARGET_CANON}/bin/objcopy \
                   LORDER=/usr/bin/lorder RANLIB=${CROSSDIR}/usr/${TARGET_CANON}/bin/ranlib \
                   STRIP=${CROSSDIR}/usr/${TARGET_CANON}/bin/strip \
                   HOSTCC=\"${CC}\" HOSTCXX=\"${CXX}\" NOMAN= \
                 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}\"
 CROSSPATH=      ${PATH}:${CROSSDIR}/usr/bin  CROSSADDPATH=:${CROSSDIR}/usr/${TARGET_CANON}/bin
   CROSSPATH=      /usr/bin:/bin:/usr/sbin:/sbin${CROSSADDPATH}
 CROSSLANGS?=    c c++  CROSSLANGS?=    c c++
   
 TARGET_CANON=`cat ${CROSSDIR}/TARGET_CANON`  TARGET_CANON=`cat ${CROSSDIR}/TARGET_CANON`
   
 CROSSDIRS=      ${CROSSDIR}/.dirs_done  CROSSDIRS=      ${CROSSDIR}/.dirs_done
 CROSSOBJ=       ${CROSSDIR}/usr/obj/.obj_done  CROSSOBJ=       ${CROSSDIR}/.obj_done
 CROSSINCLUDES=  ${CROSSDIR}/usr/include/.includes_done  CROSSINCLUDES=  ${CROSSDIR}/.includes_done
 CROSSBINUTILS=  ${CROSSDIR}/usr/bin/.binutils_done  CROSSBINUTILS=  ${CROSSDIR}/.binutils_done
 CROSSGCC=       ${CROSSDIR}/usr/bin/.gcc_done  CROSSGCC=       ${CROSSDIR}/.gcc_done
 NO_CROSS=       isakmpd tn3270 less sudo openssl libkeynote libssl \  #NO_CROSS=      isakmpd tn3270 keynote sectok ssh
                 keynote sectok ssh  
   
 # no libcrypto.... these won't build  # no libcrypto.... these won't build
 NO_CROSS+=      dc login_krb5 login_krb5-or-pwd passwd ppp tcpdump telnet  #NO_CROSS+=     dc login_krb5 login_krb5-or-pwd passwd ppp tcpdump telnet \
   #               ftp gzsig sasyncd vnconfig
   
 # need host setup for ydr  # need host setup for ydr
 NO_CROSS+=afs  NO_CROSS+=afs
 # explicit cross-compile  # explicit cross-compile
 NO_CROSS+=bind  NO_CROSS+=bind
   NO_CROSS+=httpd
   NO_CROSS+=microcode
   NO_CROSS+=groff lynx binutils perl texinfo gcc cvs
   
 cross-dirs:     ${CROSSDIRS}  cross-dirs:     ${CROSSDIRS}
 cross-obj:      ${CROSSOBJ}  cross-obj:      ${CROSSOBJ}
Line 131 
Line 145 
         (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} \              USING_NEW_BINUTILS=${NEW_BINUTILS} \
             TARGET_ARCH=${TARGET_ARCH} \              TARGET_ARCH=${TARGET_ARCH} PATH=${CROSSPATH} \
             ${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} \              USING_NEW_BINUTILS=${NEW_BINUTILS} \
Line 185 
Line 199 
             ${CROSSDIR}/usr/${TARGET_CANON}/bin/strip              ${CROSSDIR}/usr/${TARGET_CANON}/bin/strip
 .endif  .endif
         @for cmd in ${BINUTILS}; do \          @for cmd in ${BINUTILS}; do \
          if [ ! -e ${CROSSDIR}/usr/bin/$$cmd -a \           if [ -e ${CROSSDIR}/usr/bin/${TARGET_CANON}-$$cmd ] ; then \
          -e ${CROSSDIR}/usr/bin/${TARGET_CANON}-$$cmd ]; then \              cp -f ${CROSSDIR}/usr/bin/${TARGET_CANON}-$$cmd \
             ln -sf ${TARGET_CANON}-$$cmd ${CROSSDIR}/usr/bin/$$cmd ;\                  ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-$$cmd ; \
          elif [ -e ${CROSSDIR}/usr/bin/$$cmd -a \              ln -sf ${TARGET_CANON}-$$cmd \
          ! -e ${CROSSDIR}/usr/bin/${TARGET_CANON}-$$cmd ]; then \                  ${CROSSDIR}/usr/${TARGET_CANON}/bin/$$cmd ;\
             ln -sf $$cmd ${CROSSDIR}/usr/bin/${TARGET_CANON}-$$cmd; \             if [ -e ${CROSSDIR}/usr/bin/$$cmd ] ; then \
               rm -f ${CROSSDIR}/usr/bin/$$cmd ;\
              fi ;\
            elif [ -e ${CROSSDIR}/usr/bin/$$cmd ] ; then \
               cp -f ${CROSSDIR}/usr/bin/$$cmd \
                   ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-$$cmd ; \
               ln -sf ${TARGET_CANON}-$$cmd \
                   ${CROSSDIR}/usr/${TARGET_CANON}/bin/$$cmd ;\
               mv ${CROSSDIR}/usr/bin/$$cmd \
                   ${CROSSDIR}/usr/bin/${TARGET_CANON}-$$cmd ;\
          fi ;\           fi ;\
          if [ -e ${CROSSDIR}/usr/bin/$$cmd -a \  
          ! -e ${CROSSDIR}/usr/${TARGET_CANON}/bin/$$cmd ]; then \  
             ln -sf ${CROSSDIR}/usr/bin/$$cmd \  
                 ${CROSSDIR}/usr/${TARGET_CANON}/bin/$$cmd; \  
          fi ;\  
         done          done
         @touch ${CROSSBINUTILS}          @touch ${CROSSBINUTILS}
   
Line 213 
Line 231 
         (cd ${.CURDIR}/gnu/usr.bin/gcc; \          (cd ${.CURDIR}/gnu/usr.bin/gcc; \
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
             TARGET_ARCH=${TARGET_ARCH} CROSSDIR=${CROSSDIR} \              TARGET_ARCH=${TARGET_ARCH} CROSSDIR=${CROSSDIR} \
             ${MAKE} -f Makefile.bsd-wrapper depend && \              PATH=${CROSSPATH} ${MAKE} -f Makefile.bsd-wrapper depend && \
             MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
             TARGET_ARCH=${TARGET_ARCH} CROSSDIR=${CROSSDIR} \              TARGET_ARCH=${TARGET_ARCH} CROSSDIR=${CROSSDIR} \
             ${MAKE} -f Makefile.bsd-wrapper all && \              ${MAKE} -f Makefile.bsd-wrapper all && \
             DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              env CROSSDIR=${CROSSDIR} DESTDIR=${CROSSDIR} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
             ${MAKE} -f Makefile.bsd-wrapper install)              PATH=${CROSSPATH} ${MAKE} -f Makefile.bsd-wrapper install)
         ln -sf ${TARGET_CANON}-g++ ${CROSSDIR}/usr/bin/c++          cp -f ${CROSSDIR}/usr/bin/${TARGET_CANON}-g++ ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-c++
         ln -sf ${CROSSDIR}/usr/libexec/cpp \          cp -f ${CROSSDIR}/usr/bin/gcc ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cc
             ${CROSSDIR}/usr/bin/cpp          cp -f ${CROSSDIR}/usr/libexec/cpp ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-libexeccpp
           rm -f ${CROSSDIR}/usr/bin/gcc  ${CROSSDIR}/usr/bin/cc ${CROSSDIR}/usr/libexec/cpp
           ln -sf ${TARGET_CANON}-cc ${CROSSDIR}/usr/${TARGET_CANON}/bin/cc
           ln -sf ${TARGET_CANON}-c++ ${CROSSDIR}/usr/${TARGET_CANON}/bin/c++
           rm -f ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cpp
           sed -e 's#/usr/libexec/cpp#${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-libexeccpp#' \
               -e 's#/usr/include#${CROSSDIR}/usr/include#' \
               -e 's/@dollaropt@//' \
               ${.CURDIR}/usr.bin/cpp/cpp.sh > ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cpp
           chmod ${BINMODE} ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cpp
           chown ${BINOWN}:${BINGRP} ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cpp
           ln -sf ${TARGET_CANON}-cpp ${CROSSDIR}/usr/${TARGET_CANON}/bin/cpp
 .else  .else
         (cd ${CROSSDIR}/usr/obj/gnu/egcs/gcc; \          (cd ${CROSSDIR}/usr/obj/gnu/egcs/gcc; \
             /bin/sh ${.CURDIR}/gnu/egcs/gcc/configure \              /bin/sh ${.CURDIR}/gnu/egcs/gcc/configure \
Line 239 
Line 268 
             CFLAGS="${CFLAGS} -I${.CURDIR}/gnu/lib/libiberty/include" \              CFLAGS="${CFLAGS} -I${.CURDIR}/gnu/lib/libiberty/include" \
             LIBIBERTY_INCLUDES=${.CURDIR}/gnu/lib/libiberty/include \              LIBIBERTY_INCLUDES=${.CURDIR}/gnu/lib/libiberty/include \
             build_infodir=. INSTALL_MAN= INSTALL_HEADERS_DIR= install)              build_infodir=. INSTALL_MAN= INSTALL_HEADERS_DIR= install)
         ln -sf ${TARGET_CANON}-gcc ${CROSSDIR}/usr/bin/cc          mv -f ${CROSSDIR}/usr/bin/cpp ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-libexeccpp
         ln -sf ${TARGET_CANON}-g++ ${CROSSDIR}/usr/bin/c++          rm -f ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cpp
         ${INSTALL} -c -o ${BINOWN} -g ${BINGRP} -m ${BINMODE} \          sed -e 's#/usr/libexec/cpp#${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-libexeccpp#' \
             ${CROSSDIR}/usr/obj/gnu/egcs/gcc/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@/-$$/' \              -e 's/@dollaropt@/-$$/' ${.CURDIR}/usr.bin/cpp/cpp.sh > \
             ${.CURDIR}/usr.bin/cpp/cpp.sh > ${CROSSDIR}/usr/bin/cpp              ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cpp
         chmod ${BINMODE} ${CROSSDIR}/usr/bin/cpp          chmod ${BINMODE} \
         chown ${BINOWN}:${BINGRP} ${CROSSDIR}/usr/bin/cpp              ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cpp
           chown ${BINOWN}:${BINGRP}\
               ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cpp
           ln -sf ${TARGET_CANON}-cpp ${CROSSDIR}/usr/${TARGET_CANON}/bin/cpp
           ln -sf gcc ${CROSSDIR}/usr/${TARGET_CANON}/bin/cc
           ln -sf gcc ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-cc
           cp -f ${CROSSDIR}/usr/bin/${TARGET_CANON}-g++ ${CROSSDIR}/usr/${TARGET_CANON}/bin/${TARGET_CANON}-c++
           ln -sf ${TARGET_CANON}-c++ ${CROSSDIR}/usr/${TARGET_CANON}/bin/c++
 .endif  .endif
         @touch ${CROSSGCC}          @touch ${CROSSGCC}
   
Line 261 
Line 294 
             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} WANTLINT=no depend all install); \                      ${MAKE} WANTLINT=no depend all ;\
                   eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} DESTDIR=${CROSSDIR} \
                       ${MAKE} WANTLINT=no 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} WANTLINT=no depend all install)                  ${MAKE} WANTLINT=no depend all ; \
               eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} DESTDIR=${CROSSDIR} \
                   SKIPDIR=\"${NO_CROSS} libocurses/PSD.doc\" \
                   ${MAKE} WANTLINT=no install)
   
 cross-bin:      ${CROSSOBJ}  cross-bin:      ${CROSSOBJ}
         MACHINE=${TARGET} MACHINE_ARCH=${TARGET_ARCH}; \          MACHINE=${TARGET} MACHINE_ARCH=${TARGET_ARCH}; \
Line 274 
Line 312 
         (cd ${.CURDIR}/$$i; \          (cd ${.CURDIR}/$$i; \
             eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \              eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                 SKIPDIR=\"${BINUTILS} ${NO_CROSS}\" \                  SKIPDIR=\"${BINUTILS} ${NO_CROSS}\" \
                 ${MAKE} depend all install); \                  ${MAKE} depend all ; \
               eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} DESTDIR=${CROSSDIR} \
                   SKIPDIR=\"${BINUTILS} ${NO_CROSS}\" \
                   ${MAKE} install); \
           done
   
   cross-gnu:      ${CROSSOBJ}
           MACHINE=${TARGET} MACHINE_ARCH=${TARGET_ARCH}; \
           export MACHINE MACHINE_ARCH; \
           for i in gnu/lib gnu/usr.sbin gnu/usr.bin ; do \
           (cd ${.CURDIR}/$$i; \
               eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                   SKIPDIR=\"${NO_CROSS}\" \
                   ${MAKE} depend all ; \
               eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} DESTDIR=${CROSSDIR} \
                   SKIPDIR=\"${NO_CROSS}\" \
                   ${MAKE} install); \
           done
   
   cross-share:   ${CROSSOBJ}
           MACHINE=${TARGET} MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH`; \
           export MACHINE MACHINE_ARCH; \
           for i in share; do \
               (cd ${.CURDIR}/$$i; \
                   eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                   SKIPDIR=\"${NO_CROSS}\" \
                   ${MAKE} depend all install); \
           done
   
   cross-sys:   ${CROSSOBJ}
           MACHINE=${TARGET} MACHINE_ARCH=`cat ${CROSSDIR}/TARGET_ARCH`; \
           export MACHINE MACHINE_ARCH; \
           for i in sys; do \
               (cd ${.CURDIR}/$$i; \
                   eval ${CROSSENV} MAKEOBJDIR=obj.${MACHINE}.${TARGET} \
                   SKIPDIR=\"${NO_CROSS}\" \
                   ${MAKE} depend all install); \
         done          done
   
 cross-etc-root-var:     ${CROSSOBJ}  cross-etc-root-var:     ${CROSSOBJ}

Legend:
Removed from v.1.25  
changed lines
  Added in v.1.26