123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375 |
- diff -Nuar a/cmake/VersioningUtils.cmake b/cmake/VersioningUtils.cmake
- --- a/cmake/VersioningUtils.cmake 2021-01-18 17:40:23.000000000 +0300
- +++ b/cmake/VersioningUtils.cmake 2021-02-28 16:01:31.749319740 +0300
- @@ -1,3 +1,12 @@
- +function(READ_VERSION_HEADER var_prefix def_regex file_path)
- + file(STRINGS "${file_path}" lines)
- + foreach (line ${lines})
- + if (line MATCHES "^#define[ \t]+(${def_regex})[ \t]+([0-9]+)$")
- + set("${var_prefix}${CMAKE_MATCH_1}" "${CMAKE_MATCH_2}" PARENT_SCOPE)
- + endif()
- + endforeach()
- +endfunction()
- +
- macro(SET_PROJECT_VERSION major minor micro)
- set(PROJECT_VERSION_MAJOR "${major}")
- set(PROJECT_VERSION_MINOR "${minor}")
- diff -Nuar a/CMakeLists.txt b/CMakeLists.txt
- --- a/CMakeLists.txt 2021-01-18 17:40:23.000000000 +0300
- +++ b/CMakeLists.txt 2021-02-28 16:01:00.215322016 +0300
- @@ -4,7 +4,8 @@
- set(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
- include(VersioningUtils)
-
- -SET_PROJECT_VERSION(1 9 1)
- +READ_VERSION_HEADER("" "WPE_[A-Z]+_VERSION" "${CMAKE_SOURCE_DIR}/include/wpe/libwpe-version.h")
- +SET_PROJECT_VERSION(${WPE_MAJOR_VERSION} ${WPE_MINOR_VERSION} ${WPE_MICRO_VERSION})
- set(WPE_API_VERSION "1.0")
-
- # Before making a release, the LT_VERSION string should be modified.
- @@ -41,10 +42,6 @@
- endif ()
- endforeach ()
-
- -set(DERIVED_SOURCES_DIR "${CMAKE_BINARY_DIR}/DerivedSources/wpe")
- -configure_file(include/wpe/version.h.cmake ${DERIVED_SOURCES_DIR}/version.h @ONLY)
- -configure_file(include/wpe/version-deprecated.h.cmake ${DERIVED_SOURCES_DIR}/version-deprecated.h @ONLY)
- -
- include(DistTargets)
- include(GNUInstallDirs)
-
- @@ -52,8 +49,9 @@
- find_package(Libxkbcommon REQUIRED)
-
- set(WPE_PUBLIC_HEADERS
- - ${DERIVED_SOURCES_DIR}/version.h
- - ${DERIVED_SOURCES_DIR}/version-deprecated.h
- + include/wpe/libwpe-version.h
- + include/wpe/version.h
- + include/wpe/version-deprecated.h
- include/wpe/export.h
- include/wpe/input.h
- include/wpe/keysyms.h
- @@ -81,7 +79,6 @@
- target_include_directories(wpe PRIVATE
- "include"
- "src"
- - ${DERIVED_SOURCES_DIR}/..
- $<TARGET_PROPERTY:GL::egl,INTERFACE_INCLUDE_DIRECTORIES>
- )
- target_compile_definitions(wpe PRIVATE
- @@ -145,10 +142,8 @@
- --sitemap=${CMAKE_SOURCE_DIR}/docs/sitemap.txt
- --output=${CMAKE_CURRENT_BINARY_DIR}/Documentation/
- --c-sources "${CMAKE_SOURCE_DIR}/include/wpe/*.h"
- - "${DERIVED_SOURCES_DIR}/version.h"
- - "${DERIVED_SOURCES_DIR}/version-deprecated.h"
- --extra-c-flags=-DWPE_COMPILATION=1
- - --c-include-directories ${CMAKE_SOURCE_DIR}/include ${DERIVED_SOURCES_DIR}
- + --c-include-directories ${CMAKE_SOURCE_DIR}/include
- --c-smart-index
- )
- ELSE()
- diff -Nuar a/include/wpe/libwpe-version.h b/include/wpe/libwpe-version.h
- --- a/include/wpe/libwpe-version.h 1970-01-01 02:00:00.000000000 +0200
- +++ b/include/wpe/libwpe-version.h 2021-02-28 16:01:59.205317759 +0300
- @@ -0,0 +1,15 @@
- +/*
- + * libwpe-version.h
- + * Copyright (C) 2021 Adrian Perez de Castro <aperez@igalia.com>
- + *
- + * Distributed under terms of the MIT license.
- + */
- +
- +#ifndef LIBWPE_VERSION_H
- +#define LIBWPE_VERSION_H
- +
- +#define WPE_MAJOR_VERSION 1
- +#define WPE_MINOR_VERSION 9
- +#define WPE_MICRO_VERSION 1
- +
- +#endif /* !LIBWPE_VERSION_H */
- diff -Nuar a/include/wpe/meson.build b/include/wpe/meson.build
- --- a/include/wpe/meson.build 2021-01-18 17:40:23.000000000 +0300
- +++ b/include/wpe/meson.build 2021-02-28 16:02:31.313315442 +0300
- @@ -2,27 +2,17 @@
- 'export.h',
- 'input.h',
- 'keysyms.h',
- + 'libwpe-version.h',
- 'loader.h',
- 'pasteboard.h',
- 'renderer-backend-egl.h',
- 'renderer-host.h',
- + 'version.h',
- + 'version-deprecated.h',
- 'view-backend.h',
- 'wpe-egl.h',
- 'wpe.h',
- -
- - # Generated API headers.
- - configure_file(
- - input: 'version.h.cmake',
- - output: 'version.h',
- - configuration: version_info,
- - ),
- - configure_file(
- - input: 'version-deprecated.h.cmake',
- - output: 'version-deprecated.h',
- - configuration: version_info,
- - ),
- ]
- install_headers(api_headers,
- subdir: join_paths('wpe-' + api_version, 'wpe'),
- )
- -
- diff -Nuar a/include/wpe/version-deprecated.h b/include/wpe/version-deprecated.h
- --- a/include/wpe/version-deprecated.h 1970-01-01 02:00:00.000000000 +0200
- +++ b/include/wpe/version-deprecated.h 2021-02-28 16:02:59.227313428 +0300
- @@ -0,0 +1,88 @@
- +/*
- + * Copyright (C) 2018 Igalia S.L.
- + * All rights reserved.
- + *
- + * Redistribution and use in source and binary forms, with or without
- + * modification, are permitted provided that the following conditions
- + * are met:
- + * 1. Redistributions of source code must retain the above copyright
- + * notice, this list of conditions and the following disclaimer.
- + * 2. Redistributions in binary form must reproduce the above copyright
- + * notice, this list of conditions and the following disclaimer in the
- + * documentation and/or other materials provided with the distribution.
- + *
- + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- + * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- + * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- + */
- +
- +#if !defined(__WPE_H_INSIDE__) && !defined(WPE_COMPILATION)
- +#error "Only <wpe/wpe.h> can be included directly."
- +#endif
- +
- +#ifndef wpe_version_deprecated_h
- +#define wpe_version_deprecated_h
- +
- +#if defined(WPE_COMPILATION)
- +#include "export.h"
- +#endif
- +
- +#include "libwpe-version.h"
- +
- +#ifdef __cplusplus
- +extern "C" {
- +#endif
- +
- +#define WPE_BACKEND_MAJOR_VERSION WPE_MAJOR_VERSION
- +#define WPE_BACKEND_MINOR_VERSION WPE_MINOR_VERSION
- +#define WPE_BACKEND_MICRO_VERSION WPE_MICRO_VERSION
- +
- +#define WPE_BACKEND_CHECK_VERSION(major, minor, micro) \
- + (WPE_BACKEND_MAJOR_VERSION > (major) || \
- + (WPE_BACKEND_MAJOR_VERSION == (major) && WPE_BACKEND_MINOR_VERSION > (minor)) || \
- + (WPE_BACKEND_MAJOR_VERSION == (major) && WPE_BACKEND_MINOR_VERSION == (minor) && \
- + WPE_BACKEND_MICRO_VERSION >= (micro)))
- +
- +/**
- + * wpe_backend_get_major_version:
- + *
- + * Returns: Major version of the `libwpe` library.
- + *
- + * Deprecated: Since `libwpe` version 1.0.0, use wpe_get_major_version()
- + * instead.
- + */
- +WPE_EXPORT unsigned wpe_backend_get_major_version(void);
- +
- +/**
- + * wpe_backend_get_minor_version:
- + *
- + * Returns: Minor version of the `libwpe` library.
- + *
- + * Deprecated: Since `libwpe` version 1.0.0, use wpe_get_minor_version()
- + * instead.
- + */
- +WPE_EXPORT unsigned wpe_backend_get_minor_version(void);
- +
- +/**
- + * wpe_backend_get_micro_version:
- + *
- + * Returns: Micro version of the `libwpe` library.
- + *
- + * Deprecated: Since `libwpe` version 1.0.0, use wpe_get_micro_version()
- + * instead.
- + */
- +WPE_EXPORT unsigned wpe_backend_get_micro_version(void);
- +
- +#ifdef __cplusplus
- +}
- +#endif
- +
- +#endif /* wpe_version_deprecated_h */
- diff -Nuar a/include/wpe/version.h b/include/wpe/version.h
- --- a/include/wpe/version.h 1970-01-01 02:00:00.000000000 +0200
- +++ b/include/wpe/version.h 2021-02-28 16:03:30.351311182 +0300
- @@ -0,0 +1,85 @@
- +/*
- + * Copyright (C) 2018 Igalia S.L.
- + * All rights reserved.
- + *
- + * Redistribution and use in source and binary forms, with or without
- + * modification, are permitted provided that the following conditions
- + * are met:
- + * 1. Redistributions of source code must retain the above copyright
- + * notice, this list of conditions and the following disclaimer.
- + * 2. Redistributions in binary form must reproduce the above copyright
- + * notice, this list of conditions and the following disclaimer in the
- + * documentation and/or other materials provided with the distribution.
- + *
- + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
- + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
- + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
- + * PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
- + * HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
- + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
- + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
- + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
- + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- + */
- +
- +#if !defined(__WPE_H_INSIDE__) && !defined(WPE_COMPILATION)
- +#error "Only <wpe/wpe.h> can be included directly."
- +#endif
- +
- +#ifndef wpe_version_h
- +#define wpe_version_h
- +
- +/**
- + * SECTION:version
- + * @short_description: Library Version
- + * @title: Version
- + * @symbols:
- + * - wpe_backend_get_major_version
- + * - wpe_backend_get_minor_version
- + * - wpe_backend_get_micro_version
- + */
- +
- +#if defined(WPE_COMPILATION)
- +#include "export.h"
- +#endif
- +
- +#include "libwpe-version.h"
- +
- +#ifdef __cplusplus
- +extern "C" {
- +#endif
- +
- +#define WPE_CHECK_VERSION(major, minor, micro) \
- + (WPE_MAJOR_VERSION > (major) || \
- + (WPE_MAJOR_VERSION == (major) && WPE_MINOR_VERSION > (minor)) || \
- + (WPE_MAJOR_VERSION == (major) && WPE_MINOR_VERSION == (minor) && \
- + WPE_MICRO_VERSION >= (micro)))
- +
- +/**
- + * wpe_get_major_version:
- + *
- + * Returns: Major version of the `libwpe` library.
- + */
- +WPE_EXPORT unsigned wpe_get_major_version(void);
- +
- +/**
- + * wpe_get_minor_version:
- + *
- + * Returns: Minor version of the `libwpe` library.
- + */
- +WPE_EXPORT unsigned wpe_get_minor_version(void);
- +
- +/**
- + * wpe_get_micro_version:
- + *
- + * Returns: Micro version of the `libwpe` library.
- + */
- +WPE_EXPORT unsigned wpe_get_micro_version(void);
- +
- +#ifdef __cplusplus
- +}
- +#endif
- +
- +#endif /* wpe_version_h */
- diff -Nuar a/include/wpe/wpe.h b/include/wpe/wpe.h
- --- a/include/wpe/wpe.h 2021-01-18 17:40:23.000000000 +0300
- +++ b/include/wpe/wpe.h 2021-02-28 16:04:05.245308665 +0300
- @@ -40,9 +40,10 @@
- #include "loader.h"
- #include "pasteboard.h"
- #include "renderer-host.h"
- +#include "view-backend.h"
- +#include "libwpe-version.h"
- #include "version.h"
- #include "version-deprecated.h"
- -#include "view-backend.h"
-
- #undef __WPE_H_INSIDE__
-
- diff -Nuar a/meson.build b/meson.build
- --- a/meson.build 2021-01-18 17:40:23.000000000 +0300
- +++ b/meson.build 2021-02-28 16:04:55.565305034 +0300
- @@ -7,7 +7,7 @@
- 'cpp_std=c++11',
- ],
- license: 'BSD-2-Clause',
- - version: '1.9.1',
- + version: run_command(join_paths('scripts', 'version.py')).stdout().strip(),
- )
-
- # This refers to the API level provided. This is modified only with major,
- diff -Nuar a/scripts/version.py b/scripts/version.py
- --- a/scripts/version.py 1970-01-01 02:00:00.000000000 +0200
- +++ b/scripts/version.py 2021-02-28 16:05:47.436301291 +0300
- @@ -0,0 +1,23 @@
- +#! /usr/bin/env python3
- +# -*- coding: utf-8 -*-
- +# vim:fenc=utf-8
- +#
- +# Copyright © 2021 Igalia S.L.
- +#
- +# Distributed under terms of the MIT license.
- +
- +from os import environ, path
- +import re
- +
- +version = {}
- +version_re = re.compile(r"^#define\s+WPE_([A-Z]+)_VERSION\s+(\d+)$")
- +version_file = path.join(environ["MESON_SOURCE_ROOT"],
- + "include", "wpe", "libwpe-version.h")
- +
- +with open(version_file, "r") as f:
- + for line in f.readlines():
- + m = version_re.match(line)
- + if m:
- + version[m[1]] = m[2]
- +
- +print("{}.{}.{}".format(version["MAJOR"], version["MINOR"], version["MICRO"]))
- diff -Nuar a/src/version.c b/src/version.c
- --- a/src/version.c 2021-01-18 17:40:23.000000000 +0300
- +++ b/src/version.c 2021-02-28 16:06:13.622299402 +0300
- @@ -24,8 +24,8 @@
- * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
- */
-
- -#include "wpe/version.h"
- -#include "wpe/version-deprecated.h"
- +#include "../include/wpe/version.h"
- +#include "../include/wpe/version-deprecated.h"
-
- unsigned
- wpe_get_major_version(void)
|