From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from dude02.hi.pengutronix.de ([2001:67c:670:100:1d::28] helo=dude02.pengutronix.de.) by metis.ext.pengutronix.de with esmtp (Exim 4.92) (envelope-from ) id 1jMGOg-0002t2-QS for ptxdist@pengutronix.de; Wed, 08 Apr 2020 21:30:02 +0200 From: Lucas Stach Date: Wed, 8 Apr 2020 21:30:02 +0200 Message-Id: <20200408193002.18077-4-l.stach@pengutronix.de> In-Reply-To: <20200408193002.18077-1-l.stach@pengutronix.de> References: <20200408193002.18077-1-l.stach@pengutronix.de> MIME-Version: 1.0 Subject: [ptxdist] [PATCH 4/4] cog: new package List-Id: PTXdist Development Mailing List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: ptxdist@pengutronix.de Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: ptxdist-bounces@pengutronix.de Sender: "ptxdist" To: ptxdist@pengutronix.de WPE launcher and webapp container. Signed-off-by: Lucas Stach --- ...g-DWAYLAND_PROTOCOLS-on-command-line.patch | 103 ++++++++++++++++++ patches/cog-0.6.0/series | 4 + rules/cog.in | 11 ++ rules/cog.make | 72 ++++++++++++ 4 files changed, 190 insertions(+) create mode 100644 patches/cog-0.6.0/0001-cmake-Fix-passing-DWAYLAND_PROTOCOLS-on-command-line.patch create mode 100644 patches/cog-0.6.0/series create mode 100644 rules/cog.in create mode 100644 rules/cog.make diff --git a/patches/cog-0.6.0/0001-cmake-Fix-passing-DWAYLAND_PROTOCOLS-on-command-line.patch b/patches/cog-0.6.0/0001-cmake-Fix-passing-DWAYLAND_PROTOCOLS-on-command-line.patch new file mode 100644 index 000000000000..b4686bd629d6 --- /dev/null +++ b/patches/cog-0.6.0/0001-cmake-Fix-passing-DWAYLAND_PROTOCOLS-on-command-line.patch @@ -0,0 +1,103 @@ +From: Joshua Watt +Date: Mon, 30 Mar 2020 14:50:46 -0500 +Subject: [PATCH] cmake: Fix passing -DWAYLAND_PROTOCOLS= on command line + +The optimization to check if WAYLAND_PROTOCOLS was set on the cmake +comamnd line was skipping the function implementations, making cmake +fail if it was used. The simple fix is to define the functions, then +bail of out WAYLAND_PROTOCOLS is already defined. + +Signed-off-by: Joshua Watt +--- + cmake/FindWaylandProtocols.cmake | 74 ++++++++++++++++++++-------------------- + 1 file changed, 37 insertions(+), 37 deletions(-) + +diff --git a/cmake/FindWaylandProtocols.cmake b/cmake/FindWaylandProtocols.cmake +index 49a3cd50f91b..31f429cb2732 100644 +--- a/cmake/FindWaylandProtocols.cmake ++++ b/cmake/FindWaylandProtocols.cmake +@@ -34,43 +34,6 @@ find_package(WaylandScanner) + + set(WAYLAND_PROTOCOLS "" CACHE FILEPATH "Path to the wayland-protocols data directory") + +-# Already detected included and directory found? +-if (WAYLAND_PROTOCOLS AND IS_DIRECTORY "${WAYLAND_PROTOCOLS}") +- return () +-endif () +- +-# +-# Method 1: If -DWAYLAND_PROTOCOLS=... was passed in the command line, +-# check whether the "stable" and "unstable" subdirectories +-# exist. +-# +-if (WAYLAND_PROTOCOLS) +- get_filename_component(WAYLAND_PROTOCOLS "${WAYLAND_PROTOCOLS}" REALPATH) +- if (NOT IS_DIRECTORY "${WAYLAND_PROTOCOLS}/stable") +- set(WAYLAND_PROTOCOLS "") +- endif () +- if (NOT IS_DIRECTORY "${WAYLAND_PROTOCOLS}/unstable") +- set(WAYLAND_PROTOCOLS "") +- endif () +-endif () +- +-# +-# Method 2: Try to find the directory using pkg-config. +-# +-if (NOT DEFINED WAYLAND_PROTOCOLS OR NOT WAYLAND_PROTOCOLS) +- find_package(PkgConfig) +- pkg_check_modules(WAYLAND_PROTOCOLS_PC wayland-protocols) +- if (WAYLAND_PROTOCOLS_PC_FOUND) +- pkg_get_variable(WAYLAND_PROTOCOLS_PC_DATADIR wayland-protocols pkgdatadir) +- if (WAYLAND_PROTOCOLS_PC_DATADIR) +- set(WAYLAND_PROTOCOLS "${WAYLAND_PROTOCOLS_PC_DATADIR}") +- endif () +- endif () +- unset(WAYLAND_PROTOCOLS_PC) +- unset(WAYLAND_PROTOCOLS_PC_DATADIR) +-endif () +- +- + include(FindPackageHandleStandardArgs) + FIND_PACKAGE_HANDLE_STANDARD_ARGS( + WAYLAND_PROTOCOLS +@@ -206,3 +169,40 @@ function(add_wayland_protocol _target _kind _protocol) + target_sources(${_target} PRIVATE "${proto_server}") + endif () + endfunction() ++ ++# Already detected included and directory found? ++if (WAYLAND_PROTOCOLS AND IS_DIRECTORY "${WAYLAND_PROTOCOLS}") ++ return () ++endif () ++ ++# ++# Method 1: If -DWAYLAND_PROTOCOLS=... was passed in the command line, ++# check whether the "stable" and "unstable" subdirectories ++# exist. ++# ++if (WAYLAND_PROTOCOLS) ++ get_filename_component(WAYLAND_PROTOCOLS "${WAYLAND_PROTOCOLS}" REALPATH) ++ if (NOT IS_DIRECTORY "${WAYLAND_PROTOCOLS}/stable") ++ set(WAYLAND_PROTOCOLS "") ++ endif () ++ if (NOT IS_DIRECTORY "${WAYLAND_PROTOCOLS}/unstable") ++ set(WAYLAND_PROTOCOLS "") ++ endif () ++endif () ++ ++# ++# Method 2: Try to find the directory using pkg-config. ++# ++if (NOT DEFINED WAYLAND_PROTOCOLS OR NOT WAYLAND_PROTOCOLS) ++ find_package(PkgConfig) ++ pkg_check_modules(WAYLAND_PROTOCOLS_PC wayland-protocols) ++ if (WAYLAND_PROTOCOLS_PC_FOUND) ++ pkg_get_variable(WAYLAND_PROTOCOLS_PC_DATADIR wayland-protocols pkgdatadir) ++ if (WAYLAND_PROTOCOLS_PC_DATADIR) ++ set(WAYLAND_PROTOCOLS "${WAYLAND_PROTOCOLS_PC_DATADIR}") ++ endif () ++ endif () ++ unset(WAYLAND_PROTOCOLS_PC) ++ unset(WAYLAND_PROTOCOLS_PC_DATADIR) ++endif () ++ diff --git a/patches/cog-0.6.0/series b/patches/cog-0.6.0/series new file mode 100644 index 000000000000..3c5f3e8d5e13 --- /dev/null +++ b/patches/cog-0.6.0/series @@ -0,0 +1,4 @@ +# generated by git-ptx-patches +#tag:base --start-number 1 +0001-cmake-Fix-passing-DWAYLAND_PROTOCOLS-on-command-line.patch +# fe47d1ea6f9b17c63023088fd025091b - git-ptx-patches magic diff --git a/rules/cog.in b/rules/cog.in new file mode 100644 index 000000000000..e8796399bb45 --- /dev/null +++ b/rules/cog.in @@ -0,0 +1,11 @@ +## SECTION=applications + +config COG + tristate + prompt "cog" + select HOST_CMAKE + select HOST_NINJA + select WPEWEBKIT + select WPEBACKEND_FDO + help + Cog launcher and webapp container. diff --git a/rules/cog.make b/rules/cog.make new file mode 100644 index 000000000000..116fb6465c80 --- /dev/null +++ b/rules/cog.make @@ -0,0 +1,72 @@ +# -*-makefile-*- +# +# Copyright (C) 2019 by Philippe Normand +# +# See CREDITS for details about who has contributed to this project. +# +# For further information about the PTXdist project and license conditions +# see the README file. +# + +# +# We provide this package +# +PACKAGES-$(PTXCONF_COG) += cog + +# +# Paths and names +# +COG_VERSION := 0.6.0 +COG_MD5 := a97df4f0e2d25f4da7cd9bb55294d30e +COG := cog-$(COG_VERSION) +COG_SUFFIX := tar.xz +COG_URL := https://wpewebkit.org/releases/$(COG).$(COG_SUFFIX) +COG_SOURCE := $(SRCDIR)/$(COG).$(COG_SUFFIX) +COG_DIR := $(BUILDDIR)/$(COG) +COG_LICENSE := MIT +COG_LICENSE_FILES := file://COPYING;md5=bf1229cd7425b302d60cdb641b0ce5fb + +# ---------------------------------------------------------------------------- +# Prepare +# ---------------------------------------------------------------------------- + +# +# cmake +# +COG_CONF_TOOL := cmake +COG_CONF_OPT := \ + $(CROSS_CMAKE_USR) \ + -G Ninja \ + -DCOG_APPID= \ + -DCOG_BUILD_PROGRAMS=ON \ + -DCOG_DBUS_OWN_USER= \ + -DCOG_DBUS_SYSTEM_BUS=OFF \ + -DCOG_HOME_URI=https://ptxdist.org/ \ + -DCOG_PLATFORM_DRM=OFF \ + -DCOG_PLATFORM_FDO=ON \ + -DCOG_USE_WEBKITGTK=OFF \ + -DCOG_WESTON_DIRECT_DISPLAY=OFF \ + -DINSTALL_MAN_PAGES=OFF \ + -DWAYLAND_PROTOCOLS=$(PTXDIST_SYSROOT_TARGET)/usr/share/wayland-protocols + +# ---------------------------------------------------------------------------- +# Target-Install +# ----------------------------------------------------------------------------- + +$(STATEDIR)/cog.targetinstall: + @$(call targetinfo) + + @$(call install_init, cog) + @$(call install_fixup, cog,PRIORITY,optional) + @$(call install_fixup, cog,SECTION,base) + @$(call install_fixup, cog,AUTHOR,"Philippe Normand ") + @$(call install_fixup, cog,DESCRIPTION,"WPE launcher and webapp container") + + @$(call install_copy, cog, 0, 0, 0755, -, /usr/bin/cog) + @$(call install_tree, cog, 0, 0, -, /usr/lib/) + + @$(call install_finish, cog) + + @$(call touch) + +# vim: syntax=make -- 2.20.1 _______________________________________________ ptxdist mailing list ptxdist@pengutronix.de