From 2effed098966bb3d2138261f5a3f2d48b03f7081 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lisandro=20Dami=C3=A1n=20Nicanor=20P=C3=A9rez=20Meyer?= Date: Sat, 10 Nov 2018 13:20:31 -0300 Subject: [PATCH 1/5] Add Helmut Grohne's script to generate toolchain files --- debian/changelog | 5 ++++ debian/cmake.install | 1 + debian/debtoolchainfilegen | 54 ++++++++++++++++++++++++++++++++++++++ 3 files changed, 60 insertions(+) create mode 100755 debian/debtoolchainfilegen diff --git a/debian/changelog b/debian/changelog index 576867287..66c4cc6ad 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,8 +1,13 @@ cmake (3.12.3-4) UNRELEASED; urgency=medium + [ Jelmer Vernooij ] * Use secure copyright file specification URI. * Trim trailing whitespace. + [ Lisandro Damián Nicanor Pérez Meyer ] + * Add Helmut Grohne's script to generate toolchain files based on + Ubuntu/Debian's Multi-Arch as debtoolchainfilegen. + -- Jelmer Vernooij Sun, 28 Oct 2018 11:29:48 +0000 cmake (3.12.3-3) unstable; urgency=medium diff --git a/debian/cmake.install b/debian/cmake.install index 2b872c6e2..748f99cff 100644 --- a/debian/cmake.install +++ b/debian/cmake.install @@ -1,3 +1,4 @@ +debian/debtoolchainfilegen usr/share/cmake/ usr/bin/cmake usr/bin/cpack usr/bin/ctest diff --git a/debian/debtoolchainfilegen b/debian/debtoolchainfilegen new file mode 100755 index 000000000..9e9a14af6 --- /dev/null +++ b/debian/debtoolchainfilegen @@ -0,0 +1,54 @@ +#!/bin/sh + +# +# Copyright Helmut Grohne +# +# 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. +# +# Usage: pass the host architecture as a parameter: +# +# ./debtoolchainfilegen armhf > cmake_toolchain_armhf.cmake + +ARCH=$1 + +DEB_HOST_GNU_TYPE=$(dpkg-architecture -f "-a$1" -qDEB_HOST_GNU_TYPE) +DEB_HOST_GNU_CPU=$(dpkg-architecture -f "-a$1" -qDEB_HOST_GNU_CPU) +case "$(dpkg-architecture -f "-a$1" -qDEB_HOST_ARCH_OS)" in + linux) system_name=Linux; ;; + kfreebsd) system_name=kFreeBSD; ;; + hurd) system_name=GNU; ;; + *) exit 1; ;; +esac + +cat < Date: Wed, 14 Nov 2018 10:29:41 -0300 Subject: [PATCH 2/5] Add year of copyright in license. --- debian/debtoolchainfilegen | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/debian/debtoolchainfilegen b/debian/debtoolchainfilegen index 9e9a14af6..84d66e836 100755 --- a/debian/debtoolchainfilegen +++ b/debian/debtoolchainfilegen @@ -1,7 +1,7 @@ #!/bin/sh # -# Copyright Helmut Grohne +# Copyright 2018 Helmut Grohne # # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: From 098b7be9689863ec820819104e3ae598ef18c639 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lisandro=20Dami=C3=A1n=20Nicanor=20P=C3=A9rez=20Meyer?= Date: Wed, 14 Nov 2018 10:30:03 -0300 Subject: [PATCH 3/5] Add copyright entry in debian/copyright. --- debian/copyright | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/debian/copyright b/debian/copyright index efcfdfa7a..fc6570474 100644 --- a/debian/copyright +++ b/debian/copyright @@ -27,6 +27,10 @@ Copyright: 2001-2006 A. Maitland Bottoms 2014 Felix Geyer License: BSD-3-clause +Files: debian/debtoolchainfilegen +Copyright: 2018 Helmut Grohne +License: BSD-2-clause + Files: Source/LexerParser/cmFortranParserTokens.h Copyright: 1984, 1989-1990, 2000-2011 Free Software Foundation, Inc. License: GPL-3+with_exception @@ -98,6 +102,31 @@ Copyright: 1995-2005 Jean-loup Gailly 1995-2005 Mark Adler License: zlib +License: BSD-2-clause + Copyright 2018 Helmut Grohne + . + 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. + License: BSD-3-clause Copyright (c) 2002 Kitware, Inc., Insight Consortium All rights reserved. From 6bde31bd6212435afe0aafd7b6246aecadd8b49c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lisandro=20Dami=C3=A1n=20Nicanor=20P=C3=A9rez=20Meyer?= Date: Wed, 14 Nov 2018 10:38:39 -0300 Subject: [PATCH 4/5] Also set QMAKE_EXECUTABLE. While not strictly-cmake it will help to simplify qmake usage withing CMake while crosbuilding. --- debian/debtoolchainfilegen | 1 + 1 file changed, 1 insertion(+) diff --git a/debian/debtoolchainfilegen b/debian/debtoolchainfilegen index 84d66e836..769157469 100755 --- a/debian/debtoolchainfilegen +++ b/debian/debtoolchainfilegen @@ -51,4 +51,5 @@ set(CMAKE_C_COMPILER "$DEB_HOST_GNU_TYPE-gcc") set(CMAKE_CXX_COMPILER "$DEB_HOST_GNU_TYPE-g++") set(PKG_CONFIG_EXECUTABLE "$DEB_HOST_GNU_TYPE-pkg-config") set(PKGCONFIG_EXECUTABLE "$DEB_HOST_GNU_TYPE-pkg-config") +set(QMAKE_EXECUTABLE "$DEB_HOST_GNU_TYPE-qmake") EOF From 895179674130d73fc768dc79ef3dc47b72b5710a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lisandro=20Dami=C3=A1n=20Nicanor=20P=C3=A9rez=20Meyer?= Date: Wed, 14 Nov 2018 10:39:45 -0300 Subject: [PATCH 5/5] Print a usage message when invoked without parameters. Thanks Felix Geyer for the tip. --- debian/debtoolchainfilegen | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/debian/debtoolchainfilegen b/debian/debtoolchainfilegen index 769157469..27cf8eeb2 100755 --- a/debian/debtoolchainfilegen +++ b/debian/debtoolchainfilegen @@ -29,6 +29,12 @@ # # ./debtoolchainfilegen armhf > cmake_toolchain_armhf.cmake +if [ -z "$1" ] +then + echo "Usage: debtoolchainfilegen (arch) > cmake_toolchain_.cmake" + exit 1 +fi + ARCH=$1 DEB_HOST_GNU_TYPE=$(dpkg-architecture -f "-a$1" -qDEB_HOST_GNU_TYPE)