svn commit: r402617 - in branches/2015Q4/audio/libkcompactdisc: . files
Raphael Kubo da Costa
rakuco at FreeBSD.org
Sun Nov 29 19:27:45 UTC 2015
Author: rakuco
Date: Sun Nov 29 19:27:43 2015
New Revision: 402617
URL: https://svnweb.freebsd.org/changeset/ports/402617
Log:
MFH: r402530 r402545
Add upstream patch to fix the build with clang + ALSA option.
Extend the compiler check so that the code is built with -std=c99, which is
required by the ALSA headers. Bump PORTREVISION because this also changes
the build flags for GCC users.
PR: 204858
Fix the ALSA=OFF build after r402530.
Both extrapatch-no_alsa and patch-git_d6927712 touch the same region of
CMakeLists.txt, and the latter was failing to apply when the ALSA option was
disabled.
Fix it by keeping patch-git_d6927712 (which fixes the CFLAGS values
regardless of the value of the ALSA option) and replacing extrapatch-no_alsa
with some post-patch/post-configure changes that achieve the same end
result.
PR: 204858
Approved by: ports-secteam (feld)
Added:
branches/2015Q4/audio/libkcompactdisc/files/patch-git_d6927712
- copied unchanged from r402530, head/audio/libkcompactdisc/files/patch-git_d6927712
Deleted:
branches/2015Q4/audio/libkcompactdisc/files/extrapatch-no_alsa
Modified:
branches/2015Q4/audio/libkcompactdisc/Makefile
Directory Properties:
branches/2015Q4/ (props changed)
Modified: branches/2015Q4/audio/libkcompactdisc/Makefile
==============================================================================
--- branches/2015Q4/audio/libkcompactdisc/Makefile Sun Nov 29 19:12:03 2015 (r402616)
+++ branches/2015Q4/audio/libkcompactdisc/Makefile Sun Nov 29 19:27:43 2015 (r402617)
@@ -3,6 +3,7 @@
PORTNAME= libkcompactdisc
PORTVERSION= ${KDE4_VERSION}
+PORTREVISION= 1
CATEGORIES= audio kde
MASTER_SITES= KDE/${KDE4_BRANCH}/${PORTVERSION}/src
DIST_SUBDIR= KDE/${PORTVERSION}
@@ -18,6 +19,12 @@ USE_LDCONFIG= yes
OPTIONS_DEFINE= ALSA
ALSA_LIB_DEPENDS= libasound.so:${PORTSDIR}/audio/alsa-lib
-ALSA_EXTRA_PATCHES_OFF= ${FILESDIR}/extrapatch-no_alsa
+
+post-patch-ALSA-off:
+ ${REINPLACE_CMD} -e '/find_package(Alsa)/d' \
+ -e '/alsa_configure_file/d' ${WRKSRC}/CMakeLists.txt
+
+post-configure-ALSA-off:
+ ${TOUCH} ${CONFIGURE_WRKSRC}/config-alsa.h
.include <bsd.port.mk>
Copied: branches/2015Q4/audio/libkcompactdisc/files/patch-git_d6927712 (from r402530, head/audio/libkcompactdisc/files/patch-git_d6927712)
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ branches/2015Q4/audio/libkcompactdisc/files/patch-git_d6927712 Sun Nov 29 19:27:43 2015 (r402617, copy of r402530, head/audio/libkcompactdisc/files/patch-git_d6927712)
@@ -0,0 +1,33 @@
+Makes the port build with clang when the ALSA option is on.
+
+commit d69277128afb60999e420c533e826b0061fc40eb
+Author: Raphael Kubo da Costa <rakuco at FreeBSD.org>
+Date: Sat Nov 28 14:27:45 2015 +0100
+
+ Extend -std=c99 compiler flag to clang.
+
+ The ALSA headers use features such as the `inline' keyword that require
+ C99 support. Commit e36c628 ("Fix compilation: ALSA no longer compiles
+ with -std=c90") started passing it to the compiler when GCC is used.
+
+ We now do the same for clang with a better comment, and also append the
+ flag to the existing CMAKE_C_FLAGS, otherwise we lose several other
+ options which are set by FindKDE4Internal.cmake.
+
+--- CMakeLists.txt
++++ CMakeLists.txt
+@@ -7,9 +7,12 @@ include(MacroLibrary)
+ add_definitions(${QT_DEFINITIONS} ${KDE4_DEFINITIONS})
+
+ ## Compiler flags
+-if(CMAKE_COMPILER_IS_GNUCXX)
+- set(CMAKE_C_FLAGS "-std=c99") ## ALSA no longer compiles with -std=c90, see https://bugzilla.novell.com/show_bug.cgi?id=817077
++if (CMAKE_COMPILER_IS_GNUCXX OR CMAKE_CXX_COMPILER_ID STREQUAL "Clang")
++ # ALSA does not build with the default -std=iso9899:1990 from FindKDE4Internal.cmake.
++ # See https://bugzilla.novell.com/show_bug.cgi?id=817077 for more information.
++ set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -std=c99")
+ endif()
++
+ find_package(Alsa)
+ alsa_configure_file(${CMAKE_CURRENT_BINARY_DIR}/config-alsa.h)
+
More information about the svn-ports-all
mailing list