[BACK]Return to Makefile CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / pkgsrc / lang / libLLVM

Annotation of pkgsrc/lang/libLLVM/Makefile, Revision 1.16

1.16    ! adam        1: # $NetBSD: Makefile,v 1.15 2016/12/20 22:40:06 tnn Exp $
1.1       tnn         2:
1.16    ! adam        3: DISTNAME=      llvm-3.9.1.src
1.8       tnn         4: PKGNAME=       ${DISTNAME:S/llvm/libLLVM/:S/.src//}
                      5: CATEGORIES=    lang devel
                      6: MASTER_SITES=  http://llvm.org/releases/${PKGVERSION_NOREV}/
                      7: EXTRACT_SUFX=  .tar.xz
                      8:
                      9: MAINTAINER=    pkgsrc-users@NetBSD.org
                     10: HOMEPAGE=      http://llvm.org/
                     11: COMMENT=       Low Level Virtual Machine shared library
                     12: LICENSE=       modified-bsd
                     13:
                     14: USE_LANGUAGES=         c c++
                     15: USE_CMAKE=             yes
                     16: GCC_REQD+=             4.8
1.1       tnn        17: PYTHON_FOR_BUILD_ONLY= yes
                     18:
1.8       tnn        19: CONFIGURE_DIRS=         ${WRKDIR}/build
                     20: CMAKE_ARG_PATH=                ${WRKSRC}
1.6       tnn        21:
1.8       tnn        22: CMAKE_ARGS+=   -DCMAKE_BUILD_TYPE=Release
                     23: CMAKE_ARGS+=   -DCMAKE_C_COMPILER=gcc
                     24: CMAKE_ARGS+=   -DCMAKE_CXX_COMPILER=g++
1.10      tnn        25: CMAKE_ARGS+=   -DLLVM_BUILD_LLVM_DYLIB=ON
1.13      ryoon      26: CMAKE_ARGS+=   -DLLVM_INCLUDE_TESTS=OFF
1.8       tnn        27:
                     28: .for tool in   bugpoint bugpoint_passes dsymutil llc lli llvm_ar       \
                     29:        llvm_as llvm_bcanalyzer llvm_c_test llvm_cov llvm_cxxdump       \
                     30:        llvm_diff llvm_dis llvm_dwarfdump llvm_dwp llvm_extract llvm_go \
                     31:        llvm_jitlistener llvm_link llvm_lto llvm_mc llvm_mcmarkup       \
                     32:        llvm_nm llvm_objdump llvm_pdbdump llvm_profdata llvm_readobj    \
                     33:        llvm_rtdyld llvm_size llvm_split llvm_stress llvm_symbolizer    \
1.13      ryoon      34:        lto obj2yaml opt sancov verify_uselistorder yaml2obj sanstats
1.8       tnn        35: CMAKE_ARGS+=   -DLLVM_TOOL_${tool:tu}_BUILD=OFF
                     36: .endfor
1.1       tnn        37:
                     38: SUBST_CLASSES+=                fix-cnf
                     39: SUBST_STAGE.fix-cnf=   pre-configure
                     40: SUBST_MESSAGE.fix-cnf= Fixing llvm-config paths
                     41: SUBST_FILES.fix-cnf=   tools/llvm-config/llvm-config.cpp
1.10      tnn        42: SUBST_VARS.fix-cnf=    PREFIX LLVM_MAJOR_MINOR COMPILER_RPATH_FLAG
1.1       tnn        43:
1.8       tnn        44: CHECK_PORTABILITY_SKIP=        utils/buildit/build_llvm
                     45:
                     46: # XXX perl is not added as a tool as it does not seem to be required
                     47: REPLACE_PERL+=         utils/GenLibDeps.pl
                     48: REPLACE_PERL+=         utils/UpdateCMakeLists.pl
                     49: REPLACE_PERL+=         utils/codegen-diff
                     50: REPLACE_PERL+=         utils/findsym.pl
                     51: REPLACE_PERL+=         utils/llvm-native-gxx
                     52: REPLACE_PERL+=         utils/test_debuginfo.pl
                     53:
                     54: REPLACE_PYTHON+=       examples/Kaleidoscope/MCJIT/cached/genk-timing.py
                     55: REPLACE_PYTHON+=       examples/Kaleidoscope/MCJIT/cached/split-lib.py
                     56: REPLACE_PYTHON+=       examples/Kaleidoscope/MCJIT/complete/genk-timing.py
                     57: REPLACE_PYTHON+=       examples/Kaleidoscope/MCJIT/complete/split-lib.py
                     58: REPLACE_PYTHON+=       examples/Kaleidoscope/MCJIT/lazy/genk-timing.py
                     59: REPLACE_PYTHON+=       test/BugPoint/compile-custom.ll.py
                     60: REPLACE_PYTHON+=       test/tools/llvm-readobj/Inputs/relocs.py
                     61: REPLACE_PYTHON+=       utils/Misc/zkill
                     62: REPLACE_PYTHON+=       utils/Target/ARM/analyze-match-table.py
                     63: REPLACE_PYTHON+=       utils/bisect
                     64: REPLACE_PYTHON+=       utils/clang-parse-diagnostics-file
                     65: REPLACE_PYTHON+=       utils/create_ladder_graph.py
                     66: REPLACE_PYTHON+=       utils/git/find-rev
                     67: REPLACE_PYTHON+=       utils/lint/common_lint.py
                     68: REPLACE_PYTHON+=       utils/lint/cpp_lint.py
                     69: REPLACE_PYTHON+=       utils/lint/generic_lint.py
                     70: REPLACE_PYTHON+=       utils/lit/lit.py
                     71: REPLACE_PYTHON+=       utils/lit/lit/ProgressBar.py
                     72: REPLACE_PYTHON+=       utils/lit/lit/main.py
                     73: REPLACE_PYTHON+=       utils/lit/tests/Inputs/googletest-format/DummySubDir/OneTest
                     74: REPLACE_PYTHON+=       utils/llvm-build/llvm-build
                     75: REPLACE_PYTHON+=       utils/llvm-compilers-check
                     76: REPLACE_PYTHON+=       utils/llvm-lit/llvm-lit.in
                     77: REPLACE_PYTHON+=       utils/release/findRegressions-nightly.py
                     78: REPLACE_PYTHON+=       utils/release/findRegressions-simple.py
                     79: REPLACE_PYTHON+=       utils/schedcover.py
                     80: REPLACE_PYTHON+=       utils/shuffle_fuzz.py
                     81: REPLACE_PYTHON+=       utils/sort_includes.py
                     82: REPLACE_PYTHON+=       utils/testgen/mc-bundling-x86-gen.py
                     83: REPLACE_PYTHON+=       utils/update_llc_test_checks.py
                     84: REPLACE_PYTHON+=       utils/wciia.py
1.1       tnn        85:
1.8       tnn        86: TEST_TARGET=           check
                     87: TEST_ENV+=             LD_LIBRARY_PATH=${WRKDIR}/build/lib
1.1       tnn        88:
1.7       jperkin    89: .include "../../mk/bsd.prefs.mk"
                     90:
1.16    ! adam       91: .if ${OPSYS} == "Darwin"
        !            92: CMAKE_ARGS+=   -DCMAKE_LIBTOOL=/usr/bin/libtool
        !            93: .endif
        !            94:
1.8       tnn        95: # 3.8.0 -> 3.8
1.10      tnn        96: LLVM_MAJOR_MINOR=      ${PKGVERSION_NOREV:C/^([0-9]+\.[0-9]+)\..*$/\1/}
                     97: PLIST_SUBST+=          LLVM_MAJOR_MINOR=${LLVM_MAJOR_MINOR}
1.8       tnn        98:
                     99: PLIST_VARS+=   notdylib
                    100: .if ${_OPSYS_SHLIB_TYPE} == "dylib"
                    101: SOEXT=         dylib
                    102: LLVM_LIBNAME=  libLLVM.${SOEXT}
                    103: .else
                    104: SOEXT=         so
1.10      tnn       105: LLVM_LIBNAME=  libLLVM-${LLVM_MAJOR_MINOR}.${SOEXT}
1.8       tnn       106: PLIST.notdylib=        yes
                    107: .endif
                    108: PLIST_SUBST+=  SOEXT=${SOEXT}
                    109: PLIST_SUBST+=  LLVM_LIBNAME=${LLVM_LIBNAME}
                    110:
                    111: .include "options.mk"
                    112:
1.14      joerg     113: # At least LLVM 3.9.0 and subprojects don't correctly add C++11 flags
                    114: # automatically.
                    115: CXXFLAGS+=     -std=c++11
                    116:
1.15      tnn       117: # needs std::atomic with 64-bit CAS
                    118: .if ${MACHINE_ARCH} == "i386"
                    119: CXXFLAGS+=     -march=i586
                    120: .endif
                    121:
1.8       tnn       122: # replacing config.guess is required even for cmake.
                    123: # It is used to detect correct LLVM_HOST_TRIPLE, e.g. for NetBSD/evbarm.
                    124: post-extract:
                    125:        ${RUN} mkdir -p ${WRKDIR}/build
                    126: .for f in config.guess config.sub
1.13      ryoon     127:        cp ../../mk/gnu-config/${f} ${WRKSRC}/cmake/${f}
1.8       tnn       128: .endfor
                    129:
                    130: post-install:
                    131:        ${INSTALL_LIB_DIR} ${DESTDIR}${PREFIX}/lib/libLLVM
                    132:        ${INSTALL_LIB} ${WRKDIR}/build/lib/${LLVM_LIBNAME}      \
                    133:                ${DESTDIR}${PREFIX}/lib/libLLVM/${LLVM_LIBNAME}
1.7       jperkin   134: .if ${OPSYS} == "Darwin"
1.8       tnn       135:        install_name_tool -id   \
                    136:                ${PREFIX}/lib/libLLVM/${LLVM_LIBNAME}   \
                    137:                ${DESTDIR}${PREFIX}/lib/libLLVM/${LLVM_LIBNAME}
                    138: .else
                    139:        ${LN} -s ${LLVM_LIBNAME}        \
                    140:                ${DESTDIR}${PREFIX}/lib/libLLVM/libLLVM.${SOEXT}
                    141:        ${LN} -s ${LLVM_LIBNAME}        \
1.9       tnn       142:                ${DESTDIR}${PREFIX}/lib/libLLVM/libLLVM-${PKGVERSION_NOREV}.${SOEXT}
1.7       jperkin   143: .endif
                    144:
1.8       tnn       145: .include "../../devel/zlib/buildlink3.mk"
                    146: .include "../../lang/python/tool.mk"
                    147: .include "../../mk/bsd.pkg.mk"

CVSweb <webmaster@jp.NetBSD.org>