Annotation of pkgsrc/www/webkit-gtk/Makefile, revision 1.224

1.224   ! adam        1: # $NetBSD: Makefile,v 1.223 2022/02/17 16:55:16 leot Exp $
1.4       snj         2: 
1.223     leot        3: DISTNAME=      webkitgtk-2.34.6
1.62      drochner    4: PKGNAME=       ${DISTNAME:S/webkitgtk/webkit-gtk/}
1.224   ! adam        5: PKGREVISION=   1
1.98      leot        6: CATEGORIES=    www
1.127     wiz         7: MASTER_SITES=  https://www.webkitgtk.org/releases/
1.98      leot        8: EXTRACT_SUFX=  .tar.xz
1.1       ahoka       9: 
1.98      leot       10: MAINTAINER=    [email protected]
1.127     wiz        11: HOMEPAGE=      https://www.webkitgtk.org/
1.92      wiz        12: COMMENT=       GTK port of the WebKit browser engine
1.98      leot       13: LICENSE=       2-clause-bsd AND gnu-lgpl-v2
1.42      drochner   14: 
1.92      wiz        15: # shm_open(3) and shm_unlink(3) appeared in NetBSD 7.0
1.145     leot       16: NOT_FOR_PLATFORM=      NetBSD-[1-6].*-*
1.87      joerg      17: 
1.145     leot       18: TOOL_DEPENDS+= gettext-tools>=0.18:../../devel/gettext-tools
1.173     wiz        19: TOOL_DEPENDS+= ${PYPKGPREFIX}-expat-[0-9]*:../../textproc/py-expat
1.98      leot       20: 
                     21: USE_CMAKE=     yes
1.219     gutterid   22: USE_LANGUAGES= c c++17
1.171     leot       23: USE_TOOLS+=    automake bash bison flex gmake perl pkg-config msgfmt
1.98      leot       24: 
1.150     jperkin    25: # Enabling -gdwarf-2 hits GNU ar limits on file size.
                     26: CTF_SUPPORTED= no
                     27: 
1.219     gutterid   28: # GCC >= 8 is required, it no longer builds with lower versions.
                     29: GCC_REQD+=             8
1.156     leot       30: USE_GCC_RUNTIME=       yes
1.98      leot       31: 
1.219     gutterid   32: .include "../../mk/bsd.prefs.mk"
                     33: 
                     34: # This package will link against libstdc++.so from the pkgsrc GCC when the
                     35: # base OS GCC doesn't meet the minimum requirement. Thus we do this so the
                     36: # appropriate gcc-libs package will be captured as a dependency, otherwise
                     37: # binary packages will be broken. See also PR pkg/56604.
                     38: .if ${OPSYS} == "NetBSD" && ${OPSYS_VERSION} < 099915
                     39: USE_PKGSRC_GCC=                yes
                     40: USE_PKGSRC_GCC_RUNTIME=        yes
                     41: .endif
                     42: 
1.98      leot       43: # Using ld.gold subverts Pkgsrc wrappers, and this package also crashes buggy
                     44: # versions of ld.gold.
                     45: CMAKE_ARGS+=   -DUSE_LD_GOLD=OFF
                     46: 
                     47: PKGCONFIG_OVERRIDE+=   Source/JavaScriptCore/javascriptcoregtk.pc.in
1.137     wiz        48: PKGCONFIG_OVERRIDE+=   Source/WebKit/gtk/webkit2gtk-web-extension.pc.in
                     49: PKGCONFIG_OVERRIDE+=   Source/WebKit/gtk/webkit2gtk.pc.in
1.98      leot       50: 
1.132     wiz        51: CMAKE_ARGS+=           -DCMAKE_BUILD_TYPE=Release
1.98      leot       52: CMAKE_ARGS+=           -DPORT=GTK
                     53: CMAKE_ARGS+=           -DENABLE_X11_TARGET=ON
                     54: CMAKE_ARGS+=           -DENABLE_MINIBROWSER=ON
1.203     leot       55: CMAKE_ARGS+=           -DENABLE_GAMEPAD=OFF
1.98      leot       56: CMAKE_ARGS+=           -DENABLE_GEOLOCATION=OFF
1.183     tnn        57: CMAKE_ARGS+=           -DENABLE_BUBBLEWRAP_SANDBOX=OFF
1.132     wiz        58: CMAKE_ARGS+=           -DUSE_GSTREAMER_GL=OFF
1.98      leot       59: CMAKE_ARGS+=           -DUSE_LIBHYPHEN=OFF
1.159     leot       60: CMAKE_ARGS+=           -DUSE_OPENJPEG=OFF
1.212     leot       61: CMAKE_ARGS+=           -DUSE_SOUP2=ON
1.193     leot       62: CMAKE_ARGS+=           -DUSE_SYSTEMD=OFF
1.98      leot       63: 
1.171     leot       64: REPLACE_PERL+= Source/JavaScriptCore/Scripts/*.pl
1.136     wiz        65: REPLACE_PERL+= Source/JavaScriptCore/create_hash_table
1.171     leot       66: REPLACE_PERL+= Source/WebCore/Scripts/*.pl
1.136     wiz        67: REPLACE_PERL+= Source/WebCore/bindings/scripts/*.pl
1.145     leot       68: REPLACE_PERL+= Source/WebCore/bindings/scripts/*.pm
1.136     wiz        69: REPLACE_PERL+= Source/WebCore/css/*.pl
                     70: REPLACE_PERL+= Source/WebCore/dom/*.pl
                     71: REPLACE_PERL+= Source/WebCore/make-hash-tools.pl
1.171     leot       72: REPLACE_PERL+= Source/WebInspectorUI/Scripts/*.pl
                     73: REPLACE_PERL+= Source/WebKit/Scripts/*.pl
                     74: REPLACE_PERL+= Source/cmake/tools/scripts/*.pl
1.136     wiz        75: 
1.145     leot       76: REPLACE_PYTHON+=       Source/JavaScriptCore/Scripts/*.py
1.171     leot       77: REPLACE_PYTHON+=       Source/JavaScriptCore/Scripts/wkbuiltins/*.py
1.145     leot       78: REPLACE_PYTHON+=       Source/JavaScriptCore/inspector/scripts/*.py
                     79: REPLACE_PYTHON+=       Source/JavaScriptCore/inspector/scripts/codegen/*.py
                     80: REPLACE_PYTHON+=       Source/JavaScriptCore/wasm/*.py
1.171     leot       81: REPLACE_PYTHON+=       Source/JavaScriptCore/yarr/*.py
1.136     wiz        82: REPLACE_PYTHON+=       Source/JavaScriptCore/yarr/create_regex_tables
                     83: REPLACE_PYTHON+=       Source/JavaScriptCore/yarr/generateYarrCanonicalizeUnicode
1.171     leot       84: REPLACE_PYTHON+=       Source/ThirdParty/ANGLE/src/compiler/translator/*.py
                     85: REPLACE_PYTHON+=       Source/ThirdParty/ANGLE/src/libANGLE/*.py
1.145     leot       86: REPLACE_PYTHON+=       Source/ThirdParty/gtest/scripts/*.py
                     87: REPLACE_PYTHON+=       Source/ThirdParty/gtest/test/*.py
                     88: REPLACE_PYTHON+=       Source/ThirdParty/gtest/xcode/Scripts/*.py
                     89: REPLACE_PYTHON+=       Source/WebCore/css/*.py
1.136     wiz        90: REPLACE_PYTHON+=       Source/WebCore/html/parser/create-html-entity-table
                     91: REPLACE_PYTHON+=       Source/WebCore/platform/network/create-http-header-name-table
1.145     leot       92: REPLACE_PYTHON+=       Source/WebKit/Scripts/*.py
                     93: REPLACE_PYTHON+=       Tools/glib/*.py
1.171     leot       94: REPLACE_PYTHON+=       Tools/gtkdoc/generate-gtkdoc
                     95: 
1.187     rillig     96: REPLACE_BASH+=         Source/JavaScriptCore/postprocess-headers.sh
                     97: REPLACE_BASH+=         Source/ThirdParty/ANGLE/adjust-angle-include-paths-rule
1.171     leot       98: REPLACE_BASH+=         Source/ThirdParty/gtest/xcode/Samples/FrameworkSample/runtests.sh
                     99: REPLACE_BASH+=         Source/ThirdParty/gtest/xcode/Scripts/runtests.sh
1.187     rillig    100: REPLACE_BASH+=         Source/WebKit/Scripts/copy-webcontent-resources-to-private-headers.sh
                    101: REPLACE_BASH+=         Source/WebKit/Scripts/generate-https-upgrade-database.sh
1.171     leot      102: REPLACE_BASH+=         Source/WebKit/Scripts/process-entitlements.sh
                    103: REPLACE_BASH+=         Tools/gtk/install-dependencies
                    104: 
                    105: REPLACE_RUBY+=         Source/JavaScriptCore/b3/air/*.rb
                    106: REPLACE_RUBY+=         Source/JavaScriptCore/offlineasm/*.rb
                    107: REPLACE_RUBY+=         Source/WebCore/Scripts/*.rb
                    108: REPLACE_RUBY+=         Source/WebCore/domjit/*.rb
                    109: REPLACE_RUBY+=         Source/WebInspectorUI/Scripts/*.rb
                    110: REPLACE_RUBY+=         Source/WebKit/Scripts/*.rb
1.136     wiz       111: 
                    112: SUBST_CLASSES+=                python
                    113: SUBST_FILES.python+=   Source/WebInspectorUI/Scripts/copy-user-interface-resources.pl
                    114: SUBST_SED.python+=     -e 's,\(.\)python.;,\1${PYTHONBIN}\1;,'
                    115: SUBST_STAGE.python=    pre-configure
                    116: SUBST_MESSAGE.python=  Fixing path to python binary.
1.98      leot      117: 
                    118: .include "../../lang/ruby/rubyversion.mk"
1.171     leot      119: .include "../../lang/ruby/replace.mk"
1.145     leot      120: TOOL_DEPENDS+= ${RUBY_BASE}>=${RUBY_VERSION}:${RUBY_SRCDIR}
1.98      leot      121: CMAKE_ARGS+=   -DRUBY_EXECUTABLE=${RUBY}
                    122: 
                    123: PYTHON_FOR_BUILD_ONLY= yes
                    124: .include "../../lang/python/application.mk"
                    125: CMAKE_ARGS+=   -DPYTHON_EXECUTABLE=${PYTHONBIN}
                    126: 
                    127: CXXFLAGS.SunOS+=       -fpermissive
                    128: 
                    129: .include "../../mk/compiler.mk"
                    130: .if !empty(PKGSRC_COMPILER:Mclang)
1.126     jperkin   131: CXXFLAGS+=     -Wno-c++11-narrowing
1.98      leot      132: .endif
                    133: 
1.138     jperkin   134: # This does not disable optimisations, merely avoids #error if there are none.
                    135: CFLAGS+=       -DRELEASE_WITHOUT_OPTIMIZATIONS
                    136: 
1.166     leot      137: # Needed for JavaScript JIT
1.145     leot      138: NOT_PAX_MPROTECT_SAFE+=        libexec/webkit2gtk-4.0/WebKitWebProcess
                    139: NOT_PAX_MPROTECT_SAFE+=        libexec/webkit2gtk-4.0/jsc
                    140: 
1.98      leot      141: .include "options.mk"
                    142: 
                    143: BUILDLINK_API_DEPENDS.glib2+= glib2>=2.32.1
                    144: .include "../../devel/glib2/buildlink3.mk"
                    145: .include "../../devel/zlib/buildlink3.mk"
                    146: .include "../../databases/sqlite3/buildlink3.mk"
                    147: .include "../../devel/gperf/buildlink3.mk"
                    148: .include "../../devel/pango/buildlink3.mk"
1.197     nia       149: .include "../../fonts/harfbuzz-icu/buildlink3.mk"
1.136     wiz       150: .include "../../fonts/woff2/buildlink3.mk"
1.98      leot      151: .include "../../graphics/cairo-gobject/buildlink3.mk"
                    152: .include "../../graphics/freetype2/buildlink3.mk"
                    153: .include "../../graphics/libwebp/buildlink3.mk"
                    154: .include "../../mk/jpeg.buildlink3.mk"
1.212     leot      155: .include "../../graphics/lcms2/buildlink3.mk"
1.98      leot      156: BUILDLINK_API_DEPENDS.png+= png>=1.5.1beta08
                    157: .include "../../graphics/png/buildlink3.mk"
                    158: .include "../../multimedia/gstreamer1/buildlink3.mk"
                    159: BUILDLINK_API_DEPENDS.gst-plugins1-base+=      gst-plugins1-base>=1.0.3
                    160: .include "../../multimedia/gst-plugins1-base/buildlink3.mk"
1.218     leot      161: .include "../../multimedia/gst-plugins1-good/buildlink3.mk"
1.98      leot      162: .include "../../net/libsoup/buildlink3.mk"
                    163: .include "../../security/libsecret/buildlink3.mk"
1.168     leot      164: .include "../../security/libtasn1/buildlink3.mk"
1.98      leot      165: .include "../../sysutils/libnotify/buildlink3.mk"
                    166: .include "../../textproc/icu/buildlink3.mk"
                    167: .include "../../textproc/libxslt/buildlink3.mk"
1.92      wiz       168: .include "../../x11/gtk3/buildlink3.mk"
1.98      leot      169: .include "../../x11/libXdamage/buildlink3.mk"
                    170: .include "../../x11/libXt/buildlink3.mk"
                    171: .include "../../mk/pthread.buildlink3.mk"
1.200     nia       172: .include "../../mk/atomic64.mk"
1.1       ahoka     173: .include "../../mk/bsd.pkg.mk"

CVSweb <[email protected]>