diff options
author | Slávek Banko <slavek.banko@axis.cz> | 2018-08-06 01:30:47 +0200 |
---|---|---|
committer | Slávek Banko <slavek.banko@axis.cz> | 2018-08-06 01:31:02 +0200 |
commit | 9010047840d810d9ccba3d00b7943a842e125291 (patch) | |
tree | 7698717495c9bc52be2bc8ab526071f3063b466d /freebsd/dependencies/akode | |
parent | b4f5663d87c16e08aaef66346f4b22eba2de80bd (diff) | |
download | tde-packaging-9010047840d810d9ccba3d00b7943a842e125291.tar.gz tde-packaging-9010047840d810d9ccba3d00b7943a842e125291.zip |
FreeBSD: Update for final release R14.0.5r14.0.5
Additional patches due to stricter C++11 in Clang
A new mkspec for Clang is used to build TQt
Akode is now part of the TDE repository
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
Diffstat (limited to 'freebsd/dependencies/akode')
10 files changed, 6 insertions, 4325 deletions
diff --git a/freebsd/dependencies/akode/Makefile b/freebsd/dependencies/akode/Makefile index 84a26dd35..880fbebb5 100644 --- a/freebsd/dependencies/akode/Makefile +++ b/freebsd/dependencies/akode/Makefile @@ -7,14 +7,11 @@ PORTNAME= akode COMMENT= akode plugin for aRts +TDE_PREVERSION= MASTER_SITE_SUBDIR= a/${PORTNAME} -PORTVERSION= 2.0.2 -PORTREVISION= 7 -PORTEPOCH= 1 +PORTREVISION= 0 CATEGORIES= audio -MASTER_SITES= ${MASTER_SITE_TDE_DEPS} -DISTNAME= ${PORTNAME}_${PORTVERSION} -DISTSRC= ${PORTNAME}-${PORTVERSION} +DISTSRC= ${PORTNAME}-trinity-${TDE_VERSION}${TDE_PREVERSION} DIST_SUBDIR= TDE/dependencies PREFIX= ${LOCALBASE} diff --git a/freebsd/dependencies/akode/distinfo b/freebsd/dependencies/akode/distinfo index a2dd4463e..6371412c1 100644 --- a/freebsd/dependencies/akode/distinfo +++ b/freebsd/dependencies/akode/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1495991804 -SHA256 (TDE/dependencies/akode_2.0.2.orig.tar.xz) = f49cde4083d8bc2a2128f8f5f5e322daa887170b761bf71def475bd366774b11 -SIZE (TDE/dependencies/akode_2.0.2.orig.tar.xz) = 326116 +TIMESTAMP = 1532796157 +SHA256 (TDE/dependencies/akode_14.0.5.orig.tar.xz) = 4cbef6ee7dbb13ab73c19605762b59333da9cdd3c0b5ecddd0514c20eda7ccac +SIZE (TDE/dependencies/akode_14.0.5.orig.tar.xz) = 166928 diff --git a/freebsd/dependencies/akode/files/patch-a00-amd64_libflac8_fix.diff b/freebsd/dependencies/akode/files/patch-a00-amd64_libflac8_fix.diff deleted file mode 100644 index d0334a3a4..000000000 --- a/freebsd/dependencies/akode/files/patch-a00-amd64_libflac8_fix.diff +++ /dev/null @@ -1,11 +0,0 @@ ---- a/akode/plugins/xiph_decoder/flac113_decoder.cpp -+++ b/akode/plugins/xiph_decoder/flac113_decoder.cpp -@@ -108,7 +108,7 @@ - static FLAC__StreamDecoderReadStatus flac_read_callback( - const FLAC__StreamDecoder *, - FLAC__byte buffer[], -- unsigned *bytes, -+ size_t *bytes, - void *client_data) - { - FLACDecoder::private_data *data = (FLACDecoder::private_data*)client_data; diff --git a/freebsd/dependencies/akode/files/patch-a01-clang.diff b/freebsd/dependencies/akode/files/patch-a01-clang.diff deleted file mode 100644 index 309665bab..000000000 --- a/freebsd/dependencies/akode/files/patch-a01-clang.diff +++ /dev/null @@ -1,61 +0,0 @@ -Index: b/akode/lib/converter.cpp -=================================================================== ---- a/akode/lib/converter.cpp -+++ b/akode/lib/converter.cpp -@@ -26,7 +26,7 @@ - - Converter::Converter(int sample_width) : m_sample_width(sample_width) {} - --template<typename T, typename S, template<typename T> class ArithmT, template<typename S> class ArithmS> -+template<typename T, typename S, template<typename T_Type> class ArithmT, template<typename S_Type> class ArithmS> - static bool __doFrameFP(AudioFrame* in, AudioFrame* out, int sample_width) - { - AudioConfiguration config = *in; -Index: b/akode/lib/crossfader.cpp -=================================================================== ---- a/akode/lib/crossfader.cpp -+++ b/akode/lib/crossfader.cpp -@@ -27,7 +27,7 @@ - CrossFader::CrossFader(unsigned int time) : time(time),pos(0) {} - - // T is the input/output type, S is the fast arithmetics type, Div is a division method --template<typename T, typename S, template<typename S> class Arithm> -+template<typename T, typename S, template<typename S_Type> class Arithm> - static bool _doFrame(AudioFrame* in, int& pos, AudioFrame* frame) - { - T** indata1 = (T**)in->data; -@@ -66,7 +66,7 @@ - } - - // T is the input/output type, S is the fast arithmetics type, Arithm defines devisions --template<typename T, typename S, template<typename S> class Arithm> -+template<typename T, typename S, template<typename S_Type> class Arithm> - static bool _readFrame(AudioFrame* in, int& pos, AudioFrame* frame) - { - T** indata = (T**)frame->data; -Index: b/akode/lib/fast_resampler.cpp -=================================================================== ---- a/akode/lib/fast_resampler.cpp -+++ b/akode/lib/fast_resampler.cpp -@@ -37,7 +37,7 @@ - // A fast resampling by linear interpolation - // I assume you know binary arithmetics and convertions if you're reading this - // T is the input/output type, Arithm defines the used arithmetic --template<typename T, typename S, template<typename S> class Arithm> -+template<typename T, typename S, template<typename S_Type> class Arithm> - static bool _doBuffer(AudioFrame* in, AudioFrame* out, float speed, unsigned sample_rate) - { - unsigned long vt_pos_start = 0; // virtual positions of new sample -Index: b/akode/lib/volumefilter.cpp -=================================================================== ---- a/akode/lib/volumefilter.cpp -+++ b/akode/lib/volumefilter.cpp -@@ -29,7 +29,7 @@ - VolumeFilter::VolumeFilter() : m_volume(0) {} - - // T is the input/output type, S is the fast arithmetics type, Arithm is a division definition --template<typename T, typename S, template<typename S> class Arithm> -+template<typename T, typename S, template<typename S_Type> class Arithm> - static bool _doFrame(AudioFrame* in, AudioFrame* out, int volume) - { - T** indata = (T**)in->data; diff --git a/freebsd/dependencies/akode/files/patch-a02-cmake.diff b/freebsd/dependencies/akode/files/patch-a02-cmake.diff deleted file mode 100644 index accd12478..000000000 --- a/freebsd/dependencies/akode/files/patch-a02-cmake.diff +++ /dev/null @@ -1,3226 +0,0 @@ -Index: b/akode/akodeplay/CMakeLists.txt -=================================================================== ---- /dev/null -+++ b/akode/akodeplay/CMakeLists.txt -@@ -0,0 +1,30 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+ -+include_directories( -+ ${CMAKE_BINARY_DIR} -+ ${CMAKE_BINARY_DIR}/akode/lib -+ ${CMAKE_SOURCE_DIR}/akode/lib -+) -+ -+ -+##### akodeplay ################################# -+ -+set( target akodeplay ) -+ -+tde_add_executable( -+ ${target} -+ SOURCES ${target}.cpp -+ LINK akode-shared -+ DESTINATION ${BIN_INSTALL_DIR} -+) -+ -Index: b/akode/CMakeLists.txt -=================================================================== ---- /dev/null -+++ b/akode/CMakeLists.txt -@@ -0,0 +1,31 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+ -+#### pkg-config ################################# -+ -+set( prefix ${CMAKE_INSTALL_PREFIX} ) -+string( REGEX REPLACE "^${CMAKE_INSTALL_PREFIX}" "\${prefix}" -+ exec_prefix ${EXEC_INSTALL_PREFIX} ) -+string( REGEX REPLACE "^${EXEC_INSTALL_PREFIX}" "\${exec_prefix}" -+ libdir ${LIB_INSTALL_DIR} ) -+string( REGEX REPLACE "^${CMAKE_INSTALL_PREFIX}" "\${prefix}" -+ includedir ${INCLUDE_INSTALL_DIR} ) -+ -+configure_file( akode-config.in akode-config @ONLY ) -+install( PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/akode-config -+ DESTINATION ${BIN_INSTALL_DIR} ) -+ -+ -+##### build ##################################### -+ -+tde_auto_add_subdirectories() -+ -Index: b/akode/lib/akode_export.h.cmake -=================================================================== ---- /dev/null -+++ b/akode/lib/akode_export.h.cmake -@@ -0,0 +1,53 @@ -+/* This file is part of the KDE libraries -+ Copyright (c) 2002-2003 KDE Team -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License as published by the Free Software Foundation; either -+ version 2 of the License, or (at your option) any later version. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library; see the file COPYING.LIB. If not, write to -+ the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+*/ -+ -+#ifndef AKODE_EXPORT_H -+#define AKODE_EXPORT_H -+ -+#cmakedefine __KDE_HAVE_GCC_VISIBILITY 1 -+ -+/** -+ * The ARTS_NO_EXPORT macro marks the symbol of the given variable -+ * to be hidden. A hidden symbol is stripped during the linking step, -+ * so it can't be used from outside the resulting library, which is similar -+ * to static. However, static limits the visibility to the current -+ * compilation unit. hidden symbols can still be used in multiple compilation -+ * units. -+ * -+ * \code -+ * int AKODE_NO_EXPORT foo; -+ * int AKODE_EXPORT bar; -+ * \end -+ */ -+ -+#if defined(__KDE_HAVE_GCC_VISIBILITY) -+/* Visibility is available for GCC newer than 3.4. -+ * See: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=9283 -+ */ -+#define AKODE_NO_EXPORT __attribute__ ((visibility("hidden"))) -+#define AKODE_EXPORT __attribute__ ((visibility("default"))) -+#elif defined(_WIN32) -+#define AKODE_NO_EXPORT -+#define AKODE_EXPORT __declspec(dllexport) -+#else -+#define AKODE_NO_EXPORT -+#define AKODE_EXPORT -+#endif -+ -+#endif /* AKODE_EXPORTS */ -Index: b/akode/lib/CMakeLists.txt -=================================================================== ---- /dev/null -+++ b/akode/lib/CMakeLists.txt -@@ -0,0 +1,100 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+include_directories( -+ ${CMAKE_BINARY_DIR} -+ ${CMAKE_CURRENT_BINARY_DIR} -+ ${CMAKE_CURRENT_SOURCE_DIR} -+) -+ -+if( UNIX ) -+ set( CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fvisibility=hidden" ) -+ set( __KDE_HAVE_GCC_VISIBILITY 1 ) -+endif( UNIX ) -+configure_file( akode_export.h.cmake akode_export.h @ONLY ) -+ -+ -+##### library ################################### -+ -+set( target akode ) -+ -+set( ${target}_SRCS -+ bytebuffer.cpp -+ audiobuffer.cpp -+ pluginhandler.cpp -+ decoderpluginhandler.cpp -+ resamplerpluginhandler.cpp -+ sinkpluginhandler.cpp -+ encoderpluginhandler.cpp -+ fast_resampler.cpp -+ crossfader.cpp -+ volumefilter.cpp -+ localfile.cpp -+ mmapfile.cpp -+ wav_decoder.cpp -+ auto_sink.cpp -+ void_sink.cpp -+ converter.cpp -+ buffered_decoder.cpp -+ player.cpp -+ magic.cpp -+) -+ -+tde_add_library( -+ ${target} SHARED -+ VERSION 2.0.0 -+ SOURCES ${${target}_SRCS} -+ LINK ${CMAKE_THREAD_LIBS_INIT} ${AKODE_LIBDL} ${SEM_LIBRARIES} -+ DESTINATION ${LIB_INSTALL_DIR} -+) -+ -+set_property( -+ TARGET ${target}-shared -+ APPEND PROPERTY COMPILE_DEFINITIONS -+ AKODE_SEARCHDIR="${LIB_INSTALL_DIR}" -+) -+ -+ -+##### headers ################################### -+ -+set( ${target}_INCLUDES -+ ${CMAKE_CURRENT_BINARY_DIR}/akode_export.h -+ akodelib.h -+ decoder.h -+ sink.h -+ encoder.h -+ audioconfiguration.h -+ audioframe.h -+ audiobuffer.h -+ bytebuffer.h -+ file.h -+ localfile.h -+ mmapfile.h -+ pluginhandler.h -+ crossfader.h -+ volumefilter.h -+ resampler.h -+ fast_resampler.h -+ buffered_decoder.h -+ wav_decoder.h -+ auto_sink.h -+ void_sink.h -+ player.h -+ magic.h -+ converter.h -+ framedecoder.h -+) -+ -+install( -+ FILES ${${target}_INCLUDES} -+ DESTINATION ${INCLUDE_INSTALL_DIR}/akode -+) -+ -Index: b/akode/plugins/alsa_sink/CMakeLists.txt -=================================================================== ---- /dev/null -+++ b/akode/plugins/alsa_sink/CMakeLists.txt -@@ -0,0 +1,31 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+include_directories( -+ ${CMAKE_BINARY_DIR} -+ ${CMAKE_BINARY_DIR}/akode/lib -+ ${CMAKE_SOURCE_DIR}/akode/lib -+ ${CMAKE_CURRENT_BINARY_DIR} -+ ${CMAKE_CURRENT_SOURCE_DIR} -+) -+ -+ -+##### library ################################### -+ -+set( target libakode_alsa_sink ) -+ -+tde_add_library( -+ ${target} MODULE -+ SOURCES alsa_sink.cpp -+ LINK akode-shared ${ALSA_LIBRARIES} -+ DESTINATION ${LIB_INSTALL_DIR} -+) -+ -Index: b/akode/plugins/CMakeLists.txt -=================================================================== ---- /dev/null -+++ b/akode/plugins/CMakeLists.txt -@@ -0,0 +1,26 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+ -+##### build ##################################### -+ -+tde_conditional_add_subdirectory( WITH_ALSA_SINK alsa_sink ) -+tde_conditional_add_subdirectory( WITH_JACK_SINK jack_sink ) -+tde_conditional_add_subdirectory( WITH_OSS_SINK oss_sink ) -+tde_conditional_add_subdirectory( WITH_POLYP_SINK polyp_sink ) -+tde_conditional_add_subdirectory( WITH_SUN_SINK sun_sink ) -+ -+tde_conditional_add_subdirectory( WITH_FFMPEG_DECODER ffmpeg_decoder ) -+tde_conditional_add_subdirectory( WITH_MPC_DECODER mpc_decoder ) -+tde_conditional_add_subdirectory( WITH_MPEG_DECODER mpeg_decoder ) -+tde_conditional_add_subdirectory( WITH_SRC_RESAMPLER src_resampler ) -+tde_conditional_add_subdirectory( WITH_XIPH_DECODER xiph_decoder ) -+ -Index: b/akode/plugins/ffmpeg_decoder/CMakeLists.txt -=================================================================== ---- /dev/null -+++ b/akode/plugins/ffmpeg_decoder/CMakeLists.txt -@@ -0,0 +1,33 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+include_directories( -+ ${CMAKE_BINARY_DIR} -+ ${CMAKE_BINARY_DIR}/akode/lib -+ ${CMAKE_SOURCE_DIR}/akode/lib -+ ${CMAKE_CURRENT_BINARY_DIR} -+ ${CMAKE_CURRENT_SOURCE_DIR} -+ ${AVFORMAT_INCLUDE_DIRS} -+ ${AVCODEC_INCLUDE_DIRS} -+) -+ -+ -+##### library ################################### -+ -+set( target libakode_ffmpeg_decoder ) -+ -+tde_add_library( -+ ${target} MODULE -+ SOURCES ffmpeg_decoder.cpp -+ LINK akode-shared ${AVFORMAT_LIBRARIES} ${AVCODEC_LIBRARIES} -+ DESTINATION ${LIB_INSTALL_DIR} -+) -+ -Index: b/akode/plugins/jack_sink/CMakeLists.txt -=================================================================== ---- /dev/null -+++ b/akode/plugins/jack_sink/CMakeLists.txt -@@ -0,0 +1,32 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+include_directories( -+ ${CMAKE_BINARY_DIR} -+ ${CMAKE_BINARY_DIR}/akode/lib -+ ${CMAKE_SOURCE_DIR}/akode/lib -+ ${CMAKE_CURRENT_BINARY_DIR} -+ ${CMAKE_CURRENT_SOURCE_DIR} -+ ${JACK_INCLUDE_DIRS} -+) -+ -+ -+##### library ################################### -+ -+set( target libakode_jack_sink ) -+ -+tde_add_library( -+ ${target} MODULE -+ SOURCES jack_sink.cpp -+ LINK akode-shared ${JACK_LIBRARIES} -+ DESTINATION ${LIB_INSTALL_DIR} -+) -+ -Index: b/akode/plugins/mpc_decoder/CMakeLists.txt -=================================================================== ---- /dev/null -+++ b/akode/plugins/mpc_decoder/CMakeLists.txt -@@ -0,0 +1,36 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+include_directories( -+ ${CMAKE_BINARY_DIR} -+ ${CMAKE_BINARY_DIR}/akode/lib -+ ${CMAKE_SOURCE_DIR}/akode/lib -+ ${CMAKE_CURRENT_SOURCE_DIR} -+ ${CMAKE_CURRENT_BINARY_DIR} -+ ${CMAKE_CURRENT_SOURCE_DIR}/mppdec -+) -+ -+ -+##### mppdec #################################### -+add_subdirectory( mppdec ) -+ -+ -+##### library ################################### -+ -+set( target libakode_mpc_decoder ) -+ -+tde_add_library( -+ ${target} MODULE -+ SOURCES mpc_decoder.cpp -+ LINK akode-shared akode_mppdec-static -+ DESTINATION ${LIB_INSTALL_DIR} -+) -+ -Index: b/akode/plugins/mpc_decoder/mppdec/CMakeLists.txt -=================================================================== ---- /dev/null -+++ b/akode/plugins/mpc_decoder/mppdec/CMakeLists.txt -@@ -0,0 +1,40 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+include_directories( -+ ${CMAKE_BINARY_DIR} -+ ${CMAKE_BINARY_DIR}/akode/lib -+ ${CMAKE_SOURCE_DIR}/akode/lib -+ ${CMAKE_CURRENT_BINARY_DIR} -+ ${CMAKE_CURRENT_SOURCE_DIR} -+) -+ -+ -+##### library ################################### -+ -+set( target akode_mppdec ) -+ -+set( ${target}_SRCS -+ bitstream.cpp -+ huffsv46.cpp -+ huffsv7.cpp -+ idtag.cpp -+ mpc_dec.cpp -+ requant.cpp -+ streaminfo.cpp -+ synth_filter.cpp -+) -+ -+tde_add_library( -+ ${target} STATIC_PIC -+ SOURCES ${${target}_SRCS} -+) -+ -Index: b/akode/plugins/mpeg_decoder/CMakeLists.txt -=================================================================== ---- /dev/null -+++ b/akode/plugins/mpeg_decoder/CMakeLists.txt -@@ -0,0 +1,31 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+include_directories( -+ ${CMAKE_BINARY_DIR} -+ ${CMAKE_BINARY_DIR}/akode/lib -+ ${CMAKE_SOURCE_DIR}/akode/lib -+ ${CMAKE_CURRENT_BINARY_DIR} -+ ${CMAKE_CURRENT_SOURCE_DIR} -+) -+ -+ -+##### library ################################### -+ -+set( target libakode_mpeg_decoder ) -+ -+tde_add_library( -+ ${target} MODULE -+ SOURCES mpeg_decoder.cpp -+ LINK akode-shared ${MAD_LIBRARIES} -+ DESTINATION ${LIB_INSTALL_DIR} -+) -+ -Index: b/akode/plugins/oss_sink/CMakeLists.txt -=================================================================== ---- /dev/null -+++ b/akode/plugins/oss_sink/CMakeLists.txt -@@ -0,0 +1,31 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+include_directories( -+ ${CMAKE_BINARY_DIR} -+ ${CMAKE_BINARY_DIR}/akode/lib -+ ${CMAKE_SOURCE_DIR}/akode/lib -+ ${CMAKE_CURRENT_BINARY_DIR} -+ ${CMAKE_CURRENT_SOURCE_DIR} -+) -+ -+ -+##### library ################################### -+ -+set( target libakode_oss_sink ) -+ -+tde_add_library( -+ ${target} MODULE -+ SOURCES oss_sink.cpp -+ LINK akode-shared ${OSSAUDIO_LIBRARIES} -+ DESTINATION ${LIB_INSTALL_DIR} -+) -+ -Index: b/akode/plugins/polyp_sink/CMakeLists.txt -=================================================================== ---- /dev/null -+++ b/akode/plugins/polyp_sink/CMakeLists.txt -@@ -0,0 +1,32 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+include_directories( -+ ${CMAKE_BINARY_DIR} -+ ${CMAKE_BINARY_DIR}/akode/lib -+ ${CMAKE_SOURCE_DIR}/akode/lib -+ ${CMAKE_CURRENT_BINARY_DIR} -+ ${CMAKE_CURRENT_SOURCE_DIR} -+ ${POLYP_INCLUDE_DIRS} -+) -+ -+ -+##### library ################################### -+ -+set( target libakode_polyp_sink ) -+ -+tde_add_library( -+ ${target} MODULE -+ SOURCES polyp_sink.cpp -+ LINK akode-shared ${POLYP_LIBRARIES} -+ DESTINATION ${LIB_INSTALL_DIR} -+) -+ -Index: b/akode/plugins/src_resampler/CMakeLists.txt -=================================================================== ---- /dev/null -+++ b/akode/plugins/src_resampler/CMakeLists.txt -@@ -0,0 +1,31 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+include_directories( -+ ${CMAKE_BINARY_DIR} -+ ${CMAKE_BINARY_DIR}/akode/lib -+ ${CMAKE_SOURCE_DIR}/akode/lib -+ ${CMAKE_CURRENT_BINARY_DIR} -+ ${CMAKE_CURRENT_SOURCE_DIR} -+) -+ -+ -+##### library ################################### -+ -+set( target libakode_src_resampler ) -+ -+tde_add_library( -+ ${target} MODULE -+ SOURCES src_resampler.cpp -+ LINK akode-shared ${SAMPLERATE_LIBRARIES} -+ DESTINATION ${LIB_INSTALL_DIR} -+) -+ -Index: b/akode/plugins/sun_sink/CMakeLists.txt -=================================================================== ---- /dev/null -+++ b/akode/plugins/sun_sink/CMakeLists.txt -@@ -0,0 +1,31 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+include_directories( -+ ${CMAKE_BINARY_DIR} -+ ${CMAKE_BINARY_DIR}/akode/lib -+ ${CMAKE_SOURCE_DIR}/akode/lib -+ ${CMAKE_CURRENT_BINARY_DIR} -+ ${CMAKE_CURRENT_SOURCE_DIR} -+) -+ -+ -+##### library ################################### -+ -+set( target libakode_sun_sink ) -+ -+tde_add_library( -+ ${target} MODULE -+ SOURCES sun_sink.cpp -+ LINK akode-shared -+ DESTINATION ${LIB_INSTALL_DIR} -+) -+ -Index: b/akode/plugins/xiph_decoder/CMakeLists.txt -=================================================================== ---- /dev/null -+++ b/akode/plugins/xiph_decoder/CMakeLists.txt -@@ -0,0 +1,44 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+include_directories( -+ ${CMAKE_BINARY_DIR} -+ ${CMAKE_BINARY_DIR}/akode/lib -+ ${CMAKE_SOURCE_DIR}/akode/lib -+ ${CMAKE_CURRENT_BINARY_DIR} -+ ${CMAKE_CURRENT_SOURCE_DIR} -+ ${SPEEX_INCLUDE_DIRS} -+) -+ -+ -+##### library ################################### -+ -+set( target libakode_xiph_decoder ) -+ -+set( ${target}_SRCS -+ flac_decoder.cpp -+ flac113_decoder.cpp -+ speex_decoder.cpp -+ vorbis_decoder.cpp -+ xiph_decoder.cpp -+) -+ -+tde_add_library( -+ ${target} MODULE -+ SOURCES ${${target}_SRCS} -+ LINK -+ akode-shared -+ ${FLAC_LIBRARIES} ${OGGFLAC_LIBRARIES} -+ ${VORBIS_LIBRARIES} ${VORBISFILE_LIBRARIES} -+ ${SPEEX_LIBRARIES} -+ DESTINATION ${LIB_INSTALL_DIR} -+) -+ -Index: b/cmake/generate_apidox -=================================================================== ---- /dev/null -+++ b/cmake/generate_apidox -@@ -0,0 +1,17 @@ -+#!/bin/bash -+ -+top_srcdir=${1} -+top_builddir=${2} -+kde_libs_htmldir=${3} -+export QTDOCDIR=${4} -+ -+if [[ ! -d "${top_srcdir}/doc/common/" ]]; then -+ export DOXDATA=${kde_libs_htmldir}/en/common -+fi -+ -+abs_top_srcdir=$(cd ${top_srcdir} && pwd) -+ -+rm -rf ${top_builddir}/${kde_libs_htmldir}/en -+mkdir -p ${top_builddir}/${kde_libs_htmldir}/en -+cd ${top_builddir}/${kde_libs_htmldir}/en -+${abs_top_srcdir}/admin/doxygen.sh --modulename --installdir=${top_builddir}/${kde_libs_htmldir}/en ${abs_top_srcdir} -Index: b/cmake/install_apidox -=================================================================== ---- /dev/null -+++ b/cmake/install_apidox -@@ -0,0 +1,12 @@ -+#!/bin/bash -+ -+top_srcdir=${1} -+top_builddir=${2} -+kde_libs_htmldir=${3} -+installdir=${DESTDIR} -+ -+abs_top_srcdir=$(cd ${top_srcdir} && pwd) -+ -+cd ${top_builddir} -+mkdir -p ${installdir}/${kde_libs_htmldir}/en -+cp -Rp ${top_builddir}/${kde_libs_htmldir}/en ${installdir}/${kde_libs_htmldir}/ -Index: b/cmake/modules/FindTDE.cmake -=================================================================== ---- /dev/null -+++ b/cmake/modules/FindTDE.cmake -@@ -0,0 +1,101 @@ -+################################################# -+# -+# (C) 2010-2011 Serghei Amelian -+# serghei (DOT) amelian (AT) gmail.com -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+if( NOT TDE_FOUND ) -+ -+ message( STATUS "checking for 'TDE'") -+ -+ pkg_search_module( TDE tqt ) -+ -+ if( NOT TDE_FOUND ) -+ tde_message_fatal( "Unable to find tdelibs!\n Try adding the directory in which the tdelibs.pc file is located\nto the PKG_CONFIG_PATH variable." ) -+ endif( ) -+ -+ # if the path is not already defined by user, -+ # find tde-config executable -+ if( NOT DEFINED KDECONFIG_EXECUTABLE ) -+ find_program( KDECONFIG_EXECUTABLE -+ NAMES tde-config -+ HINTS "${TDE_PREFIX}/bin" ${BIN_INSTALL_DIR} ) -+ if( NOT KDECONFIG_EXECUTABLE ) -+ tde_message_fatal( "tde-config are NOT found." ) -+ endif( NOT KDECONFIG_EXECUTABLE ) -+ endif( NOT DEFINED KDECONFIG_EXECUTABLE ) -+ -+ set( ENV{LD_LIBRARY_PATH} "${TDE_LIBDIR}:$ENV{LD_LIBRARY_PATH}" ) -+ # check for installed trinity version -+ tde_execute_process( -+ COMMAND ${KDECONFIG_EXECUTABLE} --version -+ OUTPUT_VARIABLE _version -+ RESULT_VARIABLE _result -+ OUTPUT_STRIP_TRAILING_WHITESPACE -+ MESSAGE "Unable to run tde-config!\n TDELIBS are correctly installed?\n Path to tde-config are corect?" ) -+ -+ # parse tde-config output, to extract TDE version -+ string( REGEX MATCH "TDE: R([0-9\\.]+).*" __dummy "${_version}" ) -+ set( TDE_VERSION "${CMAKE_MATCH_1}" ) -+ -+ # ask tde-config for few paths -+ macro( __internal_get_path __type __var ) -+ tde_execute_process( -+ COMMAND ${KDECONFIG_EXECUTABLE} --expandvars --install ${__type} -+ OUTPUT_VARIABLE ${__var} -+ CACHE INTERNAL "TDE ${__type} path" FORCE -+ OUTPUT_STRIP_TRAILING_WHITESPACE ) -+ endmacro( __internal_get_path ) -+ -+ __internal_get_path( include TDE_INCLUDE_DIR ) -+ __internal_get_path( lib TDE_LIB_DIR ) -+ __internal_get_path( exe TDE_BIN_DIR ) -+ __internal_get_path( data TDE_DATA_DIR ) -+ __internal_get_path( config TDE_CONFIG_DIR ) -+ __internal_get_path( html TDE_HTML_DIR ) -+ __internal_get_path( cmake TDE_CMAKE_DIR ) -+ __internal_get_path( qtplugins TDE_QTPLUGINS_DIR ) -+ -+ # find kde tools -+ macro( __internal_find_program __prog __var ) -+ find_program( ${__var} -+ NAMES ${__prog} -+ HINTS "${TDE_PREFIX}/bin" ${BIN_INSTALL_DIR} -+ OUTPUT_STRIP_TRAILING_WHITESPACE ) -+ if( NOT ${__var} ) -+ tde_message_fatal( "${__prog} are NOT found.\n TDELIBS are correctly installed?" ) -+ endif( NOT ${__var} ) -+ set( ${__var} ${${__var}} CACHE INTERNAL "${__prog} executable" FORCE ) -+ endmacro( __internal_find_program ) -+ -+ __internal_find_program( dcopidl KDE3_DCOPIDL_EXECUTABLE ) -+ __internal_find_program( dcopidlng KDE3_DCOPIDLNG_EXECUTABLE ) -+ __internal_find_program( dcopidl2cpp KDE3_DCOPIDL2CPP_EXECUTABLE ) -+ __internal_find_program( meinproc KDE3_MEINPROC_EXECUTABLE ) -+ __internal_find_program( tdeconfig_compiler KDE3_KCFGC_EXECUTABLE ) -+ __internal_find_program( maketdewidgets KDE3_MAKETDEWIDGETS_EXECUTABLE ) -+ -+ # dcopidlng is a bash script which using tde-config; -+ # if PATH to tde-config is not set, dcopidlng will fail; -+ # for this reason we set KDECONFIG environment variable before running dcopidlng -+ set( KDE3_DCOPIDLNG_EXECUTABLE env KDECONFIG=${KDECONFIG_EXECUTABLE} ${KDE3_DCOPIDLNG_EXECUTABLE} -+ CACHE INTERNAL "dcopidlng executable" FORCE ) -+ -+ # look for SCM data if present -+ if( EXISTS "${CMAKE_SOURCE_DIR}/.tdescmmodule" ) -+ file( STRINGS "${CMAKE_SOURCE_DIR}/.tdescmmodule" TDE_SCM_MODULE_NAME ) -+ endif( EXISTS "${CMAKE_SOURCE_DIR}/.tdescmmodule" ) -+ if( EXISTS "${CMAKE_SOURCE_DIR}/.tdescmrevision" ) -+ file( STRINGS "${CMAKE_SOURCE_DIR}/.tdescmrevision" TDE_SCM_MODULE_REVISION ) -+ endif( EXISTS "${CMAKE_SOURCE_DIR}/.tdescmrevision" ) -+ -+ message( STATUS " found 'TDE', version ${TDE_VERSION}" ) -+ -+endif( NOT TDE_FOUND ) -+ -+include( "${TDE_CMAKE_DIR}/tdelibs.cmake" ) -Index: b/cmake/modules/FindTQt.cmake -=================================================================== ---- /dev/null -+++ b/cmake/modules/FindTQt.cmake -@@ -0,0 +1,95 @@ -+################################################# -+# -+# (C) 2010-2011 Serghei Amelian -+# serghei (DOT) amelian (AT) gmail.com -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+macro( tqt_message ) -+ message( STATUS "${ARGN}" ) -+endmacro( ) -+ -+pkg_search_module( TQT tqt ) -+ -+if( NOT TQT_FOUND ) -+ tde_message_fatal( "Unable to find tqt!\n Try adding the directory in which the tqt.pc file is located\nto the PKG_CONFIG_PATH variable." ) -+endif( ) -+ -+# tmoc_executable -+tde_execute_process( -+ COMMAND pkg-config tqt --variable=tmoc_executable -+ OUTPUT_VARIABLE TMOC_EXECUTABLE OUTPUT_STRIP_TRAILING_WHITESPACE ) -+ -+if( NOT EXISTS ${TMOC_EXECUTABLE} ) -+ tde_message_fatal( "tmoc is not found!\n tqt is correctly installed?" ) -+endif( ) -+ -+tqt_message( " tmoc path: ${TMOC_EXECUTABLE}" ) -+ -+ -+# moc_executable -+tde_execute_process( -+ COMMAND pkg-config tqt --variable=moc_executable -+ OUTPUT_VARIABLE MOC_EXECUTABLE OUTPUT_STRIP_TRAILING_WHITESPACE ) -+ -+if( NOT EXISTS ${MOC_EXECUTABLE} ) -+ tde_message_fatal( "Path to moc is not set.\n tqt is correctly installed?" ) -+endif( ) -+ -+tqt_message( " moc path: ${MOC_EXECUTABLE}" ) -+ -+ -+# uic_executable -+tde_execute_process( -+ COMMAND pkg-config tqt --variable=uic_executable -+ OUTPUT_VARIABLE UIC_EXECUTABLE OUTPUT_STRIP_TRAILING_WHITESPACE ) -+ -+if( NOT EXISTS ${UIC_EXECUTABLE} ) -+ tde_message_fatal( "uic not found!\n tqt is correctly installed?" ) -+endif( ) -+ -+tqt_message( " uic path: ${UIC_EXECUTABLE}" ) -+ -+ -+# tqt-replace script -+set( TQT_REPLACE_SCRIPT "${TQT_PREFIX}/bin/tqt-replace" ) -+ -+if( NOT EXISTS ${TQT_REPLACE_SCRIPT} ) -+ tde_message_fatal( "tqt-replace not found!\n Check tqt installation." ) -+endif( ) -+ -+tqt_message( " tqt-replace path: ${TQT_REPLACE_SCRIPT}" ) -+ -+ -+# check if tqt is usable -+tde_save( CMAKE_REQUIRED_INCLUDES CMAKE_REQUIRED_LIBRARIES ) -+set( CMAKE_REQUIRED_INCLUDES ${TQT_INCLUDE_DIRS} ) -+foreach( _dirs ${TQT_LIBRARY_DIRS} ) -+ list( APPEND CMAKE_REQUIRED_LIBRARIES "-L${_dirs}" ) -+endforeach() -+list( APPEND CMAKE_REQUIRED_LIBRARIES ${TQT_LIBRARIES} ) -+ -+check_cxx_source_compiles(" -+ #include <tqapplication.h> -+ int main(int argc, char **argv) { TQApplication app(argc, argv); return 0; } " -+ HAVE_USABLE_TQT ) -+ -+if( NOT HAVE_USABLE_TQT ) -+ tde_message_fatal( "Unable to build a simple tqt test." ) -+endif( ) -+ -+tde_restore( CMAKE_REQUIRED_INCLUDES CMAKE_REQUIRED_LIBRARIES ) -+ -+ -+# TQT_CXX_FLAGS -+foreach( _flag ${TQT_CFLAGS} ${TQT_CFLAGS_OTHER} ) -+ set( TQT_CXX_FLAGS "${TQT_CXX_FLAGS} ${_flag}" ) -+endforeach() -+ -+# Set compiler flags according to build type -+set( CMAKE_CXX_FLAGS_RELWITHDEBINFO "-DNDEBUG" ) -+set( CMAKE_C_FLAGS_RELWITHDEBINFO "-DNDEBUG" ) -Index: b/cmake/modules/FindTQtQUI.cmake -=================================================================== ---- /dev/null -+++ b/cmake/modules/FindTQtQUI.cmake -@@ -0,0 +1,45 @@ -+################################################# -+# -+# (C) 2010-2011 Serghei Amelian -+# serghei (DOT) amelian (AT) gmail.com -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+macro( tqtqui_message ) -+ message( STATUS "${ARGN}" ) -+endmacro( ) -+ -+pkg_search_module( TQTQUI tqtqui ) -+ -+if( NOT TQTQUI_FOUND ) -+ tde_message_fatal( "Unable to find tqtqui!\n Try adding the directory in which the tqtqui.pc file is located\nto the PKG_CONFIG_PATH variable." ) -+endif( ) -+ -+# check if tqtqui is usable -+tde_save( CMAKE_REQUIRED_INCLUDES CMAKE_REQUIRED_LIBRARIES ) -+set( CMAKE_REQUIRED_INCLUDES ${TQTQUI_INCLUDE_DIRS} ) -+foreach( _dirs ${TQTQUI_LIBRARY_DIRS} ) -+ list( APPEND CMAKE_REQUIRED_LIBRARIES "-L${_dirs}" ) -+endforeach() -+list( APPEND CMAKE_REQUIRED_LIBRARIES ${TQTQUI_LIBRARIES} ) -+ -+check_cxx_source_compiles(" -+ #include <tqapplication.h> -+ int main(int argc, char **argv) { TQApplication app(argc, argv); return 0; } " -+ HAVE_USABLE_TQTQUI ) -+ -+if( NOT HAVE_USABLE_TQTQUI ) -+ tde_message_fatal( "Unable to build a simple tqtqui test." ) -+endif( ) -+ -+tde_restore( CMAKE_REQUIRED_INCLUDES CMAKE_REQUIRED_LIBRARIES ) -+ -+ -+# TQTQUI_CXX_FLAGS -+foreach( _flag ${TQTQUI_CFLAGS_OTHER} ) -+ set( TQTQUI_CXX_FLAGS "${TQTQUI_CXX_FLAGS} ${_flag}" ) -+endforeach() -Index: b/cmake/modules/TDEMacros.cmake -=================================================================== ---- /dev/null -+++ b/cmake/modules/TDEMacros.cmake -@@ -0,0 +1,1568 @@ -+################################################# -+# -+# (C) 2010-2012 Serghei Amelian -+# serghei (DOT) amelian (AT) gmail.com -+# -+# (C) 2011-2012 Timothy Pearson -+# kb9vqf (AT) pearsoncomputing.net -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+include( KDE3Macros ) # we will need this module for a while -+include( CheckCXXCompilerFlag ) -+ -+ -+################################################# -+##### -+##### tde_message_fatal -+ -+macro( tde_message_fatal ) -+ message( FATAL_ERROR -+ "#################################################\n" -+ " ${ARGV}\n" -+ "#################################################" ) -+endmacro( tde_message_fatal ) -+ -+ -+################################################# -+##### -+##### tde_get_arg( <ARG_NAME> <COUNT> <RETURN> <REST> <ARGS...> ) -+##### ARG_NAME(string): name of an argument to find in ARGS -+##### COUNT(number): argument dimension, a number of items returned in RETURN -+##### RETURN(list ref): items returned for argument as they found in ARGS -+##### REST(list ref): rest of items except argument name and items returned in RETURN -+##### ARGS(list): source list of arguments -+ -+macro( tde_get_arg ARG_NAME COUNT RETURN REST ) -+ unset( ${RETURN} ) -+ unset( ${REST} ) -+ list( APPEND ${REST} ${ARGN} ) -+ list( FIND ${REST} ${ARG_NAME} _arg_idx) -+ if( NOT ${_arg_idx} EQUAL -1 ) -+ list( REMOVE_AT ${REST} ${_arg_idx} ) -+ set( _i 0 ) -+ while( ${_i} LESS ${COUNT} ) -+ list( GET ${REST} ${_arg_idx} _arg ) -+ list( REMOVE_AT ${REST} ${_arg_idx} ) -+ list( APPEND ${RETURN} ${_arg} ) -+ math( EXPR _i "${_i} + 1" ) -+ endwhile() -+ endif() -+endmacro( tde_get_arg ) -+ -+ -+################################################ -+##### -+##### tde_execute_process( <ARGS...> [MESSAGE <MSG>] ) -+##### MSG: fatal error message (standard message will be written if not supplied) -+##### ARGS: execute_process arguments -+ -+macro( tde_execute_process ) -+ tde_get_arg( MESSAGE 1 _message _rest_args ${ARGV} ) -+ tde_get_arg( RESULT_VARIABLE 1 _result_variable _tmp ${_rest_args} ) -+ tde_get_arg( COMMAND 1 _command _tmp ${_rest_args} ) -+ tde_get_arg( OUTPUT_VARIABLE 1 _output_variable _tmp ${_rest_args} ) -+ tde_get_arg( CACHE 3 _cache _rest_args2 ${_rest_args} ) -+ -+ # handle optional FORCE parameter -+ if( DEFINED _cache ) -+ list( GET _cache 2 _tmp ) -+ if( _tmp STREQUAL FORCE ) -+ set( _rest_args ${_rest_args2} ) -+ else() -+ tde_get_arg( CACHE 2 _cache _rest_args ${_rest_args} ) -+ endif() -+ endif() -+ -+ if( NOT DEFINED _result_variable ) -+ list( APPEND _rest_args RESULT_VARIABLE _exec_result ) -+ set( _result_variable _exec_result ) -+ endif() -+ -+ execute_process( ${_rest_args} ) -+ -+ if( DEFINED _output_variable AND DEFINED _cache ) -+ set( ${_output_variable} ${${_output_variable}} CACHE ${_cache} ) -+ endif() -+ -+ if( ${_result_variable} ) -+ if( DEFINED _message ) -+ tde_message_fatal( ${_message} ) -+ else() -+ if( ${${_result_variable}} MATCHES "^[0-9]+$" ) -+ set( ${_result_variable} "status ${${_result_variable}} returned!" ) -+ endif() -+ tde_message_fatal( "Error executing '${_command}': ${${_result_variable}}" ) -+ endif() -+ endif() -+endmacro( tde_execute_process ) -+ -+ -+if( DEFINED MASTER_SOURCE_DIR ) -+ return( ) -+endif( ) -+########### slave part ends here ############### -+ -+ -+################################################ -+##### -+##### CMP0026 states we should not read the LOCATION property of a target, -+##### and should be using generators instead. We can't do that here however -+##### because we need the value of the property at configure time. -+ -+if( POLICY CMP0026 ) -+ cmake_policy( PUSH ) -+ cmake_policy( SET CMP0026 OLD ) -+endif( POLICY CMP0026 ) -+ -+ -+################################################ -+##### -+##### tde_install_icons( <icons...> THEME <svgicons> DESTINATION <destdir> ) -+##### default theme: hicolor -+##### default destination: ${SHARE_INSTALL_DIR}/icons -+ -+macro( tde_install_icons ) -+ tde_get_arg( DESTINATION 1 _dest _args ${ARGV} ) -+ tde_get_arg( THEME 1 _req_theme _icons ${_args} ) -+ -+ #defaults -+ if( NOT _icons ) -+ set( _icons "*" ) -+ endif( NOT _icons ) -+ if( NOT _dest ) -+ set( _dest "${ICON_INSTALL_DIR}" ) -+ endif( NOT _dest ) -+ -+ foreach( _icon ${_icons} ) -+ unset( _theme ) # clearing -+ -+ file(GLOB _icon_files *-${_icon}.png *-${_icon}.mng _icon_files *-${_icon}.svg* ) -+ foreach( _icon_file ${_icon_files} ) -+ # FIXME need a review -+ string( REGEX MATCH "^.*/([a-zA-Z][a-zA-Z])([0-9a-zA-Z]+)\\-([a-z]+)\\-([^/]+)$" _dummy "${_icon_file}" ) -+ set( _type "${CMAKE_MATCH_1}" ) -+ set( _size "${CMAKE_MATCH_2}" ) -+ set( _group "${CMAKE_MATCH_3}" ) -+ set( _name "${CMAKE_MATCH_4}" ) -+ -+ # we must ignore invalid icon names -+ if( _type AND _size AND _group AND _name ) -+ -+ # autodetect theme -+ if( NOT _req_theme ) -+ unset( _theme ) -+ if( "${_type}" STREQUAL "cr" ) -+ set( _theme crystalsvg ) -+ elseif( "${_type}" STREQUAL "lo" ) -+ set( _theme locolor ) -+ endif( "${_type}" STREQUAL "cr" ) -+ # defaulting -+ if( NOT _theme ) -+ set( _theme hicolor ) -+ endif( NOT _theme ) -+ else( NOT _req_theme ) -+ set( _theme ${_req_theme} ) -+ endif( NOT _req_theme ) -+ -+ # fix "group" name -+ if( "${_group}" STREQUAL "mime" ) -+ set( _group "mimetypes" ) -+ endif( "${_group}" STREQUAL "mime" ) -+ if( "${_group}" STREQUAL "filesys" ) -+ set( _group "places" ) -+ endif( "${_group}" STREQUAL "filesys" ) -+ if( "${_group}" STREQUAL "category" ) -+ set( _group "categories" ) -+ endif( "${_group}" STREQUAL "category" ) -+ if( "${_group}" STREQUAL "device" ) -+ set( _group "devices" ) -+ endif( "${_group}" STREQUAL "device" ) -+ if( "${_group}" STREQUAL "app" ) -+ set( _group "apps" ) -+ endif( "${_group}" STREQUAL "app" ) -+ if( "${_group}" STREQUAL "action" ) -+ set( _group "actions" ) -+ endif( "${_group}" STREQUAL "action" ) -+ -+ if( "${_size}" STREQUAL "sc" ) -+ install( FILES ${_icon_file} DESTINATION ${_dest}/${_theme}/scalable/${_group}/ RENAME ${_name} ) -+ else( "${_size}" STREQUAL "sc" ) -+ install( FILES ${_icon_file} DESTINATION ${_dest}/${_theme}/${_size}x${_size}/${_group}/ RENAME ${_name} ) -+ endif( "${_size}" STREQUAL "sc" ) -+ -+ endif( _type AND _size AND _group AND _name ) -+ -+ endforeach( _icon_file ) -+ endforeach( _icon ) -+ -+endmacro( tde_install_icons ) -+ -+ -+################################################# -+##### -+##### tde_add_lut( <source> <result> [depends] ) -+##### default depends: source -+ -+macro( tde_add_lut _src _lut _dep ) -+ set( create_hash_table ${CMAKE_SOURCE_DIR}/kjs/create_hash_table ) -+ if( NOT _dep ) -+ set( _dep ${_src} ) -+ endif( NOT _dep ) -+ add_custom_command( OUTPUT ${_lut} -+ COMMAND perl ARGS ${create_hash_table} ${CMAKE_CURRENT_SOURCE_DIR}/${_src} -i > ${_lut} -+ DEPENDS ${_src} ) -+ set_source_files_properties( ${_dep} PROPERTIES OBJECT_DEPENDS ${CMAKE_CURRENT_BINARY_DIR}/${_lut} ) -+ unset( _dep ) -+endmacro( tde_add_lut ) -+ -+ -+################################################# -+##### -+##### tde_add_luts( <sources...> ) -+ -+macro( tde_add_luts ) -+ foreach( _src ${ARGV} ) -+ get_filename_component( _lut ${_src} NAME_WE ) -+ set( _lut "${_lut}.lut.h" ) -+ tde_add_lut( ${_src} ${_lut} ${_src} ) -+ endforeach( _src ) -+endmacro( tde_add_luts ) -+ -+ -+################################################# -+##### -+##### tde_file_to_cpp( <source> <destination> <variable> ) -+ -+macro( tde_file_to_cpp _src _dst _var ) -+ if( IS_ABSOLUTE ${_dst} ) -+ set( dst ${_dst} ) -+ else( ) -+ set( dst "${CMAKE_CURRENT_BINARY_DIR}/${_dst}" ) -+ endif( ) -+ file( READ ${_src} text ) -+ string( REGEX REPLACE "\n" "\\\\n\"\n\"" text "${text}" ) -+ set( text "/* Generated by CMake */\n\nconst char *${_var} = \n\n\"${text}\";\n" ) -+ string( REGEX REPLACE "\n\"\";\n$" ";\n" text "${text}" ) -+ file( WRITE ${dst} "${text}" ) -+endmacro( ) -+ -+ -+################################################# -+##### -+##### tde_install_la_file( <target> <destination> ) -+ -+macro( tde_install_la_file _target _destination ) -+ -+ get_target_property( _target_location ${_target} LOCATION ) -+ get_filename_component( _laname ${_target_location} NAME_WE ) -+ get_filename_component( _soname ${_target_location} NAME ) -+ set( _laname ${CMAKE_CURRENT_BINARY_DIR}/${_laname}.la ) -+ -+ file( WRITE ${_laname} -+"# ${_laname} - a libtool library file, generated by cmake -+# The name that we can dlopen(3). -+dlname='${_soname}' -+# Names of this library -+library_names='${_soname} ${_soname} ${_soname}' -+# The name of the static archive -+old_library='' -+# Libraries that this one depends upon. -+dependency_libs='' -+# Version information.\ncurrent=0\nage=0\nrevision=0 -+# Is this an already installed library?\ninstalled=yes -+# Should we warn about portability when linking against -modules?\nshouldnotlink=yes -+# Files to dlopen/dlpreopen\ndlopen=''\ndlpreopen='' -+# Directory that this library needs to be installed in: -+libdir='${_destination}' -+" ) -+ -+ install( FILES ${_laname} DESTINATION ${_destination} ) -+ -+endmacro( tde_install_la_file ) -+ -+ -+################################################# -+##### -+##### tde_add_ui_files -+ -+macro( tde_add_ui_files _sources ) -+ foreach( _ui_file ${ARGN} ) -+ -+ get_filename_component( _ui_basename ${_ui_file} NAME_WE ) -+ get_filename_component( _ui_absolute_path ${_ui_file} ABSOLUTE ) -+ -+ list( APPEND ${_sources} ${_ui_basename}.cpp ) -+ -+ add_custom_command( OUTPUT ${_ui_basename}.h ${_ui_basename}.cpp -+ COMMAND ${CMAKE_COMMAND} -+ -DUIC_EXECUTABLE:FILEPATH=${UIC_EXECUTABLE} -+ -DTQT_REPLACE_SCRIPT:FILEPATH=${TQT_REPLACE_SCRIPT} -+ -DTDE_QTPLUGINS_DIR:FILEPATH=${TDE_QTPLUGINS_DIR} -+ -DUI_FILE:FILEPATH=${_ui_absolute_path} -+ -DMASTER_SOURCE_DIR:FILEPATH=${CMAKE_SOURCE_DIR} -+ -DMASTER_BINARY_DIR:FILEPATH=${CMAKE_BINARY_DIR} -+ -P ${CMAKE_MODULE_PATH}/tde_uic.cmake -+ COMMAND ${MOC_EXECUTABLE} ${_ui_basename}.h >> ${_ui_basename}.cpp -+ DEPENDS ${_ui_absolute_path} ) -+ -+ endforeach( _ui_file ) -+endmacro( tde_add_ui_files ) -+ -+ -+################################################# -+##### -+##### tde_moc -+ -+macro( tde_moc _sources ) -+ foreach( _input_file ${ARGN} ) -+ -+ get_filename_component( _input_file "${_input_file}" ABSOLUTE ) -+ get_filename_component( _basename ${_input_file} NAME_WE ) -+ set( _output_file "${_basename}.moc.cpp" ) -+ add_custom_command( OUTPUT ${_output_file} -+ COMMAND -+ ${TMOC_EXECUTABLE} ${_input_file} -o ${_output_file} -+ DEPENDS -+ ${_input_file} ) -+ list( APPEND ${_sources} ${_output_file} ) -+ -+ endforeach( ) -+endmacro( ) -+ -+ -+################################################# -+##### -+##### tde_automoc -+ -+macro( tde_automoc ) -+ foreach( _src_file ${ARGN} ) -+ -+ get_filename_component( _src_file "${_src_file}" ABSOLUTE ) -+ -+ if( EXISTS "${_src_file}" ) -+ -+ # read source file and check if have moc include -+ file( READ "${_src_file}" _src_content ) -+ string( REGEX MATCHALL "#include +[^ ]+\\.moc[\">]" _moc_includes "${_src_content}" ) -+ -+ # found included moc(s)? -+ if( _moc_includes ) -+ foreach( _moc_file ${_moc_includes} ) -+ -+ # extracting moc filename -+ string( REGEX MATCH "[^ <\"]+\\.moc" _moc_file "${_moc_file}" ) -+ set( _moc_file "${CMAKE_CURRENT_BINARY_DIR}/${_moc_file}" ) -+ -+ # create header filename -+ get_filename_component( _src_path "${_src_file}" ABSOLUTE ) -+ get_filename_component( _src_path "${_src_path}" PATH ) -+ get_filename_component( _src_header "${_moc_file}" NAME_WE ) -+ set( _header_file "${_src_path}/${_src_header}.h" ) -+ -+ # if header doesn't exists, check in META_INCLUDES -+ if( NOT EXISTS "${_header_file}" ) -+ unset( _found ) -+ foreach( _src_path ${_meta_includes} ) -+ set( _header_file "${_src_path}/${_src_header}.h" ) -+ if( EXISTS "${_header_file}" ) -+ set( _found 1 ) -+ break( ) -+ endif( ) -+ endforeach( ) -+ if( NOT _found ) -+ get_filename_component( _moc_file "${_moc_file}" NAME ) -+ tde_message_fatal( "AUTOMOC error: '${_moc_file}' cannot be generated.\n Reason: '${_src_file}.h' not found." ) -+ endif( ) -+ endif( ) -+ -+ # moc-ing header -+ add_custom_command( OUTPUT ${_moc_file} -+ COMMAND ${TMOC_EXECUTABLE} ${_header_file} -o ${_moc_file} -+ DEPENDS ${_header_file} ) -+ -+ # create dependency between source file and moc file -+ set_property( SOURCE ${_src_file} APPEND PROPERTY OBJECT_DEPENDS ${_moc_file} ) -+ -+ endforeach( _moc_file ) -+ -+ endif( _moc_includes ) -+ -+ endif( EXISTS "${_src_file}" ) -+ -+ endforeach( _src_file ) -+endmacro( tde_automoc ) -+ -+ -+################################################# -+##### -+##### __tde_internal_process_sources -+ -+macro( __tde_internal_process_sources _sources ) -+ -+ unset( ${_sources} ) -+ -+ foreach( _arg ${ARGN} ) -+ get_filename_component( _ext ${_arg} EXT ) -+ get_filename_component( _name ${_arg} NAME_WE ) -+ get_filename_component( _path ${_arg} PATH ) -+ -+ # if not path, set it to "." -+ if( NOT _path ) -+ set( _path "./" ) -+ endif( NOT _path ) -+ -+ # handle .ui files -+ if( ${_ext} STREQUAL ".ui" ) -+ tde_add_ui_files( ${_sources} ${_arg} ) -+ -+ # handle .skel files -+ elseif( ${_ext} STREQUAL ".skel" ) -+ kde3_add_dcop_skels( ${_sources} ${_path}/${_name}.h ) -+ -+ # handle .stub files -+ elseif( ${_ext} STREQUAL ".stub" ) -+ kde3_add_dcop_stubs( ${_sources} ${_path}/${_name}.h ) -+ -+ # handle .kcfgc files -+ elseif( ${_ext} STREQUAL ".kcfgc" ) -+ kde3_add_kcfg_files( ${_sources} ${_arg} ) -+ -+ # handle any other files -+ else( ${_ext} STREQUAL ".ui" ) -+ list(APPEND ${_sources} ${_arg} ) -+ endif( ${_ext} STREQUAL ".ui" ) -+ endforeach( _arg ) -+ -+endmacro( __tde_internal_process_sources ) -+ -+ -+################################################# -+##### -+##### tde_install_libtool_file -+ -+macro( tde_install_libtool_file _target _destination ) -+ -+ get_target_property( _target_location ${_target} LOCATION ) -+ -+ # get name of target -+ get_filename_component( _name ${_target_location} NAME_WE ) -+ -+ # get .la name -+ set( _laname ${_name}.la ) -+ -+ # get .so name -+ get_filename_component( _soname ${_target_location} NAME ) -+ -+ # get version of target -+ get_target_property( _target_version ${_target} VERSION ) -+ get_target_property( _target_soversion ${_target} SOVERSION ) -+ -+ # we have so version -+ if( _target_version ) -+ set( _library_name_1 "${_soname}.${_target_version}" ) -+ set( _library_name_2 "${_soname}.${_target_soversion}" ) -+ set( _library_name_3 "${_soname}" ) -+ -+ string( REGEX MATCH "^([0-9]+)\\.([0-9]+)\\.([0-9]+)$" _dummy "${_target_version}" ) -+ set( _version_current "${CMAKE_MATCH_1}" ) -+ set( _version_age "${CMAKE_MATCH_2}" ) -+ set( _version_revision "${CMAKE_MATCH_3}" ) -+ -+ # we have no so version (module?) -+ else( _target_version ) -+ set( _library_name_1 "${_soname}" ) -+ set( _library_name_2 "${_soname}" ) -+ set( _library_name_3 "${_soname}" ) -+ set( _version_current "0" ) -+ set( _version_age "0" ) -+ set( _version_revision "0" ) -+ endif( _target_version ) -+ -+ if( IS_ABSOLUTE ${_destination} ) -+ set( _libdir "${_destination}" ) -+ else( IS_ABSOLUTE ${_destination} ) -+ set( _libdir "${CMAKE_INSTALL_PREFIX}/${_destination}" ) -+ endif( IS_ABSOLUTE ${_destination} ) -+ -+ configure_file( ${CMAKE_SOURCE_DIR}/cmake/modules/template_libtool_file.cmake "${_laname}" @ONLY ) -+ -+ install( FILES "${CMAKE_CURRENT_BINARY_DIR}/${_laname}" DESTINATION ${_destination} ) -+ -+endmacro( tde_install_libtool_file ) -+ -+ -+################################################# -+##### -+##### tde_install_export / tde_import -+ -+function( tde_install_export ) -+ file( GLOB export_files ${CMAKE_CURRENT_BINARY_DIR}/export-*.cmake ) -+ -+ set( mode "WRITE" ) -+ foreach( filename ${export_files} ) -+ file( READ ${filename} content ) -+ file( ${mode} "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.cmake" "${content}" ) -+ set( mode "APPEND" ) -+ endforeach( ) -+ -+ install( FILES "${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}.cmake" DESTINATION ${CMAKE_INSTALL_DIR} ) -+endfunction( ) -+ -+ -+macro( tde_import _library ) -+ message( STATUS "checking for '${_library}'" ) -+ string( TOUPPER "BUILD_${_library}" _build ) -+ if( ${_build} ) -+ message( STATUS " ok, activated for build" ) -+ else() -+ if( EXISTS "${TDE_CMAKE_DIR}/${_library}.cmake" ) -+ include( "${TDE_CMAKE_DIR}/${_library}.cmake" ) -+ message( STATUS " ok, found import file" ) -+ else() -+ tde_message_fatal( "'${_library}' are required,\n but is not installed nor selected for build" ) -+ endif() -+ endif() -+endmacro() -+ -+ -+################################################# -+##### -+##### tde_add_library -+ -+macro( tde_add_library _arg_target ) -+ -+ unset( _target ) -+ unset( _type ) -+ unset( _static_pic ) -+ unset( _automoc ) -+ unset( _meta_includes ) -+ unset( _no_libtool_file ) -+ unset( _no_export ) -+ unset( _version ) -+ unset( _sources ) -+ unset( _destination ) -+ unset( _embed ) -+ unset( _link ) -+ unset( _dependencies ) -+ unset( _storage ) -+ -+ set( _shouldnotlink no ) -+ -+ # metadata -+ unset( _description ) -+ unset( _license ) -+ unset( _copyright ) -+ unset( _authors ) -+ unset( _product ) -+ unset( _organization ) -+ unset( _version ) -+ unset( _datetime ) -+ unset( _notes ) -+ -+ # default metadata -+ set( _product "Trinity Desktop Environment" ) -+ tde_curdatetime( _datetime ) -+ -+ foreach( _arg ${ARGV} ) -+ -+ # this variable help us to skip -+ # storing unapropriate values (i.e. directives) -+ unset( _skip_store ) -+ -+ # found one of directives: "SHARED", "STATIC", "MODULE" -+ if( "+${_arg}" STREQUAL "+SHARED" OR "+${_arg}" STREQUAL "+STATIC" OR "+${_arg}" STREQUAL "+MODULE" ) -+ set( _skip_store 1 ) -+ set( _type "${_arg}" ) -+ endif( "+${_arg}" STREQUAL "+SHARED" OR "+${_arg}" STREQUAL "+STATIC" OR "+${_arg}" STREQUAL "+MODULE" ) -+ -+ # found directive "STATIC_PIC" -+ if( "+${_arg}" STREQUAL "+STATIC_PIC" ) -+ set( _skip_store 1 ) -+ set( _type "STATIC" ) -+ set( _static_pic 1 ) -+ endif( "+${_arg}" STREQUAL "+STATIC_PIC" ) -+ -+ # found directive "AUTOMOC" -+ if( "+${_arg}" STREQUAL "+AUTOMOC" ) -+ set( _skip_store 1 ) -+ set( _automoc 1 ) -+ endif( "+${_arg}" STREQUAL "+AUTOMOC" ) -+ -+ # found directive "META_INCLUDES" -+ if( "+${_arg}" STREQUAL "+META_INCLUDES" ) -+ set( _skip_store 1 ) -+ set( _storage "_meta_includes" ) -+ endif( ) -+ -+ # found directive "NO_LIBTOOL_FILE" -+ if( "+${_arg}" STREQUAL "+NO_LIBTOOL_FILE" ) -+ set( _skip_store 1 ) -+ set( _no_libtool_file 1 ) -+ endif( "+${_arg}" STREQUAL "+NO_LIBTOOL_FILE" ) -+ -+ # found directive "NO_EXPORT" -+ if( "+${_arg}" STREQUAL "+NO_EXPORT" ) -+ set( _skip_store 1 ) -+ set( _no_export 1 ) -+ endif( "+${_arg}" STREQUAL "+NO_EXPORT" ) -+ -+ # found directive "VERSION" -+ if( "+${_arg}" STREQUAL "+VERSION" ) -+ set( _skip_store 1 ) -+ set( _storage "_version" ) -+ endif( "+${_arg}" STREQUAL "+VERSION" ) -+ -+ # found directive "SOURCES" -+ if( "+${_arg}" STREQUAL "+SOURCES" ) -+ set( _skip_store 1 ) -+ set( _storage "_sources" ) -+ endif( "+${_arg}" STREQUAL "+SOURCES" ) -+ -+ # found directive "EMBED" -+ if( "+${_arg}" STREQUAL "+EMBED" ) -+ set( _skip_store 1 ) -+ set( _storage "_embed" ) -+ endif( "+${_arg}" STREQUAL "+EMBED" ) -+ -+ # found directive "LINK" -+ if( "+${_arg}" STREQUAL "+LINK" ) -+ set( _skip_store 1 ) -+ set( _storage "_link" ) -+ endif( "+${_arg}" STREQUAL "+LINK" ) -+ -+ # found directive "DEPENDENCIES" -+ if( "+${_arg}" STREQUAL "+DEPENDENCIES" ) -+ set( _skip_store 1 ) -+ set( _storage "_dependencies" ) -+ endif( "+${_arg}" STREQUAL "+DEPENDENCIES" ) -+ -+ # found directive "DESTINATION" -+ if( "+${_arg}" STREQUAL "+DESTINATION" ) -+ set( _skip_store 1 ) -+ set( _storage "_destination" ) -+ unset( ${_storage} ) -+ endif( "+${_arg}" STREQUAL "+DESTINATION" ) -+ -+ # metadata -+ if( "+${_arg}" STREQUAL "+DESCRIPTION" ) -+ set( _skip_store 1 ) -+ set( _storage "_description" ) -+ endif( ) -+ if( "+${_arg}" STREQUAL "+LICENSE" ) -+ set( _skip_store 1 ) -+ set( _storage "_license" ) -+ endif( ) -+ if( "+${_arg}" STREQUAL "+COPYRIGHT" ) -+ set( _skip_store 1 ) -+ set( _storage "_copyright" ) -+ endif( ) -+ if( "+${_arg}" STREQUAL "+AUTHORS" ) -+ set( _skip_store 1 ) -+ set( _storage "_authors" ) -+ endif( ) -+ if( "+${_arg}" STREQUAL "+PRODUCT" ) -+ set( _skip_store 1 ) -+ set( _storage "_product" ) -+ endif( ) -+ if( "+${_arg}" STREQUAL "+ORGANIZATION" ) -+ set( _skip_store 1 ) -+ set( _storage "_organization" ) -+ endif( ) -+ if( "+${_arg}" STREQUAL "+VERSION" ) -+ set( _skip_store 1 ) -+ set( _storage "_version" ) -+ endif( ) -+ if( "+${_arg}" STREQUAL "+DATETIME" ) -+ set( _skip_store 1 ) -+ set( _storage "_datetime" ) -+ endif( ) -+ if( "+${_arg}" STREQUAL "+NOTES" ) -+ set( _skip_store 1 ) -+ set( _storage "_notes" ) -+ endif( ) -+ -+ # storing value -+ if( _storage AND NOT _skip_store ) -+ list( APPEND ${_storage} ${_arg} ) -+ list( REMOVE_DUPLICATES ${_storage} ) -+ endif( _storage AND NOT _skip_store ) -+ -+ endforeach( _arg ) -+ -+ # if no type is set, we choose one -+ # based on BUILD_SHARED_LIBS -+ if( NOT _type ) -+ if( BUILD_SHARED_LIBS ) -+ set( _type "SHARED" ) -+ else( BUILD_SHARED_LIBS ) -+ set( _type "STATIC" ) -+ endif( BUILD_SHARED_LIBS ) -+ endif( NOT _type ) -+ -+ # change target name, based on type -+ string( TOLOWER "${_type}" _type_lower ) -+ set( _target "${_arg_target}-${_type_lower}" ) -+ -+ # create variables like "LIB_xxx" for convenience -+ if( ${_type} STREQUAL "SHARED" ) -+ string( TOUPPER "${_arg_target}" _tmp ) -+ set( LIB_${_tmp} ${_target} CACHE INTERNAL LIB_${tmp} FORCE ) -+ endif( ${_type} STREQUAL "SHARED" ) -+ -+ # disallow target without sources -+ if( NOT _sources ) -+ message( FATAL_ERROR "\nTarget [$_target] have no sources." ) -+ endif( NOT _sources ) -+ -+ # processing different types of sources -+ __tde_internal_process_sources( _sources ${_sources} ) -+ -+ # set automoc -+ if( _automoc ) -+ tde_automoc( ${_sources} ) -+ endif( _automoc ) -+ -+ # add target -+ add_library( ${_target} ${_type} ${_sources} ) -+ -+ # we assume that modules have no prefix and no version -+ # also, should not link -+ if( ${_type} STREQUAL "MODULE" ) -+ set_target_properties( ${_target} PROPERTIES PREFIX "" ) -+ unset( _version ) -+ set( _shouldnotlink yes ) -+ endif( ${_type} STREQUAL "MODULE" ) -+ -+ # set real name of target -+ set_target_properties( ${_target} PROPERTIES OUTPUT_NAME ${_arg_target} ) -+ -+ # set -fPIC flag for static libraries -+ if( _static_pic ) -+ set_target_properties( ${_target} PROPERTIES COMPILE_FLAGS -fPIC ) -+ endif( _static_pic ) -+ -+ # set version -+ if( _version ) -+ if( ${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD" ) -+ # OpenBSD: _soversion and _version both contains only major and minor -+ string( REGEX MATCH "^([0-9]+)\\.([0-9]+)\\.([0-9]+)$" _dummy "${_version}" ) -+ set( _version "${CMAKE_MATCH_1}.${CMAKE_MATCH_2}" ) -+ set( _soversion "${CMAKE_MATCH_1}.${CMAKE_MATCH_2}" ) -+ else( ${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD" ) -+ # General (Linux) case: _soversion contains only the major number of version -+ string( REGEX MATCH "^[0-9]+" _soversion ${_version} ) -+ endif( ${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD" ) -+ set_target_properties( ${_target} PROPERTIES VERSION ${_version} SOVERSION ${_soversion} ) -+ endif( _version ) -+ -+ # set interface libraries (only for shared) -+ unset( _shared_libs ) -+ if( NOT ${_type} STREQUAL "STATIC" ) -+ foreach( _lib ${_link} ) -+ #get_target_property( _lib_type ${_lib} TYPE ) -+ #if( NOT "STATIC_LIBRARY" STREQUAL "${_lib_type}" ) -+ if( NOT ${_lib} MATCHES ".+-static" ) -+ list( APPEND _shared_libs ${_lib} ) -+ endif( NOT ${_lib} MATCHES ".+-static" ) -+ #endif( NOT "STATIC_LIBRARY" STREQUAL "${_lib_type}" ) -+ endforeach( _lib ) -+ endif( NOT ${_type} STREQUAL "STATIC" ) -+ -+ # set embedded archives -+ if( _embed ) -+ list( INSERT _link 0 -Wl,-whole-archive ${_embed} -Wl,-no-whole-archive ) -+ endif( _embed ) -+ -+ # set link libraries -+ if( _link ) -+ if( _embed AND ${CMAKE_VERSION} VERSION_EQUAL "2.8.12.0" ) -+ # hack for broken CMake 2.8.12.0 -+ set_target_properties( ${_target} PROPERTIES LINK_LIBRARIES "${_link}" ) -+ else( _embed AND ${CMAKE_VERSION} VERSION_EQUAL "2.8.12.0" ) -+ target_link_libraries( ${_target} ${_link} ) -+ endif( _embed AND ${CMAKE_VERSION} VERSION_EQUAL "2.8.12.0" ) -+ endif( ) -+ if( _shared_libs ) -+ set_target_properties( ${_target} PROPERTIES -+ LINK_INTERFACE_LIBRARIES "${_shared_libs}" -+ INTERFACE_LINK_LIBRARIES "${_shared_libs}" ) -+ endif( _shared_libs ) -+ -+ # set dependencies -+ if( _dependencies ) -+ add_dependencies( ${_target} ${_dependencies} ) -+ endif( _dependencies ) -+ -+ # if destination directory is set -+ if( _destination ) -+ -+ # we export only shared libs (no static, no modules); -+ # also, do not export targets marked as "NO_EXPORT" (usually for tdeinit) -+ if( "SHARED" STREQUAL ${_type} AND NOT _no_export ) -+ -+ # get target properties: output name, version, soversion -+ get_target_property( _output ${_target} LOCATION ) -+ get_filename_component( _output ${_output} NAME ) -+ get_target_property( _version ${_target} VERSION ) -+ get_target_property( _soversion ${_target} SOVERSION ) -+ -+ if( _version ) -+ set( _location "${_destination}/${_output}.${_version}" ) -+ set( _soname "${_output}.${_soversion}" ) -+ else( ) -+ set( _location "${_destination}/${_output}" ) -+ set( _soname "${_output}" ) -+ endif( ) -+ -+ configure_file( ${CMAKE_SOURCE_DIR}/cmake/modules/template_export_library.cmake "${PROJECT_BINARY_DIR}/export-${_target}.cmake" @ONLY ) -+ endif( ) -+ -+ # install target -+ install( TARGETS ${_target} DESTINATION ${_destination} ) -+ -+ # install .la files for dynamic libraries -+ if( NOT "STATIC" STREQUAL ${_type} AND NOT _no_libtool_file ) -+ tde_install_libtool_file( ${_target} ${_destination} ) -+ endif( ) -+ -+ endif( _destination ) -+ -+ # embed name and metadata -+ set( ELF_EMBEDDING_METADATA "\"${_target}\" \"${_description}\" \"${_license}\" \"${_copyright}\" \"${_authors}\" \"${_product}\" \"${_organization}\" \"${_version}\" \"${_datetime}\" \"x-sharedlib\" \"${TDE_SCM_MODULE_NAME}\" \"${TDE_SCM_MODULE_REVISION}\" \"${_notes}\"" ) -+ separate_arguments( ELF_EMBEDDING_METADATA ) -+ if( EXISTS ${CMAKE_INSTALL_PREFIX}/bin/tdelfeditor ) -+ add_custom_command( -+ TARGET ${_target} -+ POST_BUILD -+ COMMAND ${CMAKE_INSTALL_PREFIX}/bin/tdelfeditor -m ${CMAKE_CURRENT_BINARY_DIR}/${_soname} ${ELF_EMBEDDING_METADATA} || true -+ COMMAND ${CMAKE_INSTALL_PREFIX}/bin/tdelfeditor -e ${CMAKE_CURRENT_BINARY_DIR}/${_soname} || true -+ ) -+ if( _version ) -+ add_custom_command( -+ TARGET ${_target} -+ POST_BUILD -+ COMMAND ${CMAKE_INSTALL_PREFIX}/bin/tdelfeditor -m ${CMAKE_CURRENT_BINARY_DIR}/${_soname}.${_version} ${ELF_EMBEDDING_METADATA} || true -+ COMMAND ${CMAKE_INSTALL_PREFIX}/bin/tdelfeditor -e ${CMAKE_CURRENT_BINARY_DIR}/${_soname}.${_version} || true -+ ) -+ endif( ) -+ endif( EXISTS ${CMAKE_INSTALL_PREFIX}/bin/tdelfeditor ) -+ -+endmacro( tde_add_library ) -+ -+ -+################################################# -+##### -+##### tde_add_kpart -+ -+macro( tde_add_kpart _target ) -+ tde_add_library( ${_target} ${ARGN} MODULE ) -+endmacro( tde_add_kpart ) -+ -+ -+################################################# -+##### -+##### tde_curdatetime -+macro( tde_curdatetime result ) -+ tde_execute_process( COMMAND "date" "+%m/%d/%Y %H:%M:%S" OUTPUT_VARIABLE ${result} ) -+ string( REGEX REPLACE "(..)/(..)/(....) (........).*" "\\1/\\2/\\3 \\4" ${result} ${${result}} ) -+endmacro( tde_curdatetime ) -+ -+ -+################################################# -+##### -+##### tde_add_executable -+ -+macro( tde_add_executable _arg_target ) -+ -+ unset( _target ) -+ unset( _automoc ) -+ unset( _meta_includes ) -+ unset( _setuid ) -+ unset( _sources ) -+ unset( _destination ) -+ unset( _link ) -+ unset( _dependencies ) -+ unset( _storage ) -+ -+ # metadata -+ unset( _description ) -+ unset( _license ) -+ unset( _copyright ) -+ unset( _authors ) -+ unset( _product ) -+ unset( _organization ) -+ unset( _version ) -+ unset( _datetime ) -+ unset( _notes ) -+ -+ # default metadata -+ set( _product "Trinity Desktop Environment" ) -+ set( _version "${TDE_VERSION}" ) -+ tde_curdatetime( _datetime ) -+ -+ foreach( _arg ${ARGV} ) -+ -+ # this variable help us to skip -+ # storing unapropriate values (i.e. directives) -+ unset( _skip_store ) -+ -+ # found directive "AUTOMOC" -+ if( "+${_arg}" STREQUAL "+AUTOMOC" ) -+ set( _skip_store 1 ) -+ set( _automoc 1 ) -+ endif( "+${_arg}" STREQUAL "+AUTOMOC" ) -+ -+ # found directive "META_INCLUDES" -+ if( "+${_arg}" STREQUAL "+META_INCLUDES" ) -+ set( _skip_store 1 ) -+ set( _storage "_meta_includes" ) -+ endif( ) -+ -+ # found directive "SETUID" -+ if( "+${_arg}" STREQUAL "+SETUID" ) -+ set( _skip_store 1 ) -+ set( _setuid 1 ) -+ endif( "+${_arg}" STREQUAL "+SETUID" ) -+ -+ # found directive "SOURCES" -+ if( "+${_arg}" STREQUAL "+SOURCES" ) -+ set( _skip_store 1 ) -+ set( _storage "_sources" ) -+ endif( "+${_arg}" STREQUAL "+SOURCES" ) -+ -+ # found directive "LINK" -+ if( "+${_arg}" STREQUAL "+LINK" ) -+ set( _skip_store 1 ) -+ set( _storage "_link" ) -+ endif( "+${_arg}" STREQUAL "+LINK" ) -+ -+ # found directive "DEPENDENCIES" -+ if( "+${_arg}" STREQUAL "+DEPENDENCIES" ) -+ set( _skip_store 1 ) -+ set( _storage "_dependencies" ) -+ endif( "+${_arg}" STREQUAL "+DEPENDENCIES" ) -+ -+ # found directive "DESTINATION" -+ if( "+${_arg}" STREQUAL "+DESTINATION" ) -+ set( _skip_store 1 ) -+ set( _storage "_destination" ) -+ unset( ${_storage} ) -+ endif( "+${_arg}" STREQUAL "+DESTINATION" ) -+ -+ # metadata -+ if( "+${_arg}" STREQUAL "+DESCRIPTION" ) -+ set( _skip_store 1 ) -+ set( _storage "_description" ) -+ endif( ) -+ if( "+${_arg}" STREQUAL "+LICENSE" ) -+ set( _skip_store 1 ) -+ set( _storage "_license" ) -+ endif( ) -+ if( "+${_arg}" STREQUAL "+COPYRIGHT" ) -+ set( _skip_store 1 ) -+ set( _storage "_copyright" ) -+ endif( ) -+ if( "+${_arg}" STREQUAL "+AUTHORS" ) -+ set( _skip_store 1 ) -+ set( _storage "_authors" ) -+ endif( ) -+ if( "+${_arg}" STREQUAL "+PRODUCT" ) -+ set( _skip_store 1 ) -+ set( _storage "_product" ) -+ endif( ) -+ if( "+${_arg}" STREQUAL "+ORGANIZATION" ) -+ set( _skip_store 1 ) -+ set( _storage "_organization" ) -+ endif( ) -+ if( "+${_arg}" STREQUAL "+VERSION" ) -+ set( _skip_store 1 ) -+ set( _storage "_version" ) -+ endif( ) -+ if( "+${_arg}" STREQUAL "+DATETIME" ) -+ set( _skip_store 1 ) -+ set( _storage "_datetime" ) -+ endif( ) -+ if( "+${_arg}" STREQUAL "+NOTES" ) -+ set( _skip_store 1 ) -+ set( _storage "_notes" ) -+ endif( ) -+ -+ # storing value -+ if( _storage AND NOT _skip_store ) -+ #set( ${_storage} "${${_storage}} ${_arg}" ) -+ list( APPEND ${_storage} ${_arg} ) -+ endif( _storage AND NOT _skip_store ) -+ -+ endforeach( _arg ) -+ -+ set( _target "${_arg_target}" ) -+ -+ # disallow target without sources -+ if( NOT _sources ) -+ message( FATAL_ERROR "\nTarget [$_target] have no sources." ) -+ endif( NOT _sources ) -+ -+ # processing different types of sources -+ __tde_internal_process_sources( _sources ${_sources} ) -+ -+ # set automoc -+ if( _automoc ) -+ tde_automoc( ${_sources} ) -+ endif( _automoc ) -+ -+ # add target -+ add_executable( ${_target} ${_sources} ) -+ -+ # set link libraries -+ if( _link ) -+ target_link_libraries( ${_target} ${_link} ) -+ endif( _link ) -+ -+ # set dependencies -+ if( _dependencies ) -+ add_dependencies( ${_target} ${_dependencies} ) -+ endif( _dependencies ) -+ -+ # set PIE flags for setuid binaries -+ if( _setuid ) -+ set_target_properties( ${_target} PROPERTIES COMPILE_FLAGS "${TDE_PIE_CFLAGS}" ) -+ set_target_properties( ${_target} PROPERTIES LINK_FLAGS "${TDE_PIE_LDFLAGS}" ) -+ endif( _setuid ) -+ -+ # set destination directory -+ if( _destination ) -+ if( _setuid ) -+ install( TARGETS ${_target} DESTINATION ${_destination} PERMISSIONS OWNER_READ OWNER_WRITE OWNER_EXECUTE GROUP_EXECUTE WORLD_EXECUTE SETUID ) -+ else( _setuid ) -+ install( TARGETS ${_target} DESTINATION ${_destination} ) -+ endif( _setuid ) -+ endif( _destination ) -+ -+ # embed icon, name, and metadata -+ set( ELF_EMBEDDING_METADATA "\"${_target}\" \"${_description}\" \"${_license}\" \"${_copyright}\" \"${_authors}\" \"${_product}\" \"${_organization}\" \"${_version}\" \"${_datetime}\" \"${_target}\" \"${TDE_SCM_MODULE_NAME}\" \"${TDE_SCM_MODULE_REVISION}\" \"${_notes}\"" ) -+ separate_arguments( ELF_EMBEDDING_METADATA ) -+ if( EXISTS ${CMAKE_INSTALL_PREFIX}/bin/tdelfeditor ) -+ add_custom_command( -+ TARGET ${_target} -+ POST_BUILD -+ COMMAND ${CMAKE_INSTALL_PREFIX}/bin/tdelfeditor -m ${CMAKE_CURRENT_BINARY_DIR}/${_target} ${ELF_EMBEDDING_METADATA} || true -+ COMMAND ${CMAKE_INSTALL_PREFIX}/bin/tdelfeditor -e ${CMAKE_CURRENT_BINARY_DIR}/${_target} || true -+ COMMAND ${CMAKE_INSTALL_PREFIX}/bin/tdelfeditor -t ${CMAKE_CURRENT_BINARY_DIR}/${_target} ${_target} || true -+ ) -+ endif( EXISTS ${CMAKE_INSTALL_PREFIX}/bin/tdelfeditor ) -+ -+endmacro( tde_add_executable ) -+ -+ -+################################################# -+##### -+##### tde_add_tdeinit_executable -+ -+macro( tde_add_tdeinit_executable _target ) -+ -+ configure_file( ${CMAKE_SOURCE_DIR}/cmake/modules/template_tdeinit_executable.cmake ${_target}_tdeinit_executable.cpp COPYONLY ) -+ configure_file( ${CMAKE_SOURCE_DIR}/cmake/modules/template_tdeinit_module.cmake ${_target}_tdeinit_module.cpp COPYONLY ) -+ -+ unset( _sources ) -+ unset( _runtime_destination ) -+ unset( _library_destination ) -+ unset( _plugin_destination ) -+ -+ # default storage is _sources -+ set( _storage _sources ) -+ -+ # set default export to NO_EXPORT -+ set( _export "NO_EXPORT" ) -+ -+ foreach( _arg ${ARGN} ) -+ -+ # this variable help us to skip -+ # storing unapropriate values (i.e. directives) -+ unset( _skip_store ) -+ -+ # found directive "EXPORT" -+ if( "+${_arg}" STREQUAL "+EXPORT" ) -+ set( _skip_store 1 ) -+ unset( _export ) -+ endif( "+${_arg}" STREQUAL "+EXPORT" ) -+ -+ # found directive "RUNTIME_DESTINATION" -+ if( "+${_arg}" STREQUAL "+RUNTIME_DESTINATION" ) -+ set( _skip_store 1 ) -+ set( _storage "_runtime_destination" ) -+ unset( ${_storage} ) -+ endif( "+${_arg}" STREQUAL "+RUNTIME_DESTINATION" ) -+ -+ # found directive "LIBRARY_DESTINATION" -+ if( "+${_arg}" STREQUAL "+LIBRARY_DESTINATION" ) -+ set( _skip_store 1 ) -+ set( _storage "_library_destination" ) -+ unset( ${_storage} ) -+ endif( "+${_arg}" STREQUAL "+LIBRARY_DESTINATION" ) -+ -+ # found directive "PLUGIN_DESTINATION" -+ if( "+${_arg}" STREQUAL "+PLUGIN_DESTINATION" ) -+ set( _skip_store 1 ) -+ set( _storage "_plugin_destination" ) -+ unset( ${_storage} ) -+ endif( "+${_arg}" STREQUAL "+PLUGIN_DESTINATION" ) -+ -+ # storing value -+ if( _storage AND NOT _skip_store ) -+ list( APPEND ${_storage} ${_arg} ) -+ set( _storage "_sources" ) -+ endif( _storage AND NOT _skip_store ) -+ -+ endforeach( _arg ) -+ -+ # if destinations are not set, we using some defaults -+ # we assume that tdeinit executable MUST be installed -+ # (otherwise why we build it?) -+ if( NOT _runtime_destination ) -+ set( _runtime_destination ${BIN_INSTALL_DIR} ) -+ endif( NOT _runtime_destination ) -+ if( NOT _library_destination ) -+ set( _library_destination ${LIB_INSTALL_DIR} ) -+ endif( NOT _library_destination ) -+ if( NOT _plugin_destination ) -+ set( _plugin_destination ${PLUGIN_INSTALL_DIR} ) -+ endif( NOT _plugin_destination ) -+ -+ # create the library -+ tde_add_library( tdeinit_${_target} ${_sources} SHARED ${_export} -+ DESTINATION ${_library_destination} -+ ) -+ -+ # create the executable -+ tde_add_executable( ${_target} -+ SOURCES ${CMAKE_CURRENT_BINARY_DIR}/${_target}_tdeinit_executable.cpp -+ LINK tdeinit_${_target}-shared -+ DESTINATION ${_runtime_destination} -+ ) -+ -+ # create the plugin -+ tde_add_kpart( ${_target} -+ SOURCES ${CMAKE_CURRENT_BINARY_DIR}/${_target}_tdeinit_module.cpp -+ LINK tdeinit_${_target}-shared -+ DESTINATION ${_plugin_destination} -+ ) -+ -+endmacro( tde_add_tdeinit_executable ) -+ -+ -+################################################# -+##### -+##### tde_create_translation -+ -+macro( tde_create_translation ) -+ -+ unset( _srcs ) -+ unset( _lang ) -+ unset( _dest ) -+ unset( _out_name ) -+ unset( _directive ) -+ unset( _var ) -+ -+ foreach( _arg ${ARGN} ) -+ -+ # found directive "FILES" -+ if( "+${_arg}" STREQUAL "+FILES" ) -+ unset( _srcs ) -+ set( _var _srcs ) -+ set( _directive 1 ) -+ endif( ) -+ -+ # found directive "LANG" -+ if( "+${_arg}" STREQUAL "+LANG" ) -+ unset( _lang ) -+ set( _var _lang ) -+ set( _directive 1 ) -+ endif( ) -+ -+ # found directive "DESTINATION" -+ if( "+${_arg}" STREQUAL "+DESTINATION" ) -+ unset( _dest ) -+ set( _var _dest ) -+ set( _directive 1 ) -+ endif( ) -+ -+ # found directive "DESTINATION" -+ if( "+${_arg}" STREQUAL "+OUTPUT_NAME" ) -+ unset( _proj ) -+ set( _var _out_name ) -+ set( _directive 1 ) -+ endif( ) -+ -+ # collect data -+ if( _directive ) -+ unset( _directive ) -+ elseif( _var ) -+ list( APPEND ${_var} ${_arg} ) -+ endif() -+ -+ endforeach( ) -+ -+ if( NOT MSGFMT_EXECUTABLE ) -+ tde_message_fatal( "MSGFMT_EXECUTABLE variable is not defined" ) -+ elseif( NOT _lang ) -+ tde_message_fatal( "missing LANG directive" ) -+ endif( ) -+ -+ # if no file specified, include all *.po files -+ if( NOT _srcs ) -+ file( GLOB _srcs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.po ) -+ endif( ) -+ if( NOT _srcs ) -+ tde_message_fatal( "no source files" ) -+ endif( ) -+ -+ if( NOT _lang STREQUAL "auto") -+ set( _real_lang ${_lang} ) -+ -+ if( NOT _dest ) -+ set( _dest "${LOCALE_INSTALL_DIR}/${_lang}/LC_MESSAGES" ) -+ endif( ) -+ -+ # OUTPUT_NAME can only be used if we have only one file -+ list( LENGTH _srcs _srcs_num) -+ if( _out_name AND _srcs_num GREATER 1 ) -+ tde_message_fatal( "OUTPUT_NAME can be supplied only with single file or LANG=auto" ) -+ endif( ) -+ -+ elseif( NOT _out_name ) -+ tde_message_fatal( "LANG=auto reqires OUTPUT_NAME directive to be set" ) -+ elseif( _dest ) -+ tde_message_fatal( "DESTINATION cannot be used with LANG=auto" ) -+ endif( ) -+ -+ # generate *.mo files -+ foreach( _src ${_srcs} ) -+ -+ get_filename_component( _src ${_src} ABSOLUTE ) -+ -+ if( _out_name ) -+ set( _out ${_out_name} ) -+ if( _lang STREQUAL "auto" ) -+ get_filename_component( _real_lang ${_src} NAME_WE ) -+ set( _dest "${LOCALE_INSTALL_DIR}/${_real_lang}/LC_MESSAGES" ) -+ endif( ) -+ else( ) -+ get_filename_component( _out ${_src} NAME_WE ) -+ endif( ) -+ -+ string( REPLACE "@" "_" _target ${_real_lang} ) -+ set( _out_filename "${_out}-${_real_lang}.mo" ) -+ set( _install_filename "${_out}.mo" ) -+ -+ add_custom_command( -+ OUTPUT ${_out_filename} -+ COMMAND ${MSGFMT_EXECUTABLE} ${_src} -o ${_out_filename} -+ DEPENDS ${_src} ) -+ add_custom_target( "${_out}-${_target}-translation" ALL DEPENDS ${_out_filename} ) -+ install( FILES ${CMAKE_CURRENT_BINARY_DIR}/${_out_filename} RENAME ${_install_filename} DESTINATION ${_dest} ) -+ -+ endforeach( ) -+ -+endmacro( ) -+ -+ -+################################################# -+##### -+##### tde_create_handbook -+ -+macro( tde_create_handbook ) -+ -+ unset( _target ) -+ unset( _dest ) -+ unset( _noindex ) -+ unset( _srcs ) -+ unset( _extra ) -+ unset( _srcdir ) -+ -+ set( _lang en ) -+ set( _first_arg 1 ) -+ set( _var _target ) -+ -+ foreach( _arg ${ARGN} ) -+ -+ # found directive "NOINDEX" -+ if( "+${_arg}" STREQUAL "+NOINDEX" ) -+ set( _noindex 1 ) -+ set( _directive 1 ) -+ endif() -+ -+ # found directive "FILES" -+ if( "+${_arg}" STREQUAL "+FILES" ) -+ unset( _srcs ) -+ set( _var _srcs ) -+ set( _directive 1 ) -+ endif() -+ -+ # found directive "EXTRA" -+ if( "+${_arg}" STREQUAL "+EXTRA" ) -+ unset( _extra ) -+ set( _var _extra ) -+ set( _directive 1 ) -+ endif() -+ -+ # found directive "SRCDIR" -+ if( "+${_arg}" STREQUAL "+SRCDIR" ) -+ unset( _srcdir ) -+ set( _var _srcdir ) -+ set( _directive 1 ) -+ endif() -+ -+ # found directive DESTINATION -+ if( "+${_arg}" STREQUAL "+DESTINATION" ) -+ unset( _dest ) -+ set( _var _dest ) -+ set( _directive 1 ) -+ endif() -+ -+ # found directive "LANG" -+ if( "+${_arg}" STREQUAL "+LANG" ) -+ unset( _lang ) -+ set( _var _lang ) -+ set( _directive 1 ) -+ endif() -+ -+ # collect data -+ if( _directive ) -+ unset( _directive ) -+ elseif( _var ) -+ if( _first_arg ) -+ set( _target "${_arg}" ) -+ else() -+ list( APPEND ${_var} ${_arg} ) -+ endif() -+ endif() -+ -+ unset( _first_arg ) -+ -+ endforeach() -+ -+ # if no target specified, try to guess it from DESTINATION -+ if( NOT _target ) -+ if( NOT _dest ) -+ tde_message_fatal( "target name cannot be determined because DESTINATION is not set" ) -+ endif() -+ string( REPLACE "/" "-" _target "${_dest}" ) -+ endif() -+ -+ set( _target "${_target}-${_lang}-handbook" ) -+ -+ # if no file specified, include all docbooks, stylesheets and images -+ if( NOT _srcs ) -+ file( GLOB _srcs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} *.docbook *.css *.png ) -+ endif() -+ -+ # if no destination specified, defaulting to HTML_INSTALL_DIR -+ if( NOT _dest ) -+ set( _dest "${HTML_INSTALL_DIR}/${_lang}" ) -+ # if destination is NOT absolute path, -+ # we assume that is relative to HTML_INSTALL_DIR -+ elseif( NOT IS_ABSOLUTE ${_dest} ) -+ set( _dest "${HTML_INSTALL_DIR}/${_lang}/${_dest}" ) -+ endif() -+ -+ if( NOT _srcs ) -+ tde_message_fatal( "no source files" ) -+ endif() -+ -+ if( NOT _noindex ) -+ -+ # check for index.docbook -+ list( FIND _srcs "index.docbook" _find_index ) -+ if( -1 EQUAL _find_index ) -+ tde_message_fatal( "missing index.docbook file" ) -+ endif() -+ -+ # check for srcdir -+ if( _srcdir ) -+ set( _srcdir "--srcdir=${_srcdir}" ) -+ endif() -+ -+ add_custom_command( -+ OUTPUT index.cache.bz2 -+ COMMAND ${KDE3_MEINPROC_EXECUTABLE} ${_srcdir} --check --cache index.cache.bz2 ${CMAKE_CURRENT_SOURCE_DIR}/index.docbook -+ DEPENDS ${_srcs} ) -+ -+ add_custom_target( ${_target} ALL DEPENDS index.cache.bz2 ) -+ -+ list( APPEND _srcs ${CMAKE_CURRENT_BINARY_DIR}/index.cache.bz2 ) -+ -+ if( NOT TDE_HTML_DIR ) -+ set( TDE_HTML_DIR ${HTML_INSTALL_DIR} ) -+ endif( ) -+ -+ tde_install_empty_directory( ${_dest} ) -+ tde_install_symlink( ${TDE_HTML_DIR}/${_lang}/common ${_dest} ) -+ -+ endif() -+ -+ install( FILES ${_srcs} ${_extra} DESTINATION ${_dest} ) -+ -+endmacro( ) -+ -+ -+################################################# -+##### -+##### tde_include_tqt -+ -+macro( tde_include_tqt ) -+ foreach( _cpp ${ARGN} ) -+ set_source_files_properties( ${_cpp} PROPERTIES COMPILE_FLAGS "-include tqt.h" ) -+ endforeach() -+endmacro( ) -+ -+ -+################################################# -+##### -+##### tde_install_symlink -+ -+macro( tde_install_symlink _target _link ) -+ -+ # if path is relative, we must to prefix it with CMAKE_INSTALL_PREFIX -+ if( IS_ABSOLUTE "${_link}" ) -+ set( _destination "${_link}" ) -+ else( IS_ABSOLUTE "${_link}" ) -+ set( _destination "${CMAKE_INSTALL_PREFIX}/${_link}" ) -+ endif( IS_ABSOLUTE "${_link}" ) -+ -+ get_filename_component( _path "${_destination}" PATH ) -+ if( NOT IS_DIRECTORY "\$ENV{DESTDIR}${_path}" ) -+ install( CODE "file( MAKE_DIRECTORY \"\$ENV{DESTDIR}${_path}\" )" ) -+ endif( NOT IS_DIRECTORY "\$ENV{DESTDIR}${_path}" ) -+ -+ install( CODE "execute_process( COMMAND ln -s ${_target} \$ENV{DESTDIR}${_destination} )" ) -+ -+endmacro( tde_install_symlink ) -+ -+ -+################################################# -+##### -+##### tde_install_empty_directory -+ -+macro( tde_install_empty_directory _path ) -+ -+ # if path is relative, we must to prefix it with CMAKE_INSTALL_PREFIX -+ if( IS_ABSOLUTE "${_path}" ) -+ set( _destination "${_path}" ) -+ else( IS_ABSOLUTE "${_path}" ) -+ set( _destination "${CMAKE_INSTALL_PREFIX}/${_path}" ) -+ endif( IS_ABSOLUTE "${_path}" ) -+ -+ install( CODE "file( MAKE_DIRECTORY \"\$ENV{DESTDIR}${_destination}\" )" ) -+ -+endmacro( tde_install_empty_directory ) -+ -+ -+################################################# -+##### -+##### tde_conditional_add_subdirectory -+ -+macro( tde_conditional_add_subdirectory _cond _path ) -+ -+ if( ${_cond} ) -+ add_subdirectory( "${_path}" ) -+ endif( ${_cond} ) -+ -+endmacro( tde_conditional_add_subdirectory ) -+ -+ -+################################################# -+##### -+##### tde_auto_add_subdirectories -+ -+macro( tde_auto_add_subdirectories ) -+ file( GLOB _dirs RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} * ) -+ foreach( _dir ${_dirs} ) -+ if( IS_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/${_dir} ) -+ if( NOT ${_dir} STREQUAL ".svn" AND EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${_dir}/CMakeLists.txt ) -+ add_subdirectory( ${_dir} ) -+ endif() -+ endif() -+ endforeach() -+endmacro() -+ -+ -+################################################# -+##### -+##### tde_save / tde_restore -+ -+macro( tde_save ) -+ foreach( _var ${ARGN} ) -+ set( __bak_${_var} ${${_var}} ) -+ endforeach() -+endmacro() -+ -+macro( tde_save_and_set _var ) -+ set( __bak_${_var} ${${_var}} ) -+ set( ${_var} ${ARGN} ) -+endmacro( ) -+ -+macro( tde_restore ) -+ foreach( _var ${ARGN} ) -+ set( ${_var} ${__bak_${_var}} ) -+ unset( __bak_${_var} ) -+ endforeach() -+endmacro() -+ -+ -+################################################# -+##### -+##### tde_setup_install_path -+ -+macro( tde_setup_install_path _path _default ) -+ if( DEFINED ${_path} ) -+ set( ${_path} "${${_path}}" CACHE INTERNAL "" FORCE ) -+ else( ) -+ set( ${_path} "${_default}" ) -+ endif( ) -+endmacro( ) -+ -+ -+################################################## -+ -+if( ${CMAKE_SOURCE_DIR} MATCHES ${CMAKE_BINARY_DIR} ) -+ tde_message_fatal( "Please use out-of-source building, like this: -+ \n rm ${CMAKE_SOURCE_DIR}/CMakeCache.txt -+ mkdir /tmp/${PROJECT_NAME}.build -+ cd /tmp/${PROJECT_NAME}.build -+ cmake ${CMAKE_SOURCE_DIR} [arguments...]" ) -+endif( ) -+ -+################################################# -+##### -+##### tde_setup_architecture_flags -+ -+macro( tde_setup_architecture_flags ) -+ message( STATUS "Detected ${CMAKE_SYSTEM_PROCESSOR} CPU architecture" ) -+ ## Immediate symbol binding is available only for gcc but not on ARM architectures -+ if( ${CMAKE_CXX_COMPILER_ID} STREQUAL "GNU" AND NOT ${CMAKE_SYSTEM_PROCESSOR} MATCHES arm* AND NOT ${CMAKE_SYSTEM_NAME} STREQUAL "OpenBSD" ) -+ set( LINKER_IMMEDIATE_BINDING_FLAGS "-z\ now" CACHE INTERNAL "" FORCE ) -+ else( ) -+ set( LINKER_IMMEDIATE_BINDING_FLAGS "" CACHE INTERNAL "" FORCE ) -+ endif( ) -+ -+ check_cxx_compiler_flag( -fPIE HAVE_PIE_SUPPORT ) -+ if( HAVE_PIE_SUPPORT ) -+ set( TDE_PIE_CFLAGS -fPIE ) -+ set( TDE_PIE_LDFLAGS -pie ) -+ endif( HAVE_PIE_SUPPORT ) -+endmacro( ) -+ -+ -+################################################ -+##### -+##### Restore CMP0026 policy -+ -+if( POLICY CMP0026 ) -+ cmake_policy( POP ) -+endif( POLICY CMP0026 ) -+ -Index: b/cmake/modules/TDESetupPaths.cmake -=================================================================== ---- /dev/null -+++ b/cmake/modules/TDESetupPaths.cmake -@@ -0,0 +1,68 @@ -+################################################# -+# -+# (C) 2010-2011 Serghei Amelian -+# serghei (DOT) amelian (AT) gmail.com -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+################################################# -+##### -+##### tde_internal_setup_path -+ -+macro( _tde_internal_setup_path _path _default _comment ) -+ if( DEFINED ${_path} ) -+ set( ${_path} "${${_path}}" CACHE PATH "${_comment}" ) -+ else( DEFINED ${_path} ) -+ set( ${_path} "${_default}" ) -+ endif( DEFINED ${_path} ) -+endmacro( _tde_internal_setup_path ) -+ -+ -+################################################# -+##### -+##### tde_setup_paths -+ -+macro( tde_setup_paths ) -+ -+ # install paths -+ _tde_internal_setup_path( EXEC_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}" "Base directory for executables and libraries" ) -+ _tde_internal_setup_path( SHARE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}/share" "Base directory for files which go to share/" ) -+ _tde_internal_setup_path( BIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/bin" "The install dir for executables (default ${EXEC_INSTALL_PREFIX}/bin)" ) -+ _tde_internal_setup_path( SBIN_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/sbin" "The install dir for system executables (default ${EXEC_INSTALL_PREFIX}/sbin)" ) -+ _tde_internal_setup_path( LIB_INSTALL_DIR "${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX}" "The subdirectory relative to the install prefix where libraries will be installed (default is ${EXEC_INSTALL_PREFIX}/lib${LIB_SUFFIX})" ) -+ _tde_internal_setup_path( LIBEXEC_INSTALL_DIR "${LIB_INSTALL_DIR}/trinity/libexec" "The subdirectory relative to the install prefix where libraries will be installed (default is ${LIB_INSTALL_DIR}/trinity/libexec)" ) -+ _tde_internal_setup_path( PKGCONFIG_INSTALL_DIR "${LIB_INSTALL_DIR}/pkgconfig" "The install dir for pkg-config metadata files" ) -+ _tde_internal_setup_path( INCLUDE_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/include" "The subdirectory to the header prefix" ) -+ -+ _tde_internal_setup_path( CMAKE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/cmake" "The install dir for cmake import modules" ) -+ _tde_internal_setup_path( PLUGIN_INSTALL_DIR "${LIB_INSTALL_DIR}/trinity" "The subdirectory relative to the install prefix where plugins will be installed (default is ${LIB_INSTALL_DIR}/trinity)" ) -+ _tde_internal_setup_path( CONFIG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config" "The config file install dir" ) -+ _tde_internal_setup_path( DATA_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/apps" "The parent directory where applications can install their data" ) -+ _tde_internal_setup_path( HTML_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/doc/tde/HTML" "The HTML install dir for documentation" ) -+ _tde_internal_setup_path( ICON_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/icons" "The icon install dir (default ${SHARE_INSTALL_PREFIX}/share/icons/)" ) -+ _tde_internal_setup_path( KCFG_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/config.kcfg" "The install dir for tdeconfig files" ) -+ _tde_internal_setup_path( LOCALE_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/locale" "The install dir for translations" ) -+ _tde_internal_setup_path( APPS_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applnk" "The install dir for the application desktop files" ) -+ _tde_internal_setup_path( MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mimelnk" "The install dir for the mimetype desktop files" ) -+ _tde_internal_setup_path( SERVICES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/services" "The install dir for service (desktop, protocol, ...) files" ) -+ _tde_internal_setup_path( SERVICETYPES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/servicetypes" "The install dir for servicestypes desktop files" ) -+ _tde_internal_setup_path( SOUND_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/sounds" "The install dir for sound files" ) -+ _tde_internal_setup_path( TEMPLATES_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/templates" "The install dir for templates (Create new file...)" ) -+ _tde_internal_setup_path( WALLPAPER_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/wallpapers" "The install dir for wallpapers" ) -+ _tde_internal_setup_path( KCONF_UPDATE_INSTALL_DIR "${DATA_INSTALL_DIR}/tdeconf_update" "The tdeconf_update install dir" ) -+ _tde_internal_setup_path( AUTOSTART_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/autostart" "The install dir for autostart files" ) -+ -+ _tde_internal_setup_path( SYSCONF_INSTALL_DIR "${CMAKE_INSTALL_PREFIX}/etc" "The sysconfig install dir (default ${CMAKE_INSTALL_PREFIX}/etc)" ) -+ _tde_internal_setup_path( MAN_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/man" "The man install dir (default ${SHARE_INSTALL_PREFIX}/man/)" ) -+ _tde_internal_setup_path( INFO_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/info" "The info install dir (default ${SHARE_INSTALL_PREFIX}/info)" ) -+ -+ _tde_internal_setup_path( XDG_MENU_INSTALL_DIR "${SYSCONF_INSTALL_DIR}/xdg/menus" "The XDG menus dir" ) -+ _tde_internal_setup_path( XDG_APPS_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/applications/tde" "The XDG apps dir" ) -+ _tde_internal_setup_path( XDG_DIRECTORY_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/desktop-directories" "The XDG directory" ) -+ _tde_internal_setup_path( XDG_MIME_INSTALL_DIR "${SHARE_INSTALL_PREFIX}/mime/packages" "The install dir for the xdg mimetypes" ) -+ -+endmacro( tde_setup_paths ) -Index: b/cmake/modules/tde_uic.cmake -=================================================================== ---- /dev/null -+++ b/cmake/modules/tde_uic.cmake -@@ -0,0 +1,61 @@ -+################################################# -+# -+# (C) 2010-2011 Serghei Amelian -+# serghei (DOT) amelian (AT) gmail.com -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+set( CMAKE_MODULE_PATH "${MASTER_SOURCE_DIR}/cmake/modules" ) -+include( TDEMacros ) -+ -+get_filename_component( _ui_basename ${UI_FILE} NAME_WE ) -+ -+# FIXME this will working only on out-of-source mode -+set( local_ui_file ${_ui_basename}.ui ) -+configure_file( ${UI_FILE} ${local_ui_file} COPYONLY ) -+tde_execute_process( COMMAND ${TQT_REPLACE_SCRIPT} ${local_ui_file} ) -+ -+# ui.h extension file, if exists -+if( EXISTS "${UI_FILE}.h" ) -+ configure_file( ${UI_FILE}.h ${local_ui_file}.h COPYONLY ) -+ tde_execute_process( COMMAND ${TQT_REPLACE_SCRIPT} ${local_ui_file}.h ) -+endif( ) -+ -+if( TDE_QTPLUGINS_DIR ) -+ set( L -L ${TDE_QTPLUGINS_DIR} ) -+endif( ) -+ -+tde_execute_process( COMMAND ${UIC_EXECUTABLE} -+ -nounload -tr tr2i18n -+ ${L} -+ ${local_ui_file} -+ OUTPUT_VARIABLE _ui_h_content ) -+ -+if( _ui_h_content ) -+ string( REGEX REPLACE "#ifndef " "#ifndef UI_" _ui_h_content "${_ui_h_content}" ) -+ string( REGEX REPLACE "#define " "#define UI_" _ui_h_content "${_ui_h_content}" ) -+ string( REGEX REPLACE "public TQWizard" "public KWizard" _ui_h_content "${_ui_h_content}" ) -+ string( REGEX REPLACE "public QWizard" "public KWizard" _ui_h_content "${_ui_h_content}" ) -+ string( REGEX REPLACE "#include <ntqwizard.h>" "#include <kwizard.h>" _ui_h_content "${_ui_h_content}" ) -+ string( REGEX REPLACE "#include <qwizard.h>" "#include <kwizard.h>" _ui_h_content "${_ui_h_content}" ) -+ file( WRITE ${_ui_basename}.h "${_ui_h_content}" ) -+endif( ) -+ -+tde_execute_process( COMMAND ${UIC_EXECUTABLE} -+ -nounload -tr tr2i18n -+ ${L} -+ -impl ${_ui_basename}.h -+ ${local_ui_file} -+ OUTPUT_VARIABLE _ui_cpp_content ) -+ -+if( _ui_cpp_content ) -+ string( REGEX REPLACE "tr2i18n\\(\"\"\\)" "QString::null" _ui_cpp_content "${_ui_cpp_content}" ) -+ string( REGEX REPLACE "tr2i18n\\(\"\", \"\"\\)" "QString::null" _ui_cpp_content "${_ui_cpp_content}" ) -+ string( REGEX REPLACE ": TQWizard\\(" ": KWizard(" _ui_cpp_content "${_ui_cpp_content}" ) -+ string( REGEX REPLACE ": QWizard\\(" ": KWizard(" _ui_cpp_content "${_ui_cpp_content}" ) -+ file( WRITE ${_ui_basename}.cpp "#include <kdialog.h>\n#include <tdelocale.h>\n\n${_ui_cpp_content}" ) -+endif( ) -Index: b/cmake/modules/template_dummy_cpp.cmake -=================================================================== ---- /dev/null -+++ b/cmake/modules/template_dummy_cpp.cmake -@@ -0,0 +1,5 @@ -+#ifdef _AIX -+ namespace { -+ void *not_empty_file; -+ } -+#endif -Index: b/cmake/modules/template_export_library.cmake -=================================================================== ---- /dev/null -+++ b/cmake/modules/template_export_library.cmake -@@ -0,0 +1,7 @@ -+add_library( @_target@ @_type@ IMPORTED ) -+ -+set_target_properties( @_target@ PROPERTIES -+ IMPORTED_LINK_INTERFACE_LIBRARIES "@_shared_libs@" -+ IMPORTED_LOCATION "@_location@" -+ IMPORTED_SONAME "@_soname@" ) -+ -Index: b/cmake/modules/template_libtool_file.cmake -=================================================================== ---- /dev/null -+++ b/cmake/modules/template_libtool_file.cmake -@@ -0,0 +1,35 @@ -+# @_laname@ - a libtool library file -+# Generated by CMake - GNU libtool -+# -+# Please DO NOT delete this file! -+# It is necessary for linking the library. -+ -+# The name that we can dlopen(3). -+dlname='@_library_name_2@' -+ -+# Names of this library. -+library_names='@_library_name_1@ @_library_name_2@ @_library_name_3@' -+ -+# The name of the static archive. -+old_library='' -+ -+# Libraries that this one depends upon. -+dependency_libs='' -+ -+# Version information for @_name@. -+current=@_version_current@ -+age=@_version_age@ -+revision=@_version_revision@ -+ -+# Is this an already installed library? -+installed=yes -+ -+# Should we warn about portability when linking against -modules? -+shouldnotlink=@_shouldnotlink@ -+ -+# Files to dlopen/dlpreopen -+dlopen='' -+dlpreopen='' -+ -+# Directory that this library needs to be installed in: -+libdir='@_libdir@' -Index: b/cmake/modules/template_tdeinit_executable.cmake -=================================================================== ---- /dev/null -+++ b/cmake/modules/template_tdeinit_executable.cmake -@@ -0,0 +1,2 @@ -+extern "C" int kdemain(int argc, char* argv[]); -+int main(int argc, char* argv[]) { return kdemain(argc,argv); } -Index: b/cmake/modules/template_tdeinit_module.cmake -=================================================================== ---- /dev/null -+++ b/cmake/modules/template_tdeinit_module.cmake -@@ -0,0 +1,3 @@ -+#include <kdemacros.h> -+extern "C" int kdemain(int argc, char* argv[]); -+extern "C" KDE_EXPORT int tdeinitmain(int argc, char* argv[]) { return kdemain(argc,argv); } -Index: b/CMakeLists.txt -=================================================================== ---- /dev/null -+++ b/CMakeLists.txt -@@ -0,0 +1,73 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+cmake_minimum_required( VERSION 2.6 ) -+ -+ -+##### general package setup ##################### -+ -+project( akode ) -+set( PACKAGE akode ) -+set( VERSION 2.0.2 ) -+ -+ -+##### include essential cmake modules ########### -+ -+include( FindPkgConfig ) -+include( CheckCXXSourceCompiles ) -+include( CheckFunctionExists ) -+include( CheckIncludeFile ) -+include( CheckLibraryExists ) -+ -+ -+##### include our cmake modules ################# -+ -+set( CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake/modules" ) -+include( TDEMacros ) -+tde_setup_architecture_flags( ) -+ -+ -+##### setup install paths ####################### -+ -+include( TDESetupPaths ) -+tde_setup_paths( ) -+ -+ -+##### optional stuff ############################ -+ -+option( WITH_ALL_OPTIONS "Enable all optional support" OFF ) -+ -+OPTION( WITH_LIBLTDL "Build with libltdl" ${WITH_ALL_OPTIONS} ) -+ -+OPTION( WITH_ALSA_SINK "Build with alsa sink" ${WITH_ALL_OPTIONS} ) -+OPTION( WITH_JACK_SINK "Build with jack sink" ${WITH_ALL_OPTIONS} ) -+OPTION( WITH_POLYP_SINK "Build with polyp sink" OFF ) -+OPTION( WITH_OSS_SINK "Build with oss sink" ${WITH_ALL_OPTIONS} ) -+OPTION( WITH_SUN_SINK "Build with sun sink" OFF ) -+ -+OPTION( WITH_FFMPEG_DECODER "Build with ffmeeg decoder" OFF ) -+option( WITH_MPC_DECODER "Build with mpc decoder" ON ) -+option( WITH_MPEG_DECODER "Build with mpeg decoder" ${WITH_ALL_OPTIONS} ) -+OPTION( WITH_SRC_RESAMPLER "Build with src resampler" ${WITH_ALL_OPTIONS} ) -+option( WITH_XIPH_DECODER "Build with xiph decoder" ${WITH_ALL_OPTIONS} ) -+ -+ -+##### configure checks ########################## -+ -+include( ConfigureChecks.cmake ) -+add_definitions( -DHAVE_CONFIG_H ) -+configure_file( config.h.cmake config.h @ONLY ) -+ -+ -+##### build ##################################### -+ -+tde_auto_add_subdirectories() -+ -Index: b/config.h.cmake -=================================================================== ---- /dev/null -+++ b/config.h.cmake -@@ -0,0 +1,62 @@ -+ -+/* defined if you have libltdl library and header */ -+#cmakedefine HAVE_LIBLTDL -+ -+/* Define if your platform has posix_madvise */ -+#cmakedefine HAVE_POSIX_MADVISE -+ -+/* Define if your platform has posix_fadvise */ -+#cmakedefine HAVE_POSIX_FADVISE -+ -+/* Define if your platform has fadvise */ -+#cmakedefine HAVE_FADVISE -+ -+/* Define if your platform has madvise */ -+#cmakedefine HAVE_MADVISE -+ -+/* Define if madvise has no usefull prototype */ -+#cmakedefine NEED_MADVISE_PROTOTYPE -+ -+/* Define if your platform has getopt_long from glibc */ -+#cmakedefine HAVE_GNU_GETOPT -+ -+/* Define to 1 if you have the <stdint.h> header file. */ -+#cmakedefine HAVE_STDINT_H -+ -+/* Define to 1 if you have the <inttypes.h> header file. */ -+#cmakedefine HAVE_INTTYPES_H -+ -+/* Define to 1 if you have the <sys/types.h> header file. */ -+#cmakedefine HAVE_SYS_TYPES_H -+ -+/* Define to 1 if you have the <soundcard.h> header file. */ -+#cmakedefine HAVE_SOUNDCARD_H -+ -+/* Define to 1 if you have the <sys/soundcard.h> header file. */ -+#cmakedefine HAVE_SYS_SOUNDCARD_H -+ -+/* Define if you have libavcodec and libavformat from FFMPEG (required for WMA -+ and RealAudio decoding) */ -+#cmakedefine HAVE_FFMPEG -+ -+/* Define if you have libFLAC 1.1.3 or newer */ -+#cmakedefine HAVE_LIBFLAC113 -+ -+/* Define if you have libFLAC 1.1.1 or 1.1.2 */ -+#cmakedefine HAVE_LIBFLAC -+ -+/* Define if you have libOggFLAC (required for loading OggFLAC files) */ -+#cmakedefine HAVE_LIBOGGFLAC -+ -+/* Define if you have speex installed */ -+#cmakedefine HAVE_SPEEX -+ -+/* Define if you have libspeex 1.1.x installed */ -+#cmakedefine HAVE_SPEEX11 -+ -+/* Define if you have one of the broken libspeex 1.1.x < 1.1.5 */ -+#cmakedefine BROKEN_SPEEX11 -+ -+/* Define if you have ogg/vorbis installed */ -+#cmakedefine HAVE_OGG_VORBIS -+ -Index: b/ConfigureChecks.cmake -=================================================================== ---- /dev/null -+++ b/ConfigureChecks.cmake -@@ -0,0 +1,300 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+ -+##### check for system libraries ################ -+ -+if( WITH_LIBLTDL ) -+ # check libltdl -+ check_include_file( "ltdl.h" HAVE_LTDL_H ) -+ if( HAVE_LTDL_H ) -+ set( AKODE_LIBDL ltdl ) -+ check_library_exists( ${AKODE_LIBDL} lt_dlopen "" HAVE_LIBLTDL ) -+ endif( HAVE_LTDL_H) -+ if( NOT HAVE_LIBLTDL ) -+ tde_message_fatal( "libltdl are required, but not found on your system" ) -+ endif( NOT HAVE_LIBLTDL ) -+ -+else( WITH_LIBLTDL ) -+ # check libdl -+ set( AKODE_LIBDL dl ) -+ check_library_exists( ${AKODE_LIBDL} dlopen /lib HAVE_LIBDL ) -+ if( NOT HAVE_LIBDL ) -+ unset( AKODE_LIBDL ) -+ check_function_exists( dlopen HAVE_DLOPEN ) -+ if( NOT HAVE_DLOPEN ) -+ tde_message_fatal( "libdl are required, but not found on your system" ) -+ endif( NOT HAVE_DLOPEN ) -+ endif( NOT HAVE_LIBDL ) -+endif( WITH_LIBLTDL ) -+ -+ -+find_package( Threads ) -+ -+ -+check_include_file( "semaphore.h" HAVE_SEM ) -+check_library_exists( rt sem_init "" HAVE_LIBRT ) -+if( HAVE_LIBRT ) -+ set( SEM_LIBRARIES rt ) -+endif( HAVE_LIBRT ) -+ -+ -+check_library_exists( c posix_madvise "" HAVE_POSIX_MADVISE ) -+check_library_exists( c posix_fadvise "" HAVE_POSIX_FADVISE ) -+check_library_exists( c madvise "" HAVE_MADVISE ) -+check_library_exists( c fadvise "" HAVE_FADVISE ) -+check_cxx_source_compiles( " -+ #include <sys/types.h> -+ #include <sys/mman.h> -+ int main() { ::madvise((char*)0,0, MADV_SEQUENTIAL); return 0; }" -+ HAVE_MADVISE_PROTOTYPE ) -+if( NOT HAVE_MADVISE_PROTOTYPE ) -+ set( NEED_MADVISE_PROTOTYPE 1 ) -+endif( NOT HAVE_MADVISE_PROTOTYPE ) -+ -+ -+check_include_file( "getopt.h" HAVE_GETOPT_H ) -+check_library_exists( c getopt_long "" HAVE_GNU_GETOPT ) -+check_include_file( "stdint.h" HAVE_STDINT_H ) -+if( NOT HAVE_STDINT_H ) -+ check_include_file( "inttypes.h" HAVE_INTTYPES_H ) -+endif( NOT HAVE_STDINT_H ) -+check_include_file( "sys/types.h" HAVE_SYS_TYPES_H ) -+ -+ -+##### check alsa support ######################## -+ -+if( WITH_ALSA_SINK ) -+ -+ pkg_search_module( ALSA alsa>=0.90 ) -+ -+ if( NOT ALSA_FOUND ) -+ tde_message_fatal( "alsa >= 0.90 are required, but not found on your system" ) -+ endif( NOT ALSA_FOUND ) -+ -+endif( WITH_ALSA_SINK ) -+ -+ -+##### check jack support ######################## -+ -+if( WITH_JACK_SINK ) -+ -+ pkg_search_module( JACK jack>=0.90 ) -+ -+ if( NOT JACK_FOUND ) -+ tde_message_fatal( "jack >= 0.90 are required, but not found on your system" ) -+ endif( NOT JACK_FOUND ) -+ -+endif( WITH_JACK_SINK ) -+ -+ -+##### check oss support ######################### -+ -+if( WITH_OSS_SINK ) -+ -+ check_include_file( "soundcard.h" HAVE_SOUNDCARD_H ) -+ if( NOT HAVE_SOUNDCARD_H ) -+ check_include_file( "sys/soundcard.h" HAVE_SYS_SOUNDCARD_H ) -+ if( NOT HAVE_SYS_SOUNDCARD_H ) -+ tde_message_fatal( "soundcard.h are required, but not found on your system" ) -+ endif( NOT HAVE_SYS_SOUNDCARD_H ) -+ endif( NOT HAVE_SOUNDCARD_H ) -+ -+ check_library_exists( ossaudio _oss_ioctl "" HAVE_OSSAUDIO ) -+ if( HAVE_OSSAUDIO ) -+ set( OSSAUDIO_LIBRARIES "-lossaudio" ) -+ endif( HAVE_OSSAUDIO ) -+ -+endif( WITH_OSS_SINK ) -+ -+ -+##### check polyp support ####################### -+ -+if( WITH_POLYP_SINK ) -+ -+ pkg_search_module( POLYP polyplib-simple>=0.70 ) -+ -+ if( NOT POLYP_FOUND ) -+ tde_message_fatal( "polyplib-simple >= 0.70 are required, but not found on your system" ) -+ endif( NOT POLYP_FOUND ) -+ -+endif( WITH_POLYP_SINK ) -+ -+ -+##### check sun support ######################### -+ -+if( WITH_SUN_SINK ) -+ -+ check_include_file( "sys/audioio.h" HAVE_AUDIOIO_H ) -+ if( NOT HAVE_AUDIOIO_H ) -+ tde_message_fatal( "sun audioio are required, but not found on your system" ) -+ endif( NOT HAVE_AUDIOIO_H ) -+ -+endif( WITH_SUN_SINK ) -+ -+ -+##### check ffmpeg support ###################### -+ -+if( WITH_FFMPEG_DECODER ) -+ -+ pkg_search_module( AVFORMAT libavformat>=50 ) -+ if( NOT AVFORMAT_FOUND ) -+ tde_message_fatal( "libavformat >= 50 are required, but not found on your system" ) -+ endif( NOT AVFORMAT_FOUND ) -+ -+ pkg_search_module( AVCODEC libavcodec>=50 ) -+ if( NOT AVCODEC_FOUND ) -+ tde_message_fatal( "libavcodec >= 50 are required, but not found on your system" ) -+ endif( NOT AVCODEC_FOUND ) -+ -+ set( HAVE_FFMPEG 1 ) -+ -+endif( WITH_FFMPEG_DECODER ) -+ -+ -+##### check mad support ######################### -+ -+if( WITH_MPEG_DECODER ) -+ -+ pkg_search_module( MAD mad ) -+ -+ if( NOT MAD_FOUND ) -+ find_library( MAD_LIBRARIES NAMES mad ) -+ find_path( MAD_INCLUDE_DIRS mad.h ) -+ if( NOT MAD_LIBRARIES ) -+ tde_message_fatal( "mad are required, but not found on your system" ) -+ endif( NOT MAD_LIBRARIES ) -+ endif( NOT MAD_FOUND ) -+ -+endif( WITH_MPEG_DECODER ) -+ -+ -+##### check FLAC support ######################## -+ -+if( WITH_XIPH_DECODER ) -+ -+ # check for FLAC module -+ pkg_search_module( FLAC flac>=1.1.3 ) -+ if( FLAC_FOUND ) -+ set( HAVE_LIBFLAC113 1 ) -+ else( FLAC_FOUND ) -+ # check for FLAC 1.1.3 -+ check_include_file( "FLAC/metadata.h" HAVE_FLAC113_H ) -+ if( HAVE_FLAC113_H ) -+ tde_save_and_set( CMAKE_REQUIRED_LIBRARIES ogg ) -+ check_library_exists( FLAC FLAC__stream_decoder_seek_absolute "" HAVE_LIBFLAC113 ) -+ tde_restore( CMAKE_REQUIRED_LIBRARIES ) -+ if( HAVE_LIBFLAC113 ) -+ set( FLAC_LIBRARIES "-lFLAC -logg" ) -+ endif( HAVE_LIBFLAC113 ) -+ endif( HAVE_FLAC113_H ) -+ -+ # check for FLAC 1.1.1 or 1.1.2 -+ if( NOT HAVE_LIBFLAC113 ) -+ check_include_file( "FLAC/seekable_stream_decoder.h" HAVE_FLAC_H ) -+ if( HAVE_FLAC_H ) -+ check_library_exists( FLAC FLAC__seekable_stream_decoder_process_single "" HAVE_LIBFLAC ) -+ if( HAVE_LIBFLAC ) -+ set( FLAC_LIBRARIES "-lFLAC" ) -+ endif( HAVE_LIBFLAC ) -+ endif( HAVE_FLAC_H ) -+ -+ check_include_file( "OggFLAC/seekable_stream_decoder.h" HAVE_OGGFLAC_H ) -+ if( HAVE_OGGFLAC_H ) -+ tde_save_and_set( CMAKE_REQUIRED_LIBRARIES m OggFLAC FLAC ) -+ check_library_exits( OggFLAC OggFLAC__seekable_stream_decoder_process_single "" HAVE_LIBOGGFLAC ) -+ tde_restore( CMAKE_REQUIRED_LIBRARIES ) -+ if( HAVE_LIBOGGFLAC ) -+ set( OGGFLAC_LIBRARIES "-lOggFLAC" ) -+ endif( HAVE_LIBFLAC ) -+ endif( HAVE_OGGFLAC_H ) -+ endif( NOT HAVE_LIBFLAC113 ) -+ endif( FLAC_FOUND ) -+ -+ if( NOT FLAC_LIBRARIES ) -+ tde_message_fatal( "FLAC >= 1.1.1 are required, but not found on your system" ) -+ endif( NOT FLAC_LIBRARIES ) -+ -+endif( WITH_XIPH_DECODER ) -+ -+ -+##### check speex support ####################### -+ -+if( WITH_XIPH_DECODER ) -+ -+ # check for speex module -+ pkg_search_module( SPEEX speex>=1.2 ) -+ if( NOT SPEEX_FOUND ) -+ # check for speex >= 1.1 -+ pkg_search_module( SPEEX speex>=1.1 ) -+ if( SPEEX_FOUND ) -+ set( HAVE_SPEEX11 1 ) -+ check_library_exits( speex speex_decode_int "" HAVE_SPEEX_DECODE_INT ) -+ if( NOT HAVE_SPEEX_DECODE_INT ) -+ set( BROKEN_SPEEX11 1 ) -+ endif( ) -+ else( ) -+ pkg_search_module( SPEEX speex ) -+ endif( ) -+ -+ endif( ) -+ -+ if( SPEEX_FOUND ) -+ set( HAVE_SPEEX 1 ) -+ if( NOT EXISTS ${SPEEX_INCLUDEDIR}/speex.h ) -+ find_path( SPEEX_EXTRA_INCLUDEDIR "speex.h" ${SPEEX_INCLUDEDIR}/speex ) -+ if( NOT SPEEX_EXTRA_INCLUDEDIR ) -+ tde_message_fatal( "speex are required, but header not found on your system" ) -+ endif( NOT SPEEX_EXTRA_INCLUDEDIR ) -+ list( APPEND SPEEX_INCLUDE_DIRS "${SPEEX_EXTRA_INCLUDEDIR}" ) -+ endif( NOT EXISTS ${SPEEX_INCLUDEDIR}/speex.h ) -+ else( SPEEX_FOUND ) -+ tde_message_fatal( "speex are required, but not found on your system" ) -+ endif( SPEEX_FOUND ) -+ -+endif( WITH_XIPH_DECODER ) -+ -+ -+##### check ogg/vorbis support ################## -+ -+if( WITH_XIPH_DECODER ) -+ -+ pkg_search_module( VORBIS vorbis ) -+ if( NOT VORBIS_FOUND ) -+ tde_message_fatal( "ogg/vorbis are required, but not found on your system" ) -+ endif( NOT VORBIS_FOUND ) -+ -+ pkg_search_module( VORBISFILE vorbisfile ) -+ if( NOT VORBISFILE_FOUND ) -+ tde_message_fatal( "ogg/vorbisfile are required, but not found on your system" ) -+ endif( NOT VORBISFILE_FOUND ) -+ -+ set( HAVE_OGG_VORBIS 1 ) -+ -+endif( WITH_XIPH_DECODER ) -+ -+ -+##### check samplerate support ################## -+ -+if( WITH_SRC_RESAMPLER ) -+ -+ pkg_search_module( SAMPLERATE samplerate ) -+ -+ if( NOT SAMPLERATE_FOUND ) -+ find_library( SAMPLERATE_LIBRARIES NAMES samplerate ) -+ find_path( SAMPLERATE_INCLUDE_DIRS samplerate.h ) -+ if( NOT SAMPLERATE_LIBRARIES ) -+ tde_message_fatal( "samplerate are required, but not found on your system" ) -+ endif( NOT SAMPLERATE_LIBRARIES ) -+ endif( NOT SAMPLERATE_FOUND ) -+ -+endif( WITH_SRC_RESAMPLER ) -+ diff --git a/freebsd/dependencies/akode/files/patch-b00-fix-ogg-on-suse.diff b/freebsd/dependencies/akode/files/patch-b00-fix-ogg-on-suse.diff deleted file mode 100644 index 3ff08a2ec..000000000 --- a/freebsd/dependencies/akode/files/patch-b00-fix-ogg-on-suse.diff +++ /dev/null @@ -1,86 +0,0 @@ -commit 386d5647da414c477f7f045c2850bfb1854e2302 -Author: François Andriot <francois.andriot@free.fr> -Date: Thu Oct 15 04:40:52 2015 +0200 - - Fix OGG detection on openSUSE - - Signed-off-by: François Andriot <francois.andriot@free.fr> - -diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake -index 1fa37d7..df4d86a 100644 ---- a/ConfigureChecks.cmake -+++ b/ConfigureChecks.cmake -@@ -210,11 +210,11 @@ if( WITH_XIPH_DECODER ) - check_include_file( "OggFLAC/seekable_stream_decoder.h" HAVE_OGGFLAC_H ) - if( HAVE_OGGFLAC_H ) - tde_save_and_set( CMAKE_REQUIRED_LIBRARIES m OggFLAC FLAC ) -- check_library_exits( OggFLAC OggFLAC__seekable_stream_decoder_process_single "" HAVE_LIBOGGFLAC ) -+ check_library_exists( OggFLAC OggFLAC__seekable_stream_decoder_process_single "" HAVE_LIBOGGFLAC ) - tde_restore( CMAKE_REQUIRED_LIBRARIES ) - if( HAVE_LIBOGGFLAC ) - set( OGGFLAC_LIBRARIES "-lOggFLAC" ) -- endif( HAVE_LIBFLAC ) -+ endif( HAVE_LIBOGGFLAC ) - endif( HAVE_OGGFLAC_H ) - endif( NOT HAVE_LIBFLAC113 ) - endif( FLAC_FOUND ) -@@ -237,7 +237,7 @@ if( WITH_XIPH_DECODER ) - pkg_search_module( SPEEX speex>=1.1 ) - if( SPEEX_FOUND ) - set( HAVE_SPEEX11 1 ) -- check_library_exits( speex speex_decode_int "" HAVE_SPEEX_DECODE_INT ) -+ check_library_exists( speex speex_decode_int "" HAVE_SPEEX_DECODE_INT ) - if( NOT HAVE_SPEEX_DECODE_INT ) - set( BROKEN_SPEEX11 1 ) - endif( ) -@@ -267,6 +267,11 @@ endif( WITH_XIPH_DECODER ) - - if( WITH_XIPH_DECODER ) - -+ pkg_search_module( OGG ogg ) -+ if( NOT OGG_FOUND ) -+ tde_message_fatal( "ogg are required, but not found on your system" ) -+ endif( NOT OGG_FOUND ) -+ - pkg_search_module( VORBIS vorbis ) - if( NOT VORBIS_FOUND ) - tde_message_fatal( "ogg/vorbis are required, but not found on your system" ) -diff --git a/akode/configure.in.in b/akode/configure.in.in -index f18e6c5..80338d5 100644 ---- a/akode/configure.in.in -+++ b/akode/configure.in.in -@@ -1,7 +1,7 @@ - dnl don't remove the below - dnl AC_OUTPUT(akode/akode-config) - --AM_CONFIG_HEADER(akode/lib/akode_export.h) -+AC_CONFIG_HEADER(akode/lib/akode_export.h) - - AC_DEFUN([AC_CHECK_LIBFLAC], - [ -diff --git a/akode/plugins/xiph_decoder/CMakeLists.txt b/akode/plugins/xiph_decoder/CMakeLists.txt -index a0d1f28..4e6693b 100644 ---- a/akode/plugins/xiph_decoder/CMakeLists.txt -+++ b/akode/plugins/xiph_decoder/CMakeLists.txt -@@ -38,7 +38,7 @@ tde_add_library( - akode-shared - ${FLAC_LIBRARIES} ${OGGFLAC_LIBRARIES} - ${VORBIS_LIBRARIES} ${VORBISFILE_LIBRARIES} -- ${SPEEX_LIBRARIES} -+ ${SPEEX_LIBRARIES} ${OGG_LIBRARIES} - DESTINATION ${LIB_INSTALL_DIR} - ) - -diff --git a/configure.in.in b/configure.in.in -index a6fae9f..0eaed3d 100644 ---- a/configure.in.in -+++ b/configure.in.in -@@ -55,7 +55,7 @@ KDE_CONF_FILES - - dnl without this order in this file, automake will be confused! - dnl --AM_CONFIG_HEADER(config.h) -+AC_CONFIG_HEADER(config.h) - - dnl checks for programs. - dnl first check for c/c++ compilers diff --git a/freebsd/dependencies/akode/files/patch-b01-add-pulseaudio-support.diff b/freebsd/dependencies/akode/files/patch-b01-add-pulseaudio-support.diff deleted file mode 100644 index 4cc158086..000000000 --- a/freebsd/dependencies/akode/files/patch-b01-add-pulseaudio-support.diff +++ /dev/null @@ -1,134 +0,0 @@ -commit cf18d66ac5c3904f3f932848f761ec5d103a470c -Author: François Andriot <francois.andriot@free.fr> -Date: Thu Oct 15 04:42:48 2015 +0200 - - Add pulseaudio support - [taken from Fedora patches] - -diff --git a/CMakeLists.txt b/CMakeLists.txt -index f8e2d94..df5b7ea 100644 ---- a/CMakeLists.txt -+++ b/CMakeLists.txt -@@ -49,7 +49,7 @@ OPTION( WITH_LIBLTDL "Build with libltdl" ${WITH_ALL_OPTIONS} ) - - OPTION( WITH_ALSA_SINK "Build with alsa sink" ${WITH_ALL_OPTIONS} ) - OPTION( WITH_JACK_SINK "Build with jack sink" ${WITH_ALL_OPTIONS} ) --OPTION( WITH_POLYP_SINK "Build with polyp sink" OFF ) -+OPTION( WITH_PULSE_SINK "Build with pulseaudio sink" OFF ) - OPTION( WITH_OSS_SINK "Build with oss sink" ${WITH_ALL_OPTIONS} ) - OPTION( WITH_SUN_SINK "Build with sun sink" OFF ) - -diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake -index df4d86a..635db2e 100644 ---- a/ConfigureChecks.cmake -+++ b/ConfigureChecks.cmake -@@ -118,15 +118,15 @@ endif( WITH_OSS_SINK ) - - ##### check polyp support ####################### - --if( WITH_POLYP_SINK ) -+if( WITH_PULSE_SINK ) - -- pkg_search_module( POLYP polyplib-simple>=0.70 ) -+ pkg_search_module( PULSE libpulse-simple>=0.9.2 ) - -- if( NOT POLYP_FOUND ) -- tde_message_fatal( "polyplib-simple >= 0.70 are required, but not found on your system" ) -- endif( NOT POLYP_FOUND ) -+ if( NOT PULSE_FOUND ) -+ tde_message_fatal( "libpulse-simple >= 0.9.2 are required, but not found on your system" ) -+ endif( NOT PULSE_FOUND ) - --endif( WITH_POLYP_SINK ) -+endif( WITH_PULSE_SINK ) - - - ##### check sun support ######################### -diff --git a/akode/plugins/CMakeLists.txt b/akode/plugins/CMakeLists.txt -index ce0f3a4..6e11f1a 100644 ---- a/akode/plugins/CMakeLists.txt -+++ b/akode/plugins/CMakeLists.txt -@@ -15,7 +15,7 @@ - tde_conditional_add_subdirectory( WITH_ALSA_SINK alsa_sink ) - tde_conditional_add_subdirectory( WITH_JACK_SINK jack_sink ) - tde_conditional_add_subdirectory( WITH_OSS_SINK oss_sink ) --tde_conditional_add_subdirectory( WITH_POLYP_SINK polyp_sink ) -+tde_conditional_add_subdirectory( WITH_PULSE_SINK polyp_sink ) - tde_conditional_add_subdirectory( WITH_SUN_SINK sun_sink ) - - tde_conditional_add_subdirectory( WITH_FFMPEG_DECODER ffmpeg_decoder ) -diff --git a/akode/plugins/polyp_sink/CMakeLists.txt b/akode/plugins/polyp_sink/CMakeLists.txt -index 90c4f3c..28a940e 100644 ---- a/akode/plugins/polyp_sink/CMakeLists.txt -+++ b/akode/plugins/polyp_sink/CMakeLists.txt -@@ -15,7 +15,7 @@ include_directories( - ${CMAKE_SOURCE_DIR}/akode/lib - ${CMAKE_CURRENT_BINARY_DIR} - ${CMAKE_CURRENT_SOURCE_DIR} -- ${POLYP_INCLUDE_DIRS} -+ ${PULSE_INCLUDE_DIRS} - ) - - -@@ -26,7 +26,7 @@ set( target libakode_polyp_sink ) - tde_add_library( - ${target} MODULE - SOURCES polyp_sink.cpp -- LINK akode-shared ${POLYP_LIBRARIES} -+ LINK akode-shared ${PULSE_LIBRARIES} - DESTINATION ${LIB_INSTALL_DIR} - ) - -diff --git a/akode/plugins/polyp_sink/Makefile.am b/akode/plugins/polyp_sink/Makefile.am -index b67602a..a58b04c 100644 ---- a/akode/plugins/polyp_sink/Makefile.am -+++ b/akode/plugins/polyp_sink/Makefile.am -@@ -1,7 +1,7 @@ --INCLUDES = -I$(top_srcdir)/akode/lib -I$(top_builddir)/akode/lib $(POLYP_CFLAGS) $(all_includes) -+INCLUDES = -I$(top_srcdir)/akode/lib -I$(top_builddir)/akode/lib $(PULSE_CFLAGS) $(all_includes) - - lib_LTLIBRARIES = libakode_polyp_sink.la - - libakode_polyp_sink_la_SOURCES = polyp_sink.cpp --libakode_polyp_sink_la_LDFLAGS = -module -avoid-version -no-undefined $(POLYP_LDFLAGS) --libakode_polyp_sink_la_LIBADD = ../../lib/libakode.la $(POLYP_LIBADD) -+libakode_polyp_sink_la_LDFLAGS = -module -avoid-version -no-undefined $(PULSE_LDFLAGS) -+libakode_polyp_sink_la_LIBADD = ../../lib/libakode.la $(PULSE_LIBADD) -diff --git a/akode/plugins/polyp_sink/polyp_sink.cpp b/akode/plugins/polyp_sink/polyp_sink.cpp -index 9376dac..b48b63e 100644 ---- a/akode/plugins/polyp_sink/polyp_sink.cpp -+++ b/akode/plugins/polyp_sink/polyp_sink.cpp -@@ -25,7 +25,7 @@ - #elif defined(HAVE_INTTYPES_H) - #include <inttypes.h> - #endif --#include <polyp/polyplib-simple.h> -+#include <pulse/simple.h> - - #include "audioframe.h" - #include "audiobuffer.h" -@@ -59,7 +59,7 @@ PolypSink::PolypSink() - - bool PolypSink::open() { - int error = 0; -- m_data->server = pa_simple_new(0, "akode-client", PA_STREAM_PLAYBACK, 0, "", &m_data->sample_spec, 0, 255, &error ); -+ m_data->server = pa_simple_new(0, "akode-client", PA_STREAM_PLAYBACK, 0, "", &m_data->sample_spec, 0, 0, &error ); - if (!m_data->server || error != 0) { - m_data->error = true; - close(); -diff --git a/config.h.in b/config.h.in -index 7fe6faf..eed77f8 100644 ---- a/config.h.in -+++ b/config.h.in -@@ -43,9 +43,9 @@ - /* Define if you have libOggFLAC (required for loading OggFLAC files) */ - #undef HAVE_LIBOGGFLAC - --/* Define if you have polyplib (required if you want Polypaudio server -+/* Define if you have libpulse (required if you want PulseAudio server - support) */ --#undef HAVE_LIBPOLYP -+#undef HAVE_LIBPULSE - - /* defined if you have libsamplerate library and header */ - #undef HAVE_LIBSAMPLERATE diff --git a/freebsd/dependencies/akode/files/patch-b02-rename-polyp-to-pulse.diff b/freebsd/dependencies/akode/files/patch-b02-rename-polyp-to-pulse.diff deleted file mode 100644 index 695c4e1fa..000000000 --- a/freebsd/dependencies/akode/files/patch-b02-rename-polyp-to-pulse.diff +++ /dev/null @@ -1,687 +0,0 @@ -commit b4697bcfd6567f704e01927fdaf77f3ab5b9112b -Author: Slávek Banko <slavek.banko@axis.cz> -Date: Thu Oct 15 04:46:45 2015 +0200 - - Rename completely from polyp to pulse - - Signed-off-by: Slávek Banko <slavek.banko@axis.cz> - -diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake -index 635db2e..838fb28 100644 ---- a/ConfigureChecks.cmake -+++ b/ConfigureChecks.cmake -@@ -116,7 +116,7 @@ if( WITH_OSS_SINK ) - endif( WITH_OSS_SINK ) - - --##### check polyp support ####################### -+##### check pulse support ####################### - - if( WITH_PULSE_SINK ) - -diff --git a/PACKAGING b/PACKAGING -index da75139..8cbd9f1 100644 ---- a/PACKAGING -+++ b/PACKAGING -@@ -7,9 +7,9 @@ Take especially note of the following: - - If you wish to install plugins in a non-standard place, you can change the - AKODE_SEARCHDIR definition in lib/pluginhandler.cpp. - - You SHOULD not install sinks for backends you don't use. Thus jack_sink -- should only be installed when jackd is available, polyp_sink only when -- the polypaudio server is used and alsa_sink only when using a Linux kernel -+ should only be installed when jackd is available, pulse_sink only when -+ the PulseAudio server is used and alsa_sink only when using a Linux kernel - with ALSA drivers. - When using direct aKode playback sinks will be autodetected by loading and -- probing plugins in this order: polyp, jack, alsa, oss -+ probing plugins in this order: pulse, jack, alsa, oss - -diff --git a/akode/PACKAGING b/akode/PACKAGING -index da75139..8cbd9f1 100644 ---- a/akode/PACKAGING -+++ b/akode/PACKAGING -@@ -7,9 +7,9 @@ Take especially note of the following: - - If you wish to install plugins in a non-standard place, you can change the - AKODE_SEARCHDIR definition in lib/pluginhandler.cpp. - - You SHOULD not install sinks for backends you don't use. Thus jack_sink -- should only be installed when jackd is available, polyp_sink only when -- the polypaudio server is used and alsa_sink only when using a Linux kernel -+ should only be installed when jackd is available, pulse_sink only when -+ the PulseAudio server is used and alsa_sink only when using a Linux kernel - with ALSA drivers. - When using direct aKode playback sinks will be autodetected by loading and -- probing plugins in this order: polyp, jack, alsa, oss -+ probing plugins in this order: pulse, jack, alsa, oss - -diff --git a/akode/configure.in.in b/akode/configure.in.in -index 80338d5..80d0114 100644 ---- a/akode/configure.in.in -+++ b/akode/configure.in.in -@@ -270,24 +270,24 @@ AC_SUBST(JACK_LIBADD) - AC_SUBST(JACK_LDFLAGS) - fi - --AC_ARG_WITH(polypaudio,AC_HELP_STRING([--with-polypaudio],[Enable Polypaudio server support @<:@default=check@:>@]),[polypaudio_test="$withval"],[polypaudio_test="yes"]) -- --if test "x$polypaudio_test" = "xyes" ; then --AC_MSG_CHECKING(for Polypaudio 0.7 or later) --if $PKG_CONFIG --atleast-version 0.7 polyplib-simple >/dev/null 2>&1 ; then -- POLYP_CFLAGS="`$PKG_CONFIG --cflags polyplib-simple`" -- POLYP_LIBADD="`$PKG_CONFIG --libs-only-l polyplib-simple`" -- POLYP_LDFLAGS="`$PKG_CONFIG --libs-only-L polyplib-simple`" -- have_polyp=yes -+AC_ARG_WITH(pulseaudio,AC_HELP_STRING([--with-pulseaudio],[Enable PulseAudio server support @<:@default=check@:>@]),[pulseaudio_test="$withval"],[pulseaudio_test="yes"]) -+ -+if test "x$pulseaudio_test" = "xyes" ; then -+AC_MSG_CHECKING(for pulseaudio 0.9.2 or later) -+if $PKG_CONFIG --atleast-version 0.9.2 libpulse-simple >/dev/null 2>&1 ; then -+ PULSE_CFLAGS="`$PKG_CONFIG --cflags libpulse-simple`" -+ PULSE_LIBADD="`$PKG_CONFIG --libs-only-l libpulse-simple`" -+ PULSE_LDFLAGS="`$PKG_CONFIG --libs-only-L libpulse-simple`" -+ have_pulse=yes - AC_MSG_RESULT(yes) -- AC_DEFINE(HAVE_LIBPOLYP, 1, -- [Define if you have polyplib (required if you want Polypaudio server support)]) -+ AC_DEFINE(HAVE_LIBPULSE, 1, -+ [Define if you have libpulse (required if you want PulseAudio server support)]) - else - AC_MSG_RESULT(not installed) - fi --AC_SUBST(POLYP_CFLAGS) --AC_SUBST(POLYP_LIBADD) --AC_SUBST(POLYP_LDFLAGS) -+AC_SUBST(PULSE_CFLAGS) -+AC_SUBST(PULSE_LIBADD) -+AC_SUBST(PULSE_LDFLAGS) - fi - - AC_ARG_WITH(ffmpeg,AC_HELP_STRING([--with-ffmpeg],[Enable experimental FFMPEG decoder support @<:@default=check@:>@]),[ffmpeg_test="$withval"],[ffmpeg_test="yes"]) -@@ -482,7 +482,7 @@ AM_CONDITIONAL(include_alsa_sink, test x$have_alsa = xyes) - AM_CONDITIONAL(include_oss_sink, test x$have_oss = xyes) - AM_CONDITIONAL(include_sun_sink, test x$have_sun = xyes) - AM_CONDITIONAL(include_jack_sink, test x$have_jack = xyes) --AM_CONDITIONAL(include_polyp_sink, test x$have_polyp = xyes) -+AM_CONDITIONAL(include_pulse_sink, test x$have_pulse = xyes) - AM_CONDITIONAL(include_ffmpeg_decoder, test x$have_ffmpeg = xyes) - - AC_MSG_CHECKING(for compilable aKode) -diff --git a/akode/lib/auto_sink.cpp b/akode/lib/auto_sink.cpp -index bcc1250..bee17b1 100644 ---- a/akode/lib/auto_sink.cpp -+++ b/akode/lib/auto_sink.cpp -@@ -65,8 +65,8 @@ AutoSink::~AutoSink() - bool AutoSink::open() - { - // Try Polypaudio -- if (getenv("POLYP_SERVER")) -- if (m_data->tryOpen("polyp")) return true; -+ if (getenv("PULSE_SERVER")) -+ if (m_data->tryOpen("pulse")) return true; - // Try Jack - if (m_data->tryOpen("jack")) return true; - // Try ALSA -diff --git a/akode/plugins/CMakeLists.txt b/akode/plugins/CMakeLists.txt -index 6e11f1a..89bcfd1 100644 ---- a/akode/plugins/CMakeLists.txt -+++ b/akode/plugins/CMakeLists.txt -@@ -15,7 +15,7 @@ - tde_conditional_add_subdirectory( WITH_ALSA_SINK alsa_sink ) - tde_conditional_add_subdirectory( WITH_JACK_SINK jack_sink ) - tde_conditional_add_subdirectory( WITH_OSS_SINK oss_sink ) --tde_conditional_add_subdirectory( WITH_PULSE_SINK polyp_sink ) -+tde_conditional_add_subdirectory( WITH_PULSE_SINK pulse_sink ) - tde_conditional_add_subdirectory( WITH_SUN_SINK sun_sink ) - - tde_conditional_add_subdirectory( WITH_FFMPEG_DECODER ffmpeg_decoder ) -diff --git a/akode/plugins/Makefile.am b/akode/plugins/Makefile.am -index 74f27e5..4a13c85 100644 ---- a/akode/plugins/Makefile.am -+++ b/akode/plugins/Makefile.am -@@ -32,12 +32,12 @@ if include_jack_sink - AKODE_JACK_SINK=jack_sink - endif - --if include_polyp_sink --AKODE_POLYP_SINK=polyp_sink -+if include_pulse_sink -+AKODE_PULSE_SINK=pulse_sink - endif - - SUBDIRS= $(AKODE_MPC_DECODER) $(AKODE_XIPH_DECODER) \ - $(AKODE_MPEG_DECODER) $(AKODE_FFMPEG_DECODER) \ - $(AKODE_ALSA_SINK) $(AKODE_OSS_SINK) $(AKODE_SUN_SINK) \ -- $(AKODE_JACK_SINK) $(AKODE_POLYP_SINK) \ -+ $(AKODE_JACK_SINK) $(AKODE_PULSE_SINK) \ - $(AKODE_SRC_RESAMPLER) -diff --git a/akode/plugins/polyp_sink/CMakeLists.txt b/akode/plugins/polyp_sink/CMakeLists.txt -deleted file mode 100644 -index 28a940e..0000000 ---- a/akode/plugins/polyp_sink/CMakeLists.txt -+++ /dev/null -@@ -1,32 +0,0 @@ --################################################# --# --# (C) 2015 Slávek Banko --# slavek (DOT) banko (AT) axis.cz --# --# Improvements and feedback are welcome --# --# This file is released under GPL >= 2 --# --################################################# -- --include_directories( -- ${CMAKE_BINARY_DIR} -- ${CMAKE_BINARY_DIR}/akode/lib -- ${CMAKE_SOURCE_DIR}/akode/lib -- ${CMAKE_CURRENT_BINARY_DIR} -- ${CMAKE_CURRENT_SOURCE_DIR} -- ${PULSE_INCLUDE_DIRS} --) -- -- --##### library ################################### -- --set( target libakode_polyp_sink ) -- --tde_add_library( -- ${target} MODULE -- SOURCES polyp_sink.cpp -- LINK akode-shared ${PULSE_LIBRARIES} -- DESTINATION ${LIB_INSTALL_DIR} --) -- -diff --git a/akode/plugins/polyp_sink/Makefile.am b/akode/plugins/polyp_sink/Makefile.am -deleted file mode 100644 -index a58b04c..0000000 ---- a/akode/plugins/polyp_sink/Makefile.am -+++ /dev/null -@@ -1,7 +0,0 @@ --INCLUDES = -I$(top_srcdir)/akode/lib -I$(top_builddir)/akode/lib $(PULSE_CFLAGS) $(all_includes) -- --lib_LTLIBRARIES = libakode_polyp_sink.la -- --libakode_polyp_sink_la_SOURCES = polyp_sink.cpp --libakode_polyp_sink_la_LDFLAGS = -module -avoid-version -no-undefined $(PULSE_LDFLAGS) --libakode_polyp_sink_la_LIBADD = ../../lib/libakode.la $(PULSE_LIBADD) -diff --git a/akode/plugins/polyp_sink/polyp_sink.cpp b/akode/plugins/polyp_sink/polyp_sink.cpp -deleted file mode 100644 -index b48b63e..0000000 ---- a/akode/plugins/polyp_sink/polyp_sink.cpp -+++ /dev/null -@@ -1,143 +0,0 @@ --/* aKode: Polyp-Sink -- -- Copyright (C) 2004 Allan Sandfeld Jensen <kde@carewolf.com> -- -- This library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Library General Public -- License as published by the Free Software Foundation; either -- version 2 of the License, or (at your option) any later version. -- -- This library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Library General Public License for more details. -- -- You should have received a copy of the GNU Library General Public License -- along with this library; see the file COPYING.LIB. If not, write to -- the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor, -- Boston, MA 02110-1301, USA. --*/ -- --#include "config.h" -- --#ifdef HAVE_STDINT_H --#include <stdint.h> --#elif defined(HAVE_INTTYPES_H) --#include <inttypes.h> --#endif --#include <pulse/simple.h> -- --#include "audioframe.h" --#include "audiobuffer.h" --#include "polyp_sink.h" -- --#include <iostream> -- --namespace aKode { -- --extern "C" { PolypSinkPlugin polyp_sink; }; -- --struct PolypSink::private_data --{ -- private_data() : server(0), error(false) {}; -- -- pa_simple *server; -- pa_sample_spec sample_spec; -- -- bool error; -- -- AudioConfiguration config; --}; -- --PolypSink::PolypSink() --{ -- m_data = new private_data; -- m_data->sample_spec.rate = 44100; -- m_data->sample_spec.channels = 2; -- m_data->sample_spec.format = PA_SAMPLE_S16NE; --} -- --bool PolypSink::open() { -- int error = 0; -- m_data->server = pa_simple_new(0, "akode-client", PA_STREAM_PLAYBACK, 0, "", &m_data->sample_spec, 0, 0, &error ); -- if (!m_data->server || error != 0) { -- m_data->error = true; -- close(); -- std::cout << "Cannot open client\n"; -- return false; -- } -- -- -- return true; --} -- --void PolypSink::close() { -- if (m_data->server) { -- pa_simple_free(m_data->server); -- m_data->server = 0; -- } --} -- --PolypSink::~PolypSink() --{ -- close(); -- delete m_data; --} -- --int PolypSink::setAudioConfiguration(const AudioConfiguration* config) --{ -- if (m_data->error) return -1; -- -- int res = 0; -- if (*config == m_data->config) return 0; -- m_data->config = *config; -- -- if (config->channel_config != MonoStereo ) return -1; -- m_data->sample_spec.channels = config->channels; -- -- if (config->sample_width != 16) { -- res = 1; -- m_data->config.sample_width = 16; -- } -- -- m_data->sample_spec.rate = config->sample_rate; -- -- // create new connection -- close(); -- open(); -- -- return res; --} -- --const AudioConfiguration* PolypSink::audioConfiguration() const --{ -- return &m_data->config; --} -- --bool PolypSink::writeFrame(AudioFrame* frame) --{ -- if ( m_data->error ) return false; -- -- if ( frame->channels != m_data->config.channels || frame->sample_rate != m_data->config.sample_rate) -- { -- if (setAudioConfiguration(frame)!=0) -- return false; -- } -- -- int channels = m_data->config.channels; -- int length = frame->length; -- -- int16_t *buffer = new int16_t[length*channels]; -- int16_t** data = (int16_t**)frame->data; -- for(int i = 0; i<length; i++) -- for(int j=0; j<channels; j++) -- buffer[i*channels+j] = data[j][i]; -- -- int error = 0; -- pa_simple_write(m_data->server, buffer, channels*length*2, &error); -- delete[] buffer; -- -- return (error == 0); --} -- --} // namespace -diff --git a/akode/plugins/polyp_sink/polyp_sink.h b/akode/plugins/polyp_sink/polyp_sink.h -deleted file mode 100644 -index e279ff6..0000000 ---- a/akode/plugins/polyp_sink/polyp_sink.h -+++ /dev/null -@@ -1,60 +0,0 @@ --/* aKode: Polyp-Sink -- -- Copyright (C) 2004 Allan Sandfeld Jensen <kde@carewolf.com> -- -- This library is free software; you can redistribute it and/or -- modify it under the terms of the GNU Library General Public -- License as published by the Free Software Foundation; either -- version 2 of the License, or (at your option) any later version. -- -- This library is distributed in the hope that it will be useful, -- but WITHOUT ANY WARRANTY; without even the implied warranty of -- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -- Library General Public License for more details. -- -- You should have received a copy of the GNU Library General Public License -- along with this library; see the file COPYING.LIB. If not, write to -- the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor, -- Boston, MA 02110-1301, USA. --*/ -- --#ifndef _AKODE_POLYP_SINK_H --#define _AKODE_POLYP_SINK_H -- --#include "sink.h" -- --#include "akode_export.h" -- --namespace aKode { -- --class AudioConfiguration; --class AudioFrame; -- --class PolypSink : public Sink { --public: -- PolypSink(); -- ~PolypSink(); -- bool open(); -- void close(); -- int setAudioConfiguration(const AudioConfiguration *config); -- const AudioConfiguration* audioConfiguration() const; -- // Writes blocking -- bool writeFrame(AudioFrame *frame); -- -- struct private_data; --private: -- private_data *m_data; --}; -- --class PolypSinkPlugin : public SinkPlugin { --public: -- virtual PolypSink* openSink() { -- return new PolypSink(); -- } --}; -- --extern "C" AKODE_EXPORT PolypSinkPlugin polyp_sink; -- --} // namespace -- --#endif -diff --git a/akode/plugins/pulse_sink/CMakeLists.txt b/akode/plugins/pulse_sink/CMakeLists.txt -new file mode 100644 -index 0000000..04026d3 ---- /dev/null -+++ b/akode/plugins/pulse_sink/CMakeLists.txt -@@ -0,0 +1,32 @@ -+################################################# -+# -+# (C) 2015 Slávek Banko -+# slavek (DOT) banko (AT) axis.cz -+# -+# Improvements and feedback are welcome -+# -+# This file is released under GPL >= 2 -+# -+################################################# -+ -+include_directories( -+ ${CMAKE_BINARY_DIR} -+ ${CMAKE_BINARY_DIR}/akode/lib -+ ${CMAKE_SOURCE_DIR}/akode/lib -+ ${CMAKE_CURRENT_BINARY_DIR} -+ ${CMAKE_CURRENT_SOURCE_DIR} -+ ${PULSE_INCLUDE_DIRS} -+) -+ -+ -+##### library ################################### -+ -+set( target libakode_pulse_sink ) -+ -+tde_add_library( -+ ${target} MODULE -+ SOURCES pulse_sink.cpp -+ LINK akode-shared ${PULSE_LIBRARIES} -+ DESTINATION ${LIB_INSTALL_DIR} -+) -+ -diff --git a/akode/plugins/pulse_sink/Makefile.am b/akode/plugins/pulse_sink/Makefile.am -new file mode 100644 -index 0000000..9f38245 ---- /dev/null -+++ b/akode/plugins/pulse_sink/Makefile.am -@@ -0,0 +1,7 @@ -+INCLUDES = -I$(top_srcdir)/akode/lib -I$(top_builddir)/akode/lib $(PULSE_CFLAGS) $(all_includes) -+ -+lib_LTLIBRARIES = libakode_pulse_sink.la -+ -+libakode_pulse_sink_la_SOURCES = pulse_sink.cpp -+libakode_pulse_sink_la_LDFLAGS = -module -avoid-version -no-undefined $(PULSE_LDFLAGS) -+libakode_pulse_sink_la_LIBADD = ../../lib/libakode.la $(PULSE_LIBADD) -diff --git a/akode/plugins/pulse_sink/pulse_sink.cpp b/akode/plugins/pulse_sink/pulse_sink.cpp -new file mode 100644 -index 0000000..395bfb3 ---- /dev/null -+++ b/akode/plugins/pulse_sink/pulse_sink.cpp -@@ -0,0 +1,143 @@ -+/* aKode: Pulse-Sink -+ -+ Copyright (C) 2004 Allan Sandfeld Jensen <kde@carewolf.com> -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License as published by the Free Software Foundation; either -+ version 2 of the License, or (at your option) any later version. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library; see the file COPYING.LIB. If not, write to -+ the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+*/ -+ -+#include "config.h" -+ -+#ifdef HAVE_STDINT_H -+#include <stdint.h> -+#elif defined(HAVE_INTTYPES_H) -+#include <inttypes.h> -+#endif -+#include <pulse/simple.h> -+ -+#include "audioframe.h" -+#include "audiobuffer.h" -+#include "pulse_sink.h" -+ -+#include <iostream> -+ -+namespace aKode { -+ -+extern "C" { PulseSinkPlugin pulse_sink; }; -+ -+struct PulseSink::private_data -+{ -+ private_data() : server(0), error(false) {}; -+ -+ pa_simple *server; -+ pa_sample_spec sample_spec; -+ -+ bool error; -+ -+ AudioConfiguration config; -+}; -+ -+PulseSink::PulseSink() -+{ -+ m_data = new private_data; -+ m_data->sample_spec.rate = 44100; -+ m_data->sample_spec.channels = 2; -+ m_data->sample_spec.format = PA_SAMPLE_S16NE; -+} -+ -+bool PulseSink::open() { -+ int error = 0; -+ m_data->server = pa_simple_new(0, "akode-client", PA_STREAM_PLAYBACK, 0, "", &m_data->sample_spec, 0, 0, &error ); -+ if (!m_data->server || error != 0) { -+ m_data->error = true; -+ close(); -+ std::cout << "Cannot open client\n"; -+ return false; -+ } -+ -+ -+ return true; -+} -+ -+void PulseSink::close() { -+ if (m_data->server) { -+ pa_simple_free(m_data->server); -+ m_data->server = 0; -+ } -+} -+ -+PulseSink::~PulseSink() -+{ -+ close(); -+ delete m_data; -+} -+ -+int PulseSink::setAudioConfiguration(const AudioConfiguration* config) -+{ -+ if (m_data->error) return -1; -+ -+ int res = 0; -+ if (*config == m_data->config) return 0; -+ m_data->config = *config; -+ -+ if (config->channel_config != MonoStereo ) return -1; -+ m_data->sample_spec.channels = config->channels; -+ -+ if (config->sample_width != 16) { -+ res = 1; -+ m_data->config.sample_width = 16; -+ } -+ -+ m_data->sample_spec.rate = config->sample_rate; -+ -+ // create new connection -+ close(); -+ open(); -+ -+ return res; -+} -+ -+const AudioConfiguration* PulseSink::audioConfiguration() const -+{ -+ return &m_data->config; -+} -+ -+bool PulseSink::writeFrame(AudioFrame* frame) -+{ -+ if ( m_data->error ) return false; -+ -+ if ( frame->channels != m_data->config.channels || frame->sample_rate != m_data->config.sample_rate) -+ { -+ if (setAudioConfiguration(frame)!=0) -+ return false; -+ } -+ -+ int channels = m_data->config.channels; -+ int length = frame->length; -+ -+ int16_t *buffer = new int16_t[length*channels]; -+ int16_t** data = (int16_t**)frame->data; -+ for(int i = 0; i<length; i++) -+ for(int j=0; j<channels; j++) -+ buffer[i*channels+j] = data[j][i]; -+ -+ int error = 0; -+ pa_simple_write(m_data->server, buffer, channels*length*2, &error); -+ delete[] buffer; -+ -+ return (error == 0); -+} -+ -+} // namespace -diff --git a/akode/plugins/pulse_sink/pulse_sink.h b/akode/plugins/pulse_sink/pulse_sink.h -new file mode 100644 -index 0000000..e890e4a ---- /dev/null -+++ b/akode/plugins/pulse_sink/pulse_sink.h -@@ -0,0 +1,60 @@ -+/* aKode: Pulse-Sink -+ -+ Copyright (C) 2004 Allan Sandfeld Jensen <kde@carewolf.com> -+ -+ This library is free software; you can redistribute it and/or -+ modify it under the terms of the GNU Library General Public -+ License as published by the Free Software Foundation; either -+ version 2 of the License, or (at your option) any later version. -+ -+ This library is distributed in the hope that it will be useful, -+ but WITHOUT ANY WARRANTY; without even the implied warranty of -+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -+ Library General Public License for more details. -+ -+ You should have received a copy of the GNU Library General Public License -+ along with this library; see the file COPYING.LIB. If not, write to -+ the Free Software Foundation, Inc., 51 Franklin Steet, Fifth Floor, -+ Boston, MA 02110-1301, USA. -+*/ -+ -+#ifndef _AKODE_PULSE_SINK_H -+#define _AKODE_PULSE_SINK_H -+ -+#include "sink.h" -+ -+#include "akode_export.h" -+ -+namespace aKode { -+ -+class AudioConfiguration; -+class AudioFrame; -+ -+class PulseSink : public Sink { -+public: -+ PulseSink(); -+ ~PulseSink(); -+ bool open(); -+ void close(); -+ int setAudioConfiguration(const AudioConfiguration *config); -+ const AudioConfiguration* audioConfiguration() const; -+ // Writes blocking -+ bool writeFrame(AudioFrame *frame); -+ -+ struct private_data; -+private: -+ private_data *m_data; -+}; -+ -+class PulseSinkPlugin : public SinkPlugin { -+public: -+ virtual PulseSink* openSink() { -+ return new PulseSink(); -+ } -+}; -+ -+extern "C" AKODE_EXPORT PulseSinkPlugin pulse_sink; -+ -+} // namespace -+ -+#endif diff --git a/freebsd/dependencies/akode/files/patch-b03-add-multilib-support.diff b/freebsd/dependencies/akode/files/patch-b03-add-multilib-support.diff deleted file mode 100644 index ee2a58b08..000000000 --- a/freebsd/dependencies/akode/files/patch-b03-add-multilib-support.diff +++ /dev/null @@ -1,91 +0,0 @@ -commit d67c4c24d28fb80653b1d499dcb7cd36284883fd -Author: François Andriot <francois.andriot@free.fr> -Date: Thu Oct 15 04:47:35 2015 +0200 - - Add multilib support - [taken from Fedora patches] - -diff --git a/akode/CMakeLists.txt b/akode/CMakeLists.txt -index 26cc5c0..b7ab6a5 100644 ---- a/akode/CMakeLists.txt -+++ b/akode/CMakeLists.txt -@@ -24,6 +24,10 @@ configure_file( akode-config.in akode-config @ONLY ) - install( PROGRAMS ${CMAKE_CURRENT_BINARY_DIR}/akode-config - DESTINATION ${BIN_INSTALL_DIR} ) - -+configure_file( akode.pc.in akode.pc @ONLY ) -+install( FILES ${CMAKE_CURRENT_BINARY_DIR}/akode.pc -+ DESTINATION ${PKGCONFIG_INSTALL_DIR} ) -+ - - ##### build ##################################### - -diff --git a/akode/Makefile.am b/akode/Makefile.am -index 99455d5..a30cdd8 100644 ---- a/akode/Makefile.am -+++ b/akode/Makefile.am -@@ -1,3 +1,8 @@ - bin_SCRIPTS = akode-config - - SUBDIRS= lib plugins akodeplay -+ -+pkgconfigdir = $(libdir)/pkgconfig -+pkgconfig_DATA = akode.pc -+ -+EXTRA_DIST = akode.pc.in -diff --git a/akode/akode-config.in b/akode/akode-config.in -index b4263be..d1d8457 100644 ---- a/akode/akode-config.in -+++ b/akode/akode-config.in -@@ -15,9 +15,8 @@ EOH - } - - prefix=@prefix@ --exec_prefix=@exec_prefix@ --libdir=@libdir@ --includedir=@includedir@ -+akode_libs="`pkg-config --libs akode`" -+akode_cflags="`pkg-config --cflags akode`" - - flags="" - -@@ -29,10 +28,10 @@ while test $# -gt 0 - do - case $1 in - --libs) -- flags="$flags -L$libdir -lakode" -+ flags="$flags $akode_libs" - ;; - --cflags) -- flags="$flags -I$includedir" -+ flags="$flags $akode_cflags" - ;; - --version) - echo 2.0.2 -diff --git a/akode/akode.pc.in b/akode/akode.pc.in -new file mode 100644 -index 0000000..d17b2ea ---- /dev/null -+++ b/akode/akode.pc.in -@@ -0,0 +1,10 @@ -+prefix=@prefix@ -+exec_prefix=@prefix@ -+libdir=@libdir@ -+includedir=@includedir@ -+ -+Name: akode -+Description: aKode is a simple audio-decoding frame-work -+Version: 2.0.2 -+Libs: -L${libdir} -lakode -+Cflags: -I${includedir} -diff --git a/akode/configure.in.in b/akode/configure.in.in -index 80d0114..2b0ef60 100644 ---- a/akode/configure.in.in -+++ b/akode/configure.in.in -@@ -1,5 +1,6 @@ - dnl don't remove the below - dnl AC_OUTPUT(akode/akode-config) -+dnl AC_OUTPUT(akode/akode.pc) - - AC_CONFIG_HEADER(akode/lib/akode_export.h) - diff --git a/freebsd/dependencies/akode/files/patch-b04-fix-ftbfs-on-ptrdiff_t-redefinition.diff b/freebsd/dependencies/akode/files/patch-b04-fix-ftbfs-on-ptrdiff_t-redefinition.diff deleted file mode 100644 index c587fe075..000000000 --- a/freebsd/dependencies/akode/files/patch-b04-fix-ftbfs-on-ptrdiff_t-redefinition.diff +++ /dev/null @@ -1,20 +0,0 @@ -commit 6c3892f0e0939e0b40a9d46142a30005ecaab77f -Author: Slávek Banko <slavek.banko@axis.cz> -Date: Fri May 26 09:59:08 2017 +0200 - - Fix FTBFS on ptrdiff_t redefinition - - Signed-off-by: Slávek Banko <slavek.banko@axis.cz> - -diff --git a/akode/plugins/mpc_decoder/mppdec/synth_filter.cpp b/akode/plugins/mpc_decoder/mppdec/synth_filter.cpp -index 256417a..2ea7a08 100644 ---- a/akode/plugins/mpc_decoder/mppdec/synth_filter.cpp -+++ b/akode/plugins/mpc_decoder/mppdec/synth_filter.cpp -@@ -1,7 +1,5 @@ - #include "stdafx.h" - --typedef int ptrdiff_t; -- - - /* C O N S T A N T S */ - #undef _ |