From 1bdac35cd58d18186c4f0454bcaab4b03c1d42ce Mon Sep 17 00:00:00 2001 From: Petr Písař Date: Feb 23 2018 14:07:37 +0000 Subject: Do not require C++ for build ing C tests --- diff --git a/Alien-Build-1.36-corpus-cmake-libpalindrome-is-in-C.patch b/Alien-Build-1.36-corpus-cmake-libpalindrome-is-in-C.patch new file mode 100644 index 0000000..a7a2882 --- /dev/null +++ b/Alien-Build-1.36-corpus-cmake-libpalindrome-is-in-C.patch @@ -0,0 +1,62 @@ +From 0ad9a700c59d0b13b19791381fc531bb7e5d979a Mon Sep 17 00:00:00 2001 +From: perl-Git-CPAN-Patch Owner +Date: Fri, 23 Feb 2018 14:23:30 +0100 +Subject: [PATCH] corpus/cmake-libpalindrome is in C +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +CMake defaults to C++ language. If C++ compiler is not installed, cmake dies +when performing t/alien_build_plugin_build_cmake.t test: + +$ perl -Ilib t/alien_build_plugin_build_cmake.t +not ok 1 - basic { + ok 1 - alienfile compiles + not ok 2 - alien builds okay + # Failed test 'alien builds okay' + # at t/alien_build_plugin_build_cmake.t line 68. + # Alien::Build::Plugin::Core::Download> downloaded cmake-libpalindrome + # Alien::Build::Util> Alien::Build> cp /tmp/Alien-Build/corpus/cmake-libpalindrome/LICENSE /tmp/T1M9kh3zs6/root/build_bDC_/LICENSE + # Alien::Build::Util> Alien::Build> cp /tmp/Alien-Build/corpus/cmake-libpalindrome/CMakeLists.txt /tmp/T1M9kh3zs6/root/build_bDC_/CMakeLists.txt + # Alien::Build::Util> mkdir -p /tmp/T1M9kh3zs6/root/build_bDC_/palx + # Alien::Build::Util> Alien::Build> cp /tmp/Alien-Build/corpus/cmake-libpalindrome/palx/main.c /tmp/T1M9kh3zs6/root/build_bDC_/palx/main.c + # Alien::Build::Util> Alien::Build> cp /tmp/Alien-Build/corpus/cmake-libpalindrome/palx/CMakeLists.txt /tmp/T1M9kh3zs6/root/build_bDC_/palx/CMakeLists.txt + # Alien::Build::Util> mkdir -p /tmp/T1M9kh3zs6/root/build_bDC_/libpalindrome + # Alien::Build::Util> Alien::Build> cp /tmp/Alien-Build/corpus/cmake-libpalindrome/libpalindrome/palindrome.c /tmp/T1M9kh3zs6/root/build_bDC_/libpalindrome/palindrome.c + # Alien::Build::Util> Alien::Build> cp /tmp/Alien-Build/corpus/cmake-libpalindrome/libpalindrome/libpalindrome.h /tmp/T1M9kh3zs6/root/build_bDC_/libpalindrome/libpalindrome.h + # Alien::Build::Util> Alien::Build> cp /tmp/Alien-Build/corpus/cmake-libpalindrome/libpalindrome/CMakeLists.txt /tmp/T1M9kh3zs6/root/build_bDC_/libpalindrome/CMakeLists.txt + # Alien::Build::CommandSequence> + /usr/bin/cmake -G Unix Makefiles -DCMAKE_POSITION_INDEPENDENT_CODE:BOOL=true -DCMAKE_INSTALL_PREFIX:PATH=/tmp/T1M9kh3zs6/prefix -DCMAKE_MAKE_PROGRAM:PATH=make /tmp/T1M9kh3zs6/root/build_bDC_ + # Re-run cmake no build system arguments + # -- The C compiler identification is GNU 8.0.1 + # -- The CXX compiler identification is unknown + # -- Check for working C compiler: /usr/bin/cc + # -- Check for working C compiler: /usr/bin/cc -- works + # -- Detecting C compiler ABI info + # -- Detecting C compiler ABI info - done + # -- Detecting C compile features + # -- Detecting C compile features - done + # CMake Error at CMakeLists.txt:2 (project): + # No CMAKE_CXX_COMPILER could be found. + +This patch fixes the corpus/cmake-libpalindrome's CMakeLists.txt to specify +libpalindrome is written in C. This frees Alien-Build tests from dependncy on +C++ compiler. + +Signed-off-by: Petr Písař +--- + corpus/cmake-libpalindrome/CMakeLists.txt | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/corpus/cmake-libpalindrome/CMakeLists.txt b/corpus/cmake-libpalindrome/CMakeLists.txt +index dcfec13..09527c3 100644 +--- a/corpus/cmake-libpalindrome/CMakeLists.txt ++++ b/corpus/cmake-libpalindrome/CMakeLists.txt +@@ -1,4 +1,4 @@ + cmake_minimum_required (VERSION 3.0.0) +-project (libpalindrome) ++project (libpalindrome C) + add_subdirectory (libpalindrome) + add_subdirectory (palx) +-- +2.13.6 + diff --git a/perl-Alien-Build.spec b/perl-Alien-Build.spec index 3d9c8d0..006becc 100644 --- a/perl-Alien-Build.spec +++ b/perl-Alien-Build.spec @@ -3,7 +3,7 @@ Name: perl-Alien-Build Version: 1.36 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Build external dependencies for use in CPAN License: GPL+ or Artistic URL: http://search.cpan.org/dist/Alien-Build/ @@ -11,6 +11,9 @@ Source0: http://www.cpan.org/authors/id/P/PL/PLICEASE/Alien-Build-%{versi # Support only the most advanced pkgconfig implementation, # the files are deleted in prep section Patch0: Alien-Build-1.36-Remove-redundant-pkgconfig-implementations.patch +# Do not require C++ for build ing C tests, bug #923024, +# +Patch1: Alien-Build-1.36-corpus-cmake-libpalindrome-is-in-C.patch BuildArch: noarch BuildRequires: make BuildRequires: perl-generators @@ -158,6 +161,7 @@ client, and work closely with Alien::Base which is used at run time. %patch0 -p1 rm lib/Alien/Build/Plugin/PkgConfig/{CommandLine,PP}.pm rm t/alien_build_plugin_pkgconfig_{commandline,pp}.t +%patch1 -p1 %build perl Makefile.PL INSTALLDIRS=vendor NO_PACKLIST=1 @@ -177,6 +181,9 @@ make test %{_mandir}/man3/* %changelog +* Fri Feb 23 2018 Petr Pisar - 1.36-2 +- Do not require C++ for build ing C tests (bug #923024) + * Tue Feb 06 2018 Petr Pisar - 1.36-1 - 1.36 bump