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

Annotation of pkgsrc/emulators/qemu/Makefile, Revision 1.264

1.264   ! wiz         1: # $NetBSD: Makefile,v 1.263 2021/02/20 22:59:29 ryoon Exp $
1.1       xtraeme     2:
1.263     ryoon       3: DISTNAME=      qemu-5.2.0
1.112     adam        4: CATEGORIES=    emulators
1.190     ryoon       5: MASTER_SITES=  https://download.qemu.org/
1.168     adam        6: EXTRACT_SUFX=  .tar.xz
1.112     adam        7:
                      8: MAINTAINER=    pkgsrc-users@NetBSD.org
1.164     ryoon       9: HOMEPAGE=      http://www.qemu-project.org/
1.112     adam       10: COMMENT=       CPU emulator using dynamic translation
                     11: LICENSE=       gnu-gpl-v2 AND gnu-lgpl-v2.1 AND mit AND modified-bsd
1.1       xtraeme    12:
1.264   ! wiz        13: BUILD_DEPENDS+=        ninja-build-[0-9]*:../../devel/ninja-build
        !            14:
1.165     adam       15: USE_CURSES=            resize_term wide
                     16: USE_LANGUAGES+=                c c++
1.205     leot       17: USE_TOOLS+=            bison flex gmake makeinfo perl:build pod2man pkg-config
1.162     kamil      18: FAKE_NCURSES=          yes
1.79      wiz        19: UNLIMIT_RESOURCES=     datasize
1.1       xtraeme    20: HAS_CONFIGURE=         yes
                     21:
1.216     adam       22: GMAKE_REQD=            4.1 # needed for docs
1.218     adam       23:
                     24: PYTHON_VERSIONED_DEPENDENCIES= sphinx:tool
1.41      adrianp    25:
1.205     leot       26: SUBST_CLASSES+=                        sphinx-build
                     27: SUBST_STAGE.sphinx-build=      pre-configure
                     28: SUBST_MESSAGE.sphinx-build=    Fix hardcoded sphinx-build
1.238     rillig     29: SUBST_FILES.sphinx-build+=     configure
1.263     ryoon      30: SUBST_FILES.sphinx-build+=     docs/meson.build
1.205     leot       31: SUBST_FILES.sphinx-build+=     roms/skiboot/doc/Makefile
                     32: SUBST_FILES.sphinx-build+=     roms/u-boot/Documentation/Makefile
1.218     adam       33: SUBST_SED.sphinx-build+=       -e 's/sphinx-build/sphinx-build-${PYVERSSUFFIX}/g'
1.205     leot       34:
1.78      wiz        35: .include "options.mk"
                     36:
1.36      xtraeme    37: .include "../../mk/bsd.prefs.mk"
                     38:
1.253     thorpej    39: DISTFILES=             ${DEFAULT_DISTFILES}
                     40: DISTFILES+=            palcode-clipper
1.264   ! wiz        41: SITES.palcode-clipper= http://ftp.NetBSD.org/pub/NetBSD/arch/alpha/qemu/
1.253     thorpej    42:
1.77      adam       43: CONFIGURE_ARGS+=       --prefix=${PREFIX}
                     44: CONFIGURE_ARGS+=       --interp-prefix=${PREFIX}/share/qemu
                     45: CONFIGURE_ARGS+=       --sysconfdir=${PKG_SYSCONFDIR}
1.91      ryoon      46: CONFIGURE_ARGS+=       --python=${PYTHONBIN}
1.102     shattere   47: CONFIGURE_ARGS+=       --smbd=${PREFIX}/sbin/smbd
1.87      sbd        48: CONFIGURE_ARGS+=       --mandir=${PREFIX}/${PKGMANDIR}
1.114     jnemeth    49: CONFIGURE_ARGS+=       --enable-curses
1.205     leot       50: CONFIGURE_ARGS+=       --enable-docs
1.165     adam       51: CONFIGURE_ARGS+=       --enable-jemalloc
1.113     adam       52: CONFIGURE_ENV+=                mansuffix=/${PKGMANDIR}
1.75      jmmv       53:
1.159     wiz        54: .if defined(PKGSRC_USE_SSP)
                     55: # do not add flags to everything
                     56: PKGSRC_USE_SSP=                no
                     57: CONFIGURE_ARGS+=       --enable-stack-protector
                     58: .endif
                     59:
1.153     maya       60: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-aarch64
                     61: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-alpha
                     62: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-arm
                     63: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-cris
1.198     gson       64: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-hppa
1.153     maya       65: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-i386
                     66: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-m68k
                     67: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-microblaze
                     68: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-microblazeel
                     69: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-mips
                     70: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-mips64
                     71: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-mips64el
                     72: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-mipsel
                     73: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-moxie
1.198     gson       74: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-nios2
1.168     adam       75: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-or1k
1.153     maya       76: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-ppc
                     77: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-ppc64
1.198     gson       78: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-riscv32
                     79: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-riscv64
1.153     maya       80: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-s390x
                     81: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-sh4
                     82: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-sh4eb
                     83: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-sparc
                     84: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-sparc64
                     85: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-tricore
1.150     pgoyette   86: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-x86_64
1.153     maya       87: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-xtensa
                     88: NOT_PAX_MPROTECT_SAFE+=        bin/qemu-system-xtensaeb
1.150     pgoyette   89:
1.75      jmmv       90: PKG_SYSCONFSUBDIR=     qemu
1.1       xtraeme    91:
1.49      joerg      92: INSTALLATION_DIRS=     ${PKGMANDIR}/man1 share/doc/qemu
                     93:
1.208     kamil      94: UE_ARCHS+=             aarch64 aarch64_be
                     95: UE_ARCHS+=             alpha arm armeb cris
                     96: UE_ARCHS+=             hppa
                     97: UE_ARCHS+=             i386
                     98: UE_ARCHS+=             m68k microblaze microblazeel
                     99: UE_ARCHS+=             mips mips64 mips64el mipsel mipsn32 mipsn32el
                    100: UE_ARCHS+=             nios2
                    101: UE_ARCHS+=             or1k ppc ppc64 ppc64le ppc64abi32
                    102: UE_ARCHS+=             riscv32 riscv64
                    103: UE_ARCHS+=             s390x sh4 sh4eb sparc sparc32plus sparc64
                    104: UE_ARCHS+=             tilegx
                    105: UE_ARCHS+=             x86_64 xtensa xtensaeb
1.65      sbd       106:
1.76      tsutsui   107: .if ${OPSYS} == "NetBSD"
1.246     nia       108: PLIST.nbd=                     yes
                    109: .  if !exists(/usr/include/machine/trap.h)
                    110: CONFIGURE_ARGS+=               --disable-bsd-user
                    111: .  else
1.220     rillig    112: USER_EMUL=                     i386 x86_64 sparc sparc64
1.246     nia       113: .  endif
1.187     adam      114: .elif !empty(OPSYS:M*BSD) || ${OPSYS} == "DragonFly"
1.220     rillig    115: USER_EMUL=                     i386 x86_64 sparc sparc64
                    116: PLIST.nbd=                     yes
1.187     adam      117: .elif ${OPSYS} == "Darwin"
1.77      adam      118: USER_EMUL=
1.220     rillig    119: CONFIGURE_ARGS+=               --disable-bsd-user
                    120: PLIST.nbd=                     yes
1.187     adam      121: .elif ${OPSYS} == "Linux"
1.220     rillig    122: USER_EMUL=                     ${UE_ARCHS}
                    123: PLIST.bridge-helper=           yes
                    124: PLIST.nbd=                     yes
                    125: PLIST.ivshmem=                 yes
                    126: PLIST.pr-helper=               yes
1.116     jperkin   127: .elif !empty(MACHINE_PLATFORM:MSunOS-5.11-*)
1.221     jperkin   128: PLIST.ivshmem=                 yes
1.220     rillig    129: PLIST.nbd=                     yes
                    130: CONFIGURE_ARGS+=               --disable-coroutine-pool
1.65      sbd       131: .endif
                    132:
1.226     gutterid  133: PLIST_VARS+=           ${UE_ARCHS} bridge-helper ivshmem keymap nbd pr-helper
1.188     adam      134: .for pvar in ${USER_EMUL}
1.209     wiz       135: PLIST.${pvar}=         yes
1.65      sbd       136: .endfor
                    137:
1.219     adam      138: # different versions of Sphinx generate different static files
                    139: PLIST_SRC=     PLIST ${WRKDIR}/PLIST.STATIC
                    140:
1.172     kamil     141: TEST_TARGET=           check
                    142:
1.253     thorpej   143: post-extract:
                    144:        cp ${WRKDIR}/palcode-clipper ${WRKSRC}/pc-bios/palcode-clipper
1.262     reinoud   145:        cp ${FILESDIR}/hw-mips-mipssim_virtio.c ${WRKSRC}/hw/mips/mipssim_virtio.c
1.253     thorpej   146:
1.263     ryoon     147: do-build:
                    148:        cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} \
                    149:                ninja -j ${_MAKE_JOBS_N:U1} -C build
                    150:
                    151: do-install:
                    152:        cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} ${INSTALL_ENV} \
                    153:                ninja -j ${_MAKE_JOBS_N:U1} -C build install
                    154:
1.221     jperkin   155: # Some dependencies aren't correct and this tries to be re-made on install,
                    156: # failing due to configure bugs.
                    157: post-build:
                    158:        ${TOUCH} ${WRKSRC}/config-host.mak
                    159:
1.18      hubertf   160: post-install:
1.49      joerg     161:        ${INSTALL_DATA} ${FILESDIR}/Makefile.multinode-NetBSD \
                    162:                ${DESTDIR}${PREFIX}/share/doc/qemu/
1.216     adam      163:        ${RM} -f ${DESTDIR}${PREFIX}/share/doc/qemu/interop/.buildinfo
1.219     adam      164:        ${RM} -f ${DESTDIR}${PREFIX}/share/doc/qemu/specs/.buildinfo
                    165:        ${RM} -f ${WRKDIR}/PLIST.STATIC
                    166:        cd ${DESTDIR}${PREFIX} && \
                    167:        ${FIND} share/doc/qemu -path '*/_static/*' -type f -print > ${WRKDIR}/PLIST.STATIC
1.41      adrianp   168:
1.260     roy       169: # On Darwin, qemu uses CoreAudio
1.187     adam      170: .if ${OPSYS} != "Darwin"
1.77      adam      171: .include "../../mk/oss.buildlink3.mk"
                    172: .endif
1.165     adam      173: .include "../../archivers/lzo/buildlink3.mk"
1.81      ryoon     174: .include "../../devel/glib2/buildlink3.mk"
1.165     adam      175: .include "../../devel/jemalloc/buildlink3.mk"
1.263     ryoon     176: .include "../../devel/ncursesw/buildlink3.mk"
1.165     adam      177: .include "../../devel/snappy/buildlink3.mk"
1.68      tnn       178: .include "../../devel/zlib/buildlink3.mk"
1.205     leot      179: .include "../../graphics/hicolor-icon-theme/buildlink3.mk"
1.165     adam      180: .include "../../graphics/png/buildlink3.mk"
1.81      ryoon     181: .include "../../lang/python/extension.mk"
1.218     adam      182: .include "../../lang/python/versioned_dependencies.mk"
1.147     ryoon     183: .include "../../security/libgcrypt/buildlink3.mk"
1.165     adam      184: .include "../../www/curl/buildlink3.mk"
1.106     wiz       185: .include "../../x11/pixman/buildlink3.mk"
1.165     adam      186: .include "../../mk/jpeg.buildlink3.mk"
1.2       xtraeme   187: .include "../../mk/pthread.buildlink3.mk"
1.1       xtraeme   188: .include "../../mk/bsd.pkg.mk"

CVSweb <webmaster@jp.NetBSD.org>