Makefile revision 7102
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence#
bf33eb0b522801792a6663b0360bc94b9e9b77c2Automatic Updater# CDDL HEADER START
499b34cea04a46823d003d4c0520c8b03e8513cbBrian Wellington#
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence# The contents of this file are subject to the terms of the
ec5347e2c775f027573ce5648b910361aa926c01Automatic Updater# Common Development and Distribution License (the "License").
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence# You may not use this file except in compliance with the License.
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence#
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David Lawrence# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# or http://www.opensolaris.org/os/licensing.
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# See the License for the specific language governing permissions
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# and limitations under the License.
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews#
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# When distributing Covered Code, include this CDDL HEADER in each
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# file and include the License file at usr/src/OPENSOLARIS.LICENSE.
dafcb997e390efa4423883dafd100c975c4095d6Mark Andrews# If applicable, add the following below this CDDL HEADER, with the
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence# fields enclosed by brackets "[]" replaced with your own identifying
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence# information: Portions Copyright [yyyy] [name of copyright owner]
0874abad14e3e9ecfc3dc1a1a2b9969f2f027724Mark Andrews#
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence# CDDL HEADER END
ab023a65562e62b85a824509d829b6fad87e00b1Rob Austein#
ab023a65562e62b85a824509d829b6fad87e00b1Rob Austein
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence#
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence# Copyright (c) 2015, 2016, Oracle and/or its affiliates. All rights reserved.
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence#
febf5f8b55abb2e6e840488a29a5ef4e20654f67David Lawrence
febf5f8b55abb2e6e840488a29a5ef4e20654f67David Lawrence# parfait is a bit unhappy (24796572)
febf5f8b55abb2e6e840488a29a5ef4e20654f67David Lawrenceexport PARFAIT_BUILD=no
febf5f8b55abb2e6e840488a29a5ef4e20654f67David Lawrence
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceBUILD_BITS= 64
431fb211db3cc59cb9b115e72526b83c76a2a082Bob Halley# For now, all things built for C++11 require gcc; the cmake files for this
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence# project already specify the required -std.
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCOMPILER= gcc
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrenceinclude ../../../make-rules/shared-macros.mk
1a69a1a78cfaa86f3b68bbc965232b7876d4da2aDavid Lawrence
364a82f7c25b62967678027043425201a5e5171aBob HalleyCOMPONENT_NAME= webkitgtk
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCOMPONENT_VERSION= 2.8.4
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid LawrenceCOMPONENT_PROJECT_URL= http://webkitgtk.org
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid LawrenceCOMPONENT_ARCHIVE= $(COMPONENT_SRC).tar.xz
92ef1a9b9dbd48ecb507b42ac62c15afefdaf838David LawrenceCOMPONENT_ARCHIVE_HASH= \
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence sha256:30bd366bd970d4bac2f9ef5bff0fb935376bf91ea2aaa2a5183fe5fdbec20fbd
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCOMPONENT_ARCHIVE_URL= http://webkitgtk.org/releases/$(COMPONENT_ARCHIVE)
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCOMPONENT_BUGDB= library/webkitgtk
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceTPNO= 25892
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence# Use project's own optimization flags instead.
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrencegcc_OPT=
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence# Requires newer version of cairo, available in S12 but not 11.3,
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence# so do not publish.
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrenceifeq ($(BUILD_TYPE), evaluation)
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceBUILD_64=
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceINSTALL_64=
ab023a65562e62b85a824509d829b6fad87e00b1Rob AusteinPUBLISH_STAMP=
ab023a65562e62b85a824509d829b6fad87e00b1Rob Austeinendif
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceBUILD_STYLE= justmake
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrenceinclude $(WS_MAKE_RULES)/common.mk
0e1bef59f060f6442a93cb662b0313e8908500e1Bob Halley
03e200df5dc283f24a6a349f0b31d3eab26da893Mark AndrewsCOMPONENT_BUILD_ARGS += -j4
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence# Force use of gnutls-3 pkgconfig during 2.x->3.x transition
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrencePKG_CONFIG_PATHS.32 += $(PKG_CONFIG_PATH.32)/gnutls-3
0e1bef59f060f6442a93cb662b0313e8908500e1Bob HalleyPKG_CONFIG_PATHS.64 += $(PKG_CONFIG_PATH.64)/gnutls-3
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrencePKG_CONFIG_PATHS += $(PKG_CONFIG_PATHS.$(BITS))
03e200df5dc283f24a6a349f0b31d3eab26da893Mark AndrewsLD_OPTIONS.32 += -L $(USRLIB.32)/gnutls-3 -R $(USRLIB.32)/gnutls-3
03e200df5dc283f24a6a349f0b31d3eab26da893Mark AndrewsLD_OPTIONS.64 += -L $(USRLIB.64)/gnutls-3 -R $(USRLIB.64)/gnutls-3
03e200df5dc283f24a6a349f0b31d3eab26da893Mark AndrewsLD_OPTIONS += $(LD_OPTIONS.$(BITS))
03e200df5dc283f24a6a349f0b31d3eab26da893Mark Andrews
03e200df5dc283f24a6a349f0b31d3eab26da893Mark AndrewsPKG_CONFIG_PATHS.32 += $(PKG_CONFIG_PATH.32)/libnotify-4
03e200df5dc283f24a6a349f0b31d3eab26da893Mark AndrewsPKG_CONFIG_PATHS.64 += $(PKG_CONFIG_PATH.64)/libnotify-4
03e200df5dc283f24a6a349f0b31d3eab26da893Mark AndrewsPKG_CONFIG_PATHS += $(PKG_CONFIG_PATHS.$(BITS))
03e200df5dc283f24a6a349f0b31d3eab26da893Mark AndrewsLD_OPTIONS.32 += -L $(USRLIB.32)/libnotify-4 -R $(USRLIB.32)/libnotify-4
03e200df5dc283f24a6a349f0b31d3eab26da893Mark AndrewsLD_OPTIONS.64 += -L $(USRLIB.64)/libnotify-4 -R $(USRLIB.64)/libnotify-4
03e200df5dc283f24a6a349f0b31d3eab26da893Mark AndrewsLD_OPTIONS += $(LD_OPTIONS.$(BITS))
03e200df5dc283f24a6a349f0b31d3eab26da893Mark Andrews
03e200df5dc283f24a6a349f0b31d3eab26da893Mark Andrews# Required to ensure expected defines are set; also, ensures project's
03e200df5dc283f24a6a349f0b31d3eab26da893Mark Andrews# optimisation level set appropriately. Would prefer RelWithDebInfo, but that
03e200df5dc283f24a6a349f0b31d3eab26da893Mark Andrews# target is curently broken.
03e200df5dc283f24a6a349f0b31d3eab26da893Mark AndrewsCMAKE_OPTIONS += -DCMAKE_BUILD_TYPE=Release
03e200df5dc283f24a6a349f0b31d3eab26da893Mark AndrewsCMAKE_OPTIONS += -DENABLE_MINIBROWSER=ON
0874abad14e3e9ecfc3dc1a1a2b9969f2f027724Mark AndrewsCMAKE_OPTIONS += -DPORT=GTK
03e200df5dc283f24a6a349f0b31d3eab26da893Mark Andrews
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrenceifeq ($(MACH), sparc)
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCMAKE_OPTIONS += -DENABLE_JIT=OFF
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrenceendif
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence# Need to figure out a way to use BUILD_STYLE = cmake and remove
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence# these duplicate entries here - 24375155
0c73b546ecfa49b9d1c8fdb9a48d4cd62176124aDavid Lawrence# This component uses cmake to generate Makefiles and so has no configure
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCMAKE = $(shell which cmake)
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCMAKE_OPTIONS += -DCMAKE_CXX_COMPILER="$(CXX)"
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCMAKE_OPTIONS += -DCMAKE_CXX_FLAGS="$(CXXFLAGS)"
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCMAKE_OPTIONS += -DCMAKE_C_COMPILER="$(CC)"
ab023a65562e62b85a824509d829b6fad87e00b1Rob AusteinCMAKE_OPTIONS += -DCMAKE_C_FLAGS="$(CFLAGS)"
f8f8a5b3a33f581c6e209c7ded8168e7acc73dfbAutomatic UpdaterCMAKE_OPTIONS += -DCMAKE_EXE_LINKER_FLAGS="$(LDFLAGS)"
ab023a65562e62b85a824509d829b6fad87e00b1Rob Austein# Must start install paths with a leading '/' or files will be installed into
ab023a65562e62b85a824509d829b6fad87e00b1Rob Austein# wrong location!
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCMAKE_OPTIONS += -DCMAKE_INSTALL_PREFIX="$(USRDIR)"
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCMAKE_OPTIONS += -DCMAKE_MODULE_LINKER_FLAGS="$(LDFLAGS)"
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCMAKE_OPTIONS += -DCMAKE_SHARED_LINKER_FLAGS="$(LDFLAGS)"
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCMAKE_OPTIONS += -DGETTEXT_MSGFMT_EXECUTABLE="$(GNUBIN)/msgfmt"
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCMAKE_OPTIONS += -DEXEC_INSTALL_DIR="$(USRBIN)"
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCMAKE_OPTIONS += -DLIB_INSTALL_DIR="$(USRLIB)"
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCMAKE_OPTIONS += -DLIBEXEC_INSTALL_DIR="$(USRLIB)"
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence# Tell g-ir-scanner not to cache results in homedir of user running the build
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCOMPONENT_BUILD_ENV += GI_SCANNER_DISABLE_CACHE=""
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence# Expects GNU versions of utilities to be found in PATH (e.g. xgettext).
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCOMPONENT_BUILD_ENV += PATH="$(GNUBIN):$(PATH)"
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence# Ensure cmake finds the matching 32/64-bit version of dependencies.
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCOMPONENT_BUILD_ENV += PKG_CONFIG_PATH="$(PKG_CONFIG_PATH)"
49e558760e9c21a6b7c726ccf999a2711fd8eef9David Lawrence
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCOMPONENT_PRE_BUILD_ACTION += cd $(@D);
40f53fa8d9c6a4fc38c0014495e7a42b08f52481David LawrenceCOMPONENT_PRE_BUILD_ACTION += echo Running cmake with $(CMAKE_OPTIONS);
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceCOMPONENT_PRE_BUILD_ACTION += $(ENV) $(COMPONENT_BUILD_ENV) $(CMAKE) . $(CMAKE_OPTIONS);
0307846c714477583e4e377a915829e5afe2ef38David Lawrence
0307846c714477583e4e377a915829e5afe2ef38David LawrenceREQUIRED_PACKAGES += database/sqlite-3
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += developer/build/cmake
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += developer/build/gnu-make
1c333c1415bd537463983f046100d170228590ddDavid LawrenceREQUIRED_PACKAGES += developer/build/pkg-config
1c333c1415bd537463983f046100d170228590ddDavid LawrenceREQUIRED_PACKAGES += developer/gperf
1c333c1415bd537463983f046100d170228590ddDavid LawrenceREQUIRED_PACKAGES += developer/parser/bison
1c333c1415bd537463983f046100d170228590ddDavid LawrenceREQUIRED_PACKAGES += image/library/libjpeg
1c333c1415bd537463983f046100d170228590ddDavid LawrenceREQUIRED_PACKAGES += image/library/libpng
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += image/library/libwebp
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += library/desktop/atk
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += library/desktop/cairo
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += library/desktop/gdk-pixbuf
ab023a65562e62b85a824509d829b6fad87e00b1Rob AusteinREQUIRED_PACKAGES += library/desktop/gstreamer-1
ab023a65562e62b85a824509d829b6fad87e00b1Rob AusteinREQUIRED_PACKAGES += library/desktop/gstreamer-1/gst-plugins-base
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += library/desktop/gtk2
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += library/desktop/gtk3
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += library/desktop/harfbuzz
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += library/desktop/pango
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += library/gnome/libsecret
0e1bef59f060f6442a93cb662b0313e8908500e1Bob HalleyREQUIRED_PACKAGES += library/glib2
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += library/gnutls-3
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += library/icu
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += library/desktop/libnotify
ab023a65562e62b85a824509d829b6fad87e00b1Rob AusteinREQUIRED_PACKAGES += library/libsoup
ab023a65562e62b85a824509d829b6fad87e00b1Rob AusteinREQUIRED_PACKAGES += library/libxml2
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += library/libxslt
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += library/spell-checking/enchant
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += library/zlib
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += $(PERL_PKG)
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += runtime/python-27
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += runtime/ruby
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += service/opengl/ogl-select
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += system/library/fontconfig
49e558760e9c21a6b7c726ccf999a2711fd8eef9David LawrenceREQUIRED_PACKAGES += system/library/freetype-2
0e1bef59f060f6442a93cb662b0313e8908500e1Bob HalleyREQUIRED_PACKAGES += system/library/gcc/gcc-c++-runtime
0e1bef59f060f6442a93cb662b0313e8908500e1Bob HalleyREQUIRED_PACKAGES += system/library/gcc/gcc-c-runtime
0e1bef59f060f6442a93cb662b0313e8908500e1Bob HalleyREQUIRED_PACKAGES += system/library/math
ab023a65562e62b85a824509d829b6fad87e00b1Rob AusteinREQUIRED_PACKAGES += x11/library/libx11
ab023a65562e62b85a824509d829b6fad87e00b1Rob AusteinREQUIRED_PACKAGES += x11/library/libxcomposite
0e1bef59f060f6442a93cb662b0313e8908500e1Bob HalleyREQUIRED_PACKAGES += x11/library/libxdamage
0e1bef59f060f6442a93cb662b0313e8908500e1Bob HalleyREQUIRED_PACKAGES += x11/library/mesa
0e1bef59f060f6442a93cb662b0313e8908500e1Bob Halley