Hello community, here is the log from the commit of package lxqt-build-tools for openSUSE:Factory checked in at 2018-06-29 22:30:55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/lxqt-build-tools (Old) and /work/SRC/openSUSE:Factory/.lxqt-build-tools.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "lxqt-build-tools" Fri Jun 29 22:30:55 2018 rev:4 rq:618050 version:0.5.0 Changes: -------- --- /work/SRC/openSUSE:Factory/lxqt-build-tools/lxqt-build-tools.changes 2017-10-24 22:23:03.705300621 +0200 +++ /work/SRC/openSUSE:Factory/.lxqt-build-tools.new/lxqt-build-tools.changes 2018-06-29 22:31:34.690247503 +0200 @@ -1,0 +2,10 @@ +Tue May 22 14:00:41 UTC 2018 - [email protected] + +- Update to 0.5.0: + * LXQtCompilerSettings: Set CMAKE_C_VISIBILITY_PRESET to hidden + * Don’t allow Qt foreach/Q_FOREACH + * Require Qt 5.7.1 + * Adds a FindXKBCommon CMake module + * Adds ECMFindModuleHelpers CMake module + +------------------------------------------------------------------- Old: ---- lxqt-build-tools-0.4.0.tar.xz lxqt-build-tools-0.4.0.tar.xz.asc New: ---- lxqt-build-tools-0.5.0.tar.xz lxqt-build-tools-0.5.0.tar.xz.asc ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ lxqt-build-tools.spec ++++++ --- /var/tmp/diff_new_pack.LDNg0V/_old 2018-06-29 22:31:35.178247130 +0200 +++ /var/tmp/diff_new_pack.LDNg0V/_new 2018-06-29 22:31:35.178247130 +0200 @@ -1,7 +1,7 @@ # # spec file for package lxqt-build-tools # -# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,7 +17,7 @@ Name: lxqt-build-tools -Version: 0.4.0 +Version: 0.5.0 Release: 0 Summary: Core build tools for LXQt License: BSD-3-Clause @@ -26,7 +26,7 @@ Source: https://github.com/lxde/%{name}/releases/download/%{version}/%{name}-%{version}.tar.xz Source1: https://github.com/lxde/%{name}/releases/download/%{version}/%{name}-%{version}.tar.xz.asc BuildRequires: cmake >= 3.0.2 -BuildRequires: pkgconfig(Qt5Core) >= 5.6.1 +BuildRequires: pkgconfig(Qt5Core) >= 5.7.1 BuildRequires: pkgconfig(glib-2.0) >= 2.50 BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildArch: noarch ++++++ lxqt-build-tools-0.4.0.tar.xz -> lxqt-build-tools-0.5.0.tar.xz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lxqt-build-tools-0.4.0/AUTHORS new/lxqt-build-tools-0.5.0/AUTHORS --- old/lxqt-build-tools-0.4.0/AUTHORS 2017-09-22 23:29:22.000000000 +0200 +++ new/lxqt-build-tools-0.5.0/AUTHORS 2018-05-21 19:06:51.000000000 +0200 @@ -1,5 +1,5 @@ Upstream Authors: - LXQt team: http://lxqt.org + LXQt team: https://lxqt.org Razor team: http://razor-qt.org Luís Pereira <[email protected]> Alexander Sokolov <[email protected]> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lxqt-build-tools-0.4.0/CHANGELOG new/lxqt-build-tools-0.5.0/CHANGELOG --- old/lxqt-build-tools-0.4.0/CHANGELOG 2017-09-22 23:29:22.000000000 +0200 +++ new/lxqt-build-tools-0.5.0/CHANGELOG 2018-05-21 19:06:51.000000000 +0200 @@ -1,7 +1,24 @@ -lxqt-build-tools-0.4.0 / 2017-09-22 +lxqt-build-tools-0.5.0 / 2018-05-21 =================================== + * Bump version to 0.5.0 + * Prevent in-source builds + * Adds an PreventInSourceBuilds module + * http --> https + * Fixed some LXDE mentions + * LXQtCompilerSettings: Set CMAKE_C_VISIBILITY_PRESET to hidden + * Don't allow Qt foreach/Q_FOREACH + * Update CMakeLists.txt + * Require Qt 5.7.1 + * Adds a FindXKBCommon CMake module + * Adds ECMFindModuleHelpers CMake module + * Don't export github templates + +0.4.0 / 2017-09-22 +================== + + * Release 0.4.0: Update changelog * Bump version to 0.4.0 * Added needed versions * remove version set from LXQtConfigVars.in diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lxqt-build-tools-0.4.0/CMakeLists.txt new/lxqt-build-tools-0.5.0/CMakeLists.txt --- old/lxqt-build-tools-0.4.0/CMakeLists.txt 2017-09-22 23:29:22.000000000 +0200 +++ new/lxqt-build-tools-0.5.0/CMakeLists.txt 2018-05-21 19:06:51.000000000 +0200 @@ -5,20 +5,21 @@ option(WITH_XDG_DIRS_FALLBACK "Use our XDG_CONFIG_DIRS fallback" ON) set(LXQT_BUILD_TOOLS_MAJOR_VERSION 0) -set(LXQT_BUILD_TOOLS_MINOR_VERSION 4) +set(LXQT_BUILD_TOOLS_MINOR_VERSION 5) set(LXQT_BUILD_TOOLS_PATCH_VERSION 0) set(LXQT_BUILD_TOOLS_VERSION ${LXQT_BUILD_TOOLS_MAJOR_VERSION}.${LXQT_BUILD_TOOLS_MINOR_VERSION}.${LXQT_BUILD_TOOLS_PATCH_VERSION}) # Check for needed versions -# We need at least Qt 5.6.1 and glib-2.0 >= 2.50 to build all LXQt parts +# We need at least Qt 5.7.1 and glib-2.0 >= 2.50 to build all LXQt parts find_package(PkgConfig REQUIRED) -find_package(Qt5Core "5.6.1" REQUIRED) +find_package(Qt5Core "5.7.1" REQUIRED) pkg_check_modules(GLIB2 glib-2.0>=2.50 REQUIRED) include(CMakePackageConfigHelpers) include(GNUInstallDirs) # Standard directories for installation include(cmake/FindInstallConfigPath.cmake) # sets LXQT_ETC_XDG_DIR, if unset +include(cmake/modules/LXQtPreventInSourceBuilds.cmake) #----------------------------------------------------------------------------- # LXQT_DATA_DIR defaults to CMAKE_INSTALL_FULL_DATADIR. It's added to diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lxqt-build-tools-0.4.0/README.md new/lxqt-build-tools-0.5.0/README.md --- old/lxqt-build-tools-0.4.0/README.md 2017-09-22 23:29:22.000000000 +0200 +++ new/lxqt-build-tools-0.5.0/README.md 2018-05-21 19:06:51.000000000 +0200 @@ -2,20 +2,32 @@ ## Introduction -This repository is providing several tools needed to build LXQt itself as well as other components maintained by the LXQt project. +This repository is providing several tools needed to build LXQt itself as well +as other components maintained by the LXQt project. -These tools used to be spread over the repositories of various other components and were summarized to ease dependency management. So far many components, in particular [liblxqt](https://github.com/lxde/liblxqt), were representing a build dependency without being needed themselves but only because their repository was providing a subset of the tools which are now summarized here. So the use of this repository will reduce superfluous and bloated dependencies. +These tools used to be spread over the repositories of various other components +and were summarized to ease dependency management. So far many components, in +particular [liblxqt](https://github.com/lxqt/liblxqt), were representing a build +dependency without being needed themselves but only because their repository was +providing a subset of the tools which are now summarized here. So the use of this +repository will reduce superfluous and bloated dependencies. ## Installation ### Compiling sources -To build only CMake and Qt5Core are needed, optionally Git to pull VCS checkouts. Runtime dependencies do not exist. +To build only CMake and Qt5Core are needed, optionally Git to pull VCS checkouts. +Runtime dependencies do not exist. -Code configuration is handled by CMake. CMake variable `CMAKE_INSTALL_PREFIX` has to be set to `/usr` on most operating systems. +Code configuration is handled by CMake. CMake variable `CMAKE_INSTALL_PREFIX` +has to be set to `/usr` on most operating systems. -To build run `make`, to install `make install` which accepts variable `DESTDIR` as usual. (Strictly speaking `make` isn't even needed right now. On the other hand it doesn't hurt so packagers may just include it in case it'll be needed one day.) +To build run `make`, to install `make install` which accepts variable `DESTDIR` +as usual. (Strictly speaking `make` isn't even needed right now. On the other +hand it doesn't hurt so packagers may just include it in case it'll be needed +one day.) ## Packagers -This package is arch-independent now. You can simply package it as `BuildArch: noarch` (rpm) or `arch: all` (deb). +This package is arch-independent now. You can simply package it as +`BuildArch: noarch` (rpm) or `arch: all` (deb). diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lxqt-build-tools-0.4.0/cmake/find-modules/FindXCB.cmake new/lxqt-build-tools-0.5.0/cmake/find-modules/FindXCB.cmake --- old/lxqt-build-tools-0.4.0/cmake/find-modules/FindXCB.cmake 2017-09-22 23:29:22.000000000 +0200 +++ new/lxqt-build-tools-0.5.0/cmake/find-modules/FindXCB.cmake 2018-05-21 19:06:51.000000000 +0200 @@ -31,7 +31,7 @@ include(FeatureSummary) set_package_properties(XCB PROPERTIES - URL "http://xcb.freedesktop.org/" + URL "https://xcb.freedesktop.org/" DESCRIPTION "X protocol C-language Binding") find_package(PkgConfig) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lxqt-build-tools-0.4.0/cmake/find-modules/FindXKBCommon.cmake new/lxqt-build-tools-0.5.0/cmake/find-modules/FindXKBCommon.cmake --- old/lxqt-build-tools-0.4.0/cmake/find-modules/FindXKBCommon.cmake 1970-01-01 01:00:00.000000000 +0100 +++ new/lxqt-build-tools-0.5.0/cmake/find-modules/FindXKBCommon.cmake 2018-05-21 19:06:51.000000000 +0200 @@ -0,0 +1,107 @@ +#.rst: +# FindXKBCommon +# ----------- +# +# Try to find XKBCommon. +# +# This is a component-based find module, which makes use of the COMPONENTS +# and OPTIONAL_COMPONENTS arguments to find_module. The following components +# are available:: +# +# XKBCommon X11 +# +# If no components are specified, this module will act as though all components +# were passed to OPTIONAL_COMPONENTS. +# +# This module will define the following variables, independently of the +# components searched for or found: +# +# ``XKBCommon_FOUND`` +# TRUE if (the requested version of) XKBCommon is available +# ``XKBCommon_VERSION`` +# Found XKBCommon version +# ``XKBCommon_TARGETS`` +# A list of all targets imported by this module (note that there may be more +# than the components that were requested) +# ``XKBCommon_LIBRARIES`` +# This can be passed to target_link_libraries() instead of the imported +# targets +# ``XKBCommon_INCLUDE_DIRS`` +# This should be passed to target_include_directories() if the targets are +# not used for linking +# ``XKBCommon_DEFINITIONS`` +# This should be passed to target_compile_options() if the targets are not +# used for linking +# +# For each searched-for components, ``XKBCommon_<component>_FOUND`` will be set to +# TRUE if the corresponding XKBCommon library was found, and FALSE otherwise. If +# ``XKBCommon_<component>_FOUND`` is TRUE, the imported target +# ``XKBCommon::<component>`` will be defined. + +#============================================================================= +# Copyright 2017 Luís Pereira <[email protected]> +# +# Documentation adapted from the KF5 FindWayland module. +# +# 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 copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# 3. The name of the author may not be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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. +#============================================================================= + +include(ECMFindModuleHelpers) + +ecm_find_package_version_check(XKBCommon) + +set(XKBCommon_known_components + XKBCommon + X11) + +unset(XKBCommon_XKBCommon_component_deps) +set(XKBCommon_XKBCommon_pkg_config "xkbcommon") +set(XKBCommon_XKBCommon_lib "xkbcommon") +set(XKBCommon_XKBCommon_header "xkbcommon/xkbcommon.h") + +set(XKBCommon_X11_component_deps XKBCommon) +set(XKBCommon_X11_pkg_config "xkbcommon-x11") +set(XKBCommon_X11_lib "xkbcommon-x11") +set(XKBCommon_X11_header "xkbcommon/xkbcommon-x11.h") + +ecm_find_package_parse_components(XKBCommon + RESULT_VAR XKBCommon_components + KNOWN_COMPONENTS ${XKBCommon_known_components} +) +ecm_find_package_handle_library_components(XKBCommon + COMPONENTS ${XKBCommon_components} +) + +find_package_handle_standard_args(XKBCommon + FOUND_VAR XKBCommon_FOUND + REQUIRED_VARS XKBCommon_LIBRARIES XKBCommon_INCLUDE_DIRS + VERSION_VAR XKBCommon_VERSION + HANDLE_COMPONENTS +) + +include(FeatureSummary) +set_package_properties(XKBCommon PROPERTIES + URL "https://xkbcommon.org" + DESCRIPTION "A library to handle keyboard descriptions" +) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lxqt-build-tools-0.4.0/cmake/modules/ECMFindModuleHelpers.cmake new/lxqt-build-tools-0.5.0/cmake/modules/ECMFindModuleHelpers.cmake --- old/lxqt-build-tools-0.4.0/cmake/modules/ECMFindModuleHelpers.cmake 1970-01-01 01:00:00.000000000 +0100 +++ new/lxqt-build-tools-0.5.0/cmake/modules/ECMFindModuleHelpers.cmake 2018-05-21 19:06:51.000000000 +0200 @@ -0,0 +1,297 @@ +#.rst: +# ECMFindModuleHelpers +# -------------------- +# +# Helper macros for find modules: ecm_find_package_version_check(), +# ecm_find_package_parse_components() and +# ecm_find_package_handle_library_components(). +# +# :: +# +# ecm_find_package_version_check(<name>) +# +# Prints warnings if the CMake version or the project's required CMake version +# is older than that required by extra-cmake-modules. +# +# :: +# +# ecm_find_package_parse_components(<name> +# RESULT_VAR <variable> +# KNOWN_COMPONENTS <component1> [<component2> [...]] +# [SKIP_DEPENDENCY_HANDLING]) +# +# This macro will populate <variable> with a list of components found in +# <name>_FIND_COMPONENTS, after checking that all those components are in the +# list of KNOWN_COMPONENTS; if there are any unknown components, it will print +# an error or warning (depending on the value of <name>_FIND_REQUIRED) and call +# return(). +# +# The order of components in <variable> is guaranteed to match the order they +# are listed in the KNOWN_COMPONENTS argument. +# +# If SKIP_DEPENDENCY_HANDLING is not set, for each component the variable +# <name>_<component>_component_deps will be checked for dependent components. +# If <component> is listed in <name>_FIND_COMPONENTS, then all its (transitive) +# dependencies will also be added to <variable>. +# +# :: +# +# ecm_find_package_handle_library_components(<name> +# COMPONENTS <component> [<component> [...]] +# [SKIP_DEPENDENCY_HANDLING]) +# [SKIP_PKG_CONFIG]) +# +# Creates an imported library target for each component. The operation of this +# macro depends on the presence of a number of CMake variables. +# +# The <name>_<component>_lib variable should contain the name of this library, +# and <name>_<component>_header variable should contain the name of a header +# file associated with it (whatever relative path is normally passed to +# '#include'). <name>_<component>_header_subdir variable can be used to specify +# which subdirectory of the include path the headers will be found in. +# ecm_find_package_components() will then search for the library +# and include directory (creating appropriate cache variables) and create an +# imported library target named <name>::<component>. +# +# Additional variables can be used to provide additional information: +# +# If SKIP_PKG_CONFIG, the <name>_<component>_pkg_config variable is set, and +# pkg-config is found, the pkg-config module given by +# <name>_<component>_pkg_config will be searched for and used to help locate the +# library and header file. It will also be used to set +# <name>_<component>_VERSION. +# +# Note that if version information is found via pkg-config, +# <name>_<component>_FIND_VERSION can be set to require a particular version +# for each component. +# +# If SKIP_DEPENDENCY_HANDLING is not set, the INTERFACE_LINK_LIBRARIES property +# of the imported target for <component> will be set to contain the imported +# targets for the components listed in <name>_<component>_component_deps. +# <component>_FOUND will also be set to false if any of the compoments in +# <name>_<component>_component_deps are not found. This requires the components +# in <name>_<component>_component_deps to be listed before <component> in the +# COMPONENTS argument. +# +# The following variables will be set: +# +# ``<name>_TARGETS`` +# the imported targets +# ``<name>_LIBRARIES`` +# the found libraries +# ``<name>_INCLUDE_DIRS`` +# the combined required include directories for the components +# ``<name>_DEFINITIONS`` +# the "other" CFLAGS provided by pkg-config, if any +# ``<name>_VERSION`` +# the value of ``<name>_<component>_VERSION`` for the first component that +# has this variable set (note that components are searched for in the order +# they are passed to the macro), although if it is already set, it will not +# be altered +# +# Note that these variables are never cleared, so if +# ecm_find_package_handle_library_components() is called multiple times with +# different components (typically because of multiple find_package() calls) then +# ``<name>_TARGETS``, for example, will contain all the targets found in any +# call (although no duplicates). +# +# Since pre-1.0.0. + +#============================================================================= +# Copyright 2014 Alex Merry <[email protected]> +# +# 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 copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# 3. The name of the author may not be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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. + +include(CMakeParseArguments) + +macro(ecm_find_package_version_check module_name) + if(CMAKE_VERSION VERSION_LESS 2.8.12) + message(FATAL_ERROR "CMake 2.8.12 is required by Find${module_name}.cmake") + endif() + if(CMAKE_MINIMUM_REQUIRED_VERSION VERSION_LESS 2.8.12) + message(AUTHOR_WARNING "Your project should require at least CMake 2.8.12 to use Find${module_name}.cmake") + endif() +endmacro() + +macro(ecm_find_package_parse_components module_name) + set(ecm_fppc_options SKIP_DEPENDENCY_HANDLING) + set(ecm_fppc_oneValueArgs RESULT_VAR) + set(ecm_fppc_multiValueArgs KNOWN_COMPONENTS DEFAULT_COMPONENTS) + cmake_parse_arguments(ECM_FPPC "${ecm_fppc_options}" "${ecm_fppc_oneValueArgs}" "${ecm_fppc_multiValueArgs}" ${ARGN}) + + if(ECM_FPPC_UNPARSED_ARGUMENTS) + message(FATAL_ERROR "Unexpected arguments to ecm_find_package_parse_components: ${ECM_FPPC_UNPARSED_ARGUMENTS}") + endif() + if(NOT ECM_FPPC_RESULT_VAR) + message(FATAL_ERROR "Missing RESULT_VAR argument to ecm_find_package_parse_components") + endif() + if(NOT ECM_FPPC_KNOWN_COMPONENTS) + message(FATAL_ERROR "Missing KNOWN_COMPONENTS argument to ecm_find_package_parse_components") + endif() + if(NOT ECM_FPPC_DEFAULT_COMPONENTS) + set(ECM_FPPC_DEFAULT_COMPONENTS ${ECM_FPPC_KNOWN_COMPONENTS}) + endif() + + if(${module_name}_FIND_COMPONENTS) + set(ecm_fppc_requestedComps ${${module_name}_FIND_COMPONENTS}) + + if(NOT ECM_FPPC_SKIP_DEPENDENCY_HANDLING) + # Make sure deps are included + foreach(ecm_fppc_comp ${ecm_fppc_requestedComps}) + foreach(ecm_fppc_dep_comp ${${module_name}_${ecm_fppc_comp}_component_deps}) + list(FIND ecm_fppc_requestedComps "${ecm_fppc_dep_comp}" ecm_fppc_index) + if("${ecm_fppc_index}" STREQUAL "-1") + if(NOT ${module_name}_FIND_QUIETLY) + message(STATUS "${module_name}: ${ecm_fppc_comp} requires ${${module_name}_${ecm_fppc_comp}_component_deps}") + endif() + list(APPEND ecm_fppc_requestedComps "${ecm_fppc_dep_comp}") + endif() + endforeach() + endforeach() + else() + message(STATUS "Skipping dependency handling for ${module_name}") + endif() + list(REMOVE_DUPLICATES ecm_fppc_requestedComps) + + # This makes sure components are listed in the same order as + # KNOWN_COMPONENTS (potentially important for inter-dependencies) + set(${ECM_FPPC_RESULT_VAR}) + foreach(ecm_fppc_comp ${ECM_FPPC_KNOWN_COMPONENTS}) + list(FIND ecm_fppc_requestedComps "${ecm_fppc_comp}" ecm_fppc_index) + if(NOT "${ecm_fppc_index}" STREQUAL "-1") + list(APPEND ${ECM_FPPC_RESULT_VAR} "${ecm_fppc_comp}") + list(REMOVE_AT ecm_fppc_requestedComps ${ecm_fppc_index}) + endif() + endforeach() + # if there are any left, they are unknown components + if(ecm_fppc_requestedComps) + set(ecm_fppc_msgType STATUS) + if(${module_name}_FIND_REQUIRED) + set(ecm_fppc_msgType FATAL_ERROR) + endif() + if(NOT ${module_name}_FIND_QUIETLY) + message(${ecm_fppc_msgType} "${module_name}: requested unknown components ${ecm_fppc_requestedComps}") + endif() + return() + endif() + else() + set(${ECM_FPPC_RESULT_VAR} ${ECM_FPPC_DEFAULT_COMPONENTS}) + endif() +endmacro() + +macro(ecm_find_package_handle_library_components module_name) + set(ecm_fpwc_options SKIP_PKG_CONFIG SKIP_DEPENDENCY_HANDLING) + set(ecm_fpwc_oneValueArgs) + set(ecm_fpwc_multiValueArgs COMPONENTS) + cmake_parse_arguments(ECM_FPWC "${ecm_fpwc_options}" "${ecm_fpwc_oneValueArgs}" "${ecm_fpwc_multiValueArgs}" ${ARGN}) + + if(ECM_FPWC_UNPARSED_ARGUMENTS) + message(FATAL_ERROR "Unexpected arguments to ecm_find_package_handle_components: ${ECM_FPWC_UNPARSED_ARGUMENTS}") + endif() + if(NOT ECM_FPWC_COMPONENTS) + message(FATAL_ERROR "Missing COMPONENTS argument to ecm_find_package_handle_components") + endif() + + include(FindPackageHandleStandardArgs) + find_package(PkgConfig) + foreach(ecm_fpwc_comp ${ECM_FPWC_COMPONENTS}) + set(ecm_fpwc_dep_vars) + set(ecm_fpwc_dep_targets) + if(NOT SKIP_DEPENDENCY_HANDLING) + foreach(ecm_fpwc_dep ${${module_name}_${ecm_fpwc_comp}_component_deps}) + list(APPEND ecm_fpwc_dep_vars "${module_name}_${ecm_fpwc_dep}_FOUND") + list(APPEND ecm_fpwc_dep_targets "${module_name}::${ecm_fpwc_dep}") + endforeach() + endif() + + if(NOT ECM_FPWC_SKIP_PKG_CONFIG AND ${module_name}_${ecm_fpwc_comp}_pkg_config) + pkg_check_modules(PKG_${module_name}_${ecm_fpwc_comp} QUIET + ${${module_name}_${ecm_fpwc_comp}_pkg_config}) + endif() + + find_path(${module_name}_${ecm_fpwc_comp}_INCLUDE_DIR + NAMES ${${module_name}_${ecm_fpwc_comp}_header} + HINTS ${PKG_${module_name}_${ecm_fpwc_comp}_INCLUDE_DIRS} + PATH_SUFFIXES ${${module_name}_${ecm_fpwc_comp}_header_subdir} + ) + find_library(${module_name}_${ecm_fpwc_comp}_LIBRARY + NAMES ${${module_name}_${ecm_fpwc_comp}_lib} + HINTS ${PKG_${module_name}_${ecm_fpwc_comp}_LIBRARY_DIRS} + ) + + set(${module_name}_${ecm_fpwc_comp}_VERSION "${PKG_${module_name}_${ecm_fpwc_comp}_VERSION}") + if(NOT ${module_name}_VERSION) + set(${module_name}_VERSION ${${module_name}_${ecm_fpwc_comp}_VERSION}) + endif() + + find_package_handle_standard_args(${module_name}_${ecm_fpwc_comp} + FOUND_VAR + ${module_name}_${ecm_fpwc_comp}_FOUND + REQUIRED_VARS + ${module_name}_${ecm_fpwc_comp}_LIBRARY + ${module_name}_${ecm_fpwc_comp}_INCLUDE_DIR + ${ecm_fpwc_dep_vars} + VERSION_VAR + ${module_name}_${ecm_fpwc_comp}_VERSION + ) + + mark_as_advanced( + ${module_name}_${ecm_fpwc_comp}_LIBRARY + ${module_name}_${ecm_fpwc_comp}_INCLUDE_DIR + ) + + if(${module_name}_${ecm_fpwc_comp}_FOUND) + list(APPEND ${module_name}_LIBRARIES + "${${module_name}_${ecm_fpwc_comp}_LIBRARY}") + list(APPEND ${module_name}_INCLUDE_DIRS + "${${module_name}_${ecm_fpwc_comp}_INCLUDE_DIR}") + set(${module_name}_DEFINITIONS + ${${module_name}_DEFINITIONS} + ${PKG_${module_name}_${ecm_fpwc_comp}_DEFINITIONS}) + if(NOT TARGET ${module_name}::${ecm_fpwc_comp}) + add_library(${module_name}::${ecm_fpwc_comp} UNKNOWN IMPORTED) + set_target_properties(${module_name}::${ecm_fpwc_comp} PROPERTIES + IMPORTED_LOCATION "${${module_name}_${ecm_fpwc_comp}_LIBRARY}" + INTERFACE_COMPILE_OPTIONS "${PKG_${module_name}_${ecm_fpwc_comp}_DEFINITIONS}" + INTERFACE_INCLUDE_DIRECTORIES "${${module_name}_${ecm_fpwc_comp}_INCLUDE_DIR}" + INTERFACE_LINK_LIBRARIES "${ecm_fpwc_dep_targets}" + ) + endif() + list(APPEND ${module_name}_TARGETS + "${module_name}::${ecm_fpwc_comp}") + endif() + endforeach() + if(${module_name}_LIBRARIES) + list(REMOVE_DUPLICATES ${module_name}_LIBRARIES) + endif() + if(${module_name}_INCLUDE_DIRS) + list(REMOVE_DUPLICATES ${module_name}_INCLUDE_DIRS) + endif() + if(${module_name}_DEFINITIONS) + list(REMOVE_DUPLICATES ${module_name}_DEFINITIONS) + endif() + if(${module_name}_TARGETS) + list(REMOVE_DUPLICATES ${module_name}_TARGETS) + endif() +endmacro() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lxqt-build-tools-0.4.0/cmake/modules/LXQtCompilerSettings.cmake new/lxqt-build-tools-0.5.0/cmake/modules/LXQtCompilerSettings.cmake --- old/lxqt-build-tools-0.4.0/cmake/modules/LXQtCompilerSettings.cmake 2017-09-22 23:29:22.000000000 +0200 +++ new/lxqt-build-tools-0.5.0/cmake/modules/LXQtCompilerSettings.cmake 2018-05-21 19:06:51.000000000 +0200 @@ -73,6 +73,7 @@ #----------------------------------------------------------------------------- add_definitions( -DQT_USE_QSTRINGBUILDER + -DQT_NO_FOREACH ) if (CMAKE_BUILD_TYPE MATCHES "Debug") @@ -92,6 +93,7 @@ # Set visibility to hidden to hide symbols, unless they're exported manually # in the code #----------------------------------------------------------------------------- +set(CMAKE_C_VISIBILITY_PRESET hidden) set(CMAKE_CXX_VISIBILITY_PRESET hidden) set(CMAKE_VISIBILITY_INLINES_HIDDEN 1) @@ -159,7 +161,7 @@ # "gcc-ar" and "gcc-ranlib" should be used instead of "ar" and "ranlib". # references: # https://gcc.gnu.org/gcc-4.9/changes.html - # http://hubicka.blogspot.tw/2014/04/linktime-optimization-in-gcc-2-firefox.html + # https://hubicka.blogspot.tw/2014/04/linktime-optimization-in-gcc-2-firefox.html # https://github.com/monero-project/monero/pull/1065/commits/1855213c8fb8f8727f4107716aab8e7ba826462b if (NOT CMAKE_CXX_COMPILER_VERSION VERSION_LESS "4.9.0") # gcc >= 4.9 set(CMAKE_AR "gcc-ar") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lxqt-build-tools-0.4.0/cmake/modules/LXQtCreatePkgConfigFile.cmake new/lxqt-build-tools-0.5.0/cmake/modules/LXQtCreatePkgConfigFile.cmake --- old/lxqt-build-tools-0.4.0/cmake/modules/LXQtCreatePkgConfigFile.cmake 2017-09-22 23:29:22.000000000 +0200 +++ new/lxqt-build-tools-0.5.0/cmake/modules/LXQtCreatePkgConfigFile.cmake 2018-05-21 19:06:51.000000000 +0200 @@ -232,7 +232,7 @@ if (DEFINED USER_INSTALL) # FreeBSD loves to install files to different locations - # http://www.freebsd.org/doc/handbook/dirstructure.html + # https://www.freebsd.org/doc/handbook/dirstructure.html if(${CMAKE_SYSTEM_NAME} STREQUAL "FreeBSD") set(_PKGCONFIG_INSTALL_DESTINATION "libdata/pkgconfig") else() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lxqt-build-tools-0.4.0/cmake/modules/LXQtPreventInSourceBuilds.cmake new/lxqt-build-tools-0.5.0/cmake/modules/LXQtPreventInSourceBuilds.cmake --- old/lxqt-build-tools-0.4.0/cmake/modules/LXQtPreventInSourceBuilds.cmake 1970-01-01 01:00:00.000000000 +0100 +++ new/lxqt-build-tools-0.5.0/cmake/modules/LXQtPreventInSourceBuilds.cmake 2018-05-21 19:06:51.000000000 +0200 @@ -0,0 +1,65 @@ +#============================================================================= +# Copyright (c) 2018 Luís Pereira <[email protected]> +# +# 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 copyright +# notice, this list of conditions and the following disclaimer. +# 2. Redistributions in binary form must reproduce the copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# 3. The name of the author may not be used to endorse or promote products +# derived from this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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. +#============================================================================= + +function(lxqt_prevent_in_source_builds) + + # Handle smarties with symlinks + get_filename_component(srcdir "${CMAKE_SOURCE_DIR}" REALPATH) + get_filename_component(bindir "${CMAKE_BINARY_DIR}" REALPATH) + + if("${srcdir}" STREQUAL "${bindir}") + # We are in a in source build + message("##############################################################") + message("# In Source Build detected.") + message("# LXQt does not support in source builds.") + message("# Out of source build is required.") + message("#") + message("# The general approach to out of source builds is:") + message("# mkdir build") + message("# cd build") + message("# cmake <path to sources>") + message("# make") + message("#") + message("# An in source build was attemped. Some files were created.") + message("# Use 'git status' to check them. Remove them with:") + message("# cd <path to sources>") + message("#") + message("# # Don’t actually remove anything, just show what would be done") + message("# git clean -n -d") + message("#") + message("# # Actually remove the files") + message("# git clean -f -d") + message("#") + message("# checkout files out of the index") + message("# git checkout --") + message("##############################################################") + + message(FATAL_ERROR "Aborting configuration") + endif() +endfunction() + +lxqt_prevent_in_source_builds() diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lxqt-build-tools-0.4.0/cmake/modules/LXQtTranslateDesktop.cmake new/lxqt-build-tools-0.5.0/cmake/modules/LXQtTranslateDesktop.cmake --- old/lxqt-build-tools-0.4.0/cmake/modules/LXQtTranslateDesktop.cmake 2017-09-22 23:29:22.000000000 +0200 +++ new/lxqt-build-tools-0.5.0/cmake/modules/LXQtTranslateDesktop.cmake 2018-05-21 19:06:51.000000000 +0200 @@ -93,7 +93,7 @@ file(WRITE ${_txFile} "[ -f ${_inFile} ] || exit 0\n" - "echo '[lxde-qt.${_fileName}_${_fileType}]'\n" + "echo '[lxqt.${_fileName}_${_fileType}]'\n" "echo 'type = DESKTOP'\n" "echo 'source_lang = en'\n" "echo 'source_file = ${_tx_inFile}'\n" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lxqt-build-tools-0.4.0/cmake/modules/LXQtTranslateTs.cmake new/lxqt-build-tools-0.5.0/cmake/modules/LXQtTranslateTs.cmake --- old/lxqt-build-tools-0.4.0/cmake/modules/LXQtTranslateTs.cmake 2017-09-22 23:29:22.000000000 +0200 +++ new/lxqt-build-tools-0.5.0/cmake/modules/LXQtTranslateTs.cmake 2018-05-21 19:06:51.000000000 +0200 @@ -79,7 +79,7 @@ # # TRANSLATIONS_REPO External git repository with translations - only the ${TEMPLATE} directory # is pulled (using the "sparse checkout"). -# Optional (defaults to "https://github.com/lxde/lxqt-l10n.git"). +# Optional (defaults to "https://github.com/lxqt/lxqt-l10n.git"). # # TRANSLATIONS_REFSPEC Optional refspec of external repository. Used in git pull. # Defaults to "master". @@ -142,7 +142,7 @@ endif() if (NOT DEFINED TR_TRANSLATIONS_REPO) - set(TR_TRANSLATIONS_REPO "https://github.com/lxde/lxqt-l10n.git") + set(TR_TRANSLATIONS_REPO "https://github.com/lxqt/lxqt-l10n.git") endif() if (NOT DEFINED TR_TRANSLATIONS_REFSPEC)
