1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-08-04 13:17:34 +02:00

Install a .protocol file on KDE so tomahawk:// links work there too

This commit is contained in:
Leo Franchi
2011-04-11 15:36:29 -04:00
parent 1cb3516dc6
commit 24d9cce3a8
6 changed files with 32 additions and 5 deletions

View File

@@ -47,12 +47,22 @@ macro_log_feature(TAGLIB_FOUND "TagLib" "Audio Meta-Data Library" "http://develo
# we need pthreads too # we need pthreads too
find_package(Threads) find_package(Threads)
find_package(KDE4)
IF(KDE4_FOUND)
#KDE4 adds and removes some compiler flags that we don't like
STRING( REPLACE "-std=iso9899:1990" "" CLEAN_C_FLAGS ${CMAKE_C_FLAGS} )
SET( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fexceptions" )
ELSE()
SET( CLEAN_C_FLAGS ${CMAKE_C_FLAGS} )
ENDIF()
include( CheckTagLibFileName ) include( CheckTagLibFileName )
check_taglib_filename( COMPLEX_TAGLIB_FILENAME ) check_taglib_filename( COMPLEX_TAGLIB_FILENAME )
# optional # optional
macro_optional_find_package(Jreen) macro_optional_find_package(Jreen)
IF( ENABLE_JREEN AND NOT LIBJREEN_FOUND ) IF( ENABLE_JREEN AND NOT LIBJREEN_FOUND )
ADD_SUBDIRECTORY( thirdparty/jreen ) ADD_SUBDIRECTORY( thirdparty/jreen )
SET( LIBJREEN_INCLUDE_DIR ${CMAKE_CURRENT_BINARY_DIR}/thirdparty/jreen/include ) SET( LIBJREEN_INCLUDE_DIR ${CMAKE_CURRENT_BINARY_DIR}/thirdparty/jreen/include )
IF( UNIX AND NOT APPLE ) IF( UNIX AND NOT APPLE )
@@ -92,9 +102,10 @@ CONFIGURE_FILE(
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake" "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
IMMEDIATE @ONLY) IMMEDIATE @ONLY)
ADD_CUSTOM_TARGET(uninstall # KDE4 defines an uninstall target for us automatically
"${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake") IF( NOT KDE4_FOUND )
ADD_CUSTOM_TARGET(uninstall "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
ENDIF()
IF( NOT APPLE ) IF( NOT APPLE )
# Make linking as strict on linux as it is on osx. Then we don't break linking on mac so often # Make linking as strict on linux as it is on osx. Then we don't break linking on mac so often

View File

@@ -1,5 +1,5 @@
[Protocol] [Protocol]
exec=/home/leo/kde/tomahawk/build/tomahawk "%u" exec=/path/to/binary "%u"
protocol=tomahawk protocol=tomahawk
input=none input=none
output=none output=none

View File

@@ -120,7 +120,7 @@ SET( tomahawkUI ${tomahawkUI}
) )
INCLUDE_DIRECTORIES( INCLUDE_DIRECTORIES(
. .
${TOMAHAWK_INC_DIR} ${TOMAHAWK_INC_DIR}
${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_BINARY_DIR}
@@ -237,4 +237,14 @@ ENDIF( APPLE )
INSTALL( TARGETS tomahawk BUNDLE DESTINATION . RUNTIME DESTINATION bin ) INSTALL( TARGETS tomahawk BUNDLE DESTINATION . RUNTIME DESTINATION bin )
IF(KDE4_FOUND) #install protocol file
FILE(READ ${CMAKE_SOURCE_DIR}/admin/unix/tomahawk.protocol protocol)
STRING( REPLACE "/path/to/binary" # match this
"${CMAKE_INSTALL_PREFIX}/bin/tomahawk" # this is linux (kde) so pretty safe I think
edited_protocol # save in this variable
"${protocol}" # from the contents of this var
)
FILE( WRITE ${CMAKE_BINARY_DIR}/tomahawk.protocol "${edited_protocol}" )
INSTALL( FILES ${CMAKE_BINARY_DIR}/tomahawk.protocol DESTINATION ${SERVICES_INSTALL_DIR} )
ENDIF()
#INCLUDE( "CPack.txt" ) #INCLUDE( "CPack.txt" )

View File

@@ -12,6 +12,8 @@ SET(CMAKE_RUNTIME_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}")
SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}") SET(CMAKE_LIBRARY_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}")
SET(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}") SET(CMAKE_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}")
SET( CMAKE_C_FLAGS ${CLEAN_C_FLAGS} )
#ADD_DEFINITIONS(-Wall -O2 -DNDEBUG) #ADD_DEFINITIONS(-Wall -O2 -DNDEBUG)
ADD_DEFINITIONS(-fPIC) ADD_DEFINITIONS(-fPIC)

View File

@@ -9,6 +9,8 @@ INCLUDE( ${QT_USE_FILE} )
add_definitions( ${QT_DEFINITIONS} ) add_definitions( ${QT_DEFINITIONS} )
add_definitions( -DQT_SHARED ) add_definitions( -DQT_SHARED )
SET( CMAKE_C_FLAGS ${CLEAN_C_FLAGS} )
if(WIN32) if(WIN32)
set(PLATFORM_SPECIFIC_LIBS "ws2_32.dll" "advapi32.dll" ) set(PLATFORM_SPECIFIC_LIBS "ws2_32.dll" "advapi32.dll" )
endif(WIN32) endif(WIN32)

View File

@@ -17,6 +17,8 @@ ELSE()
ENDIF() ENDIF()
INCLUDE_DIRECTORIES(${MINIUPNP_DIR} include) INCLUDE_DIRECTORIES(${MINIUPNP_DIR} include)
SET( CMAKE_C_FLAGS ${CLEAN_C_FLAGS} )
ADD_LIBRARY(portfwd STATIC ADD_LIBRARY(portfwd STATIC
# the needed bits of miniupnpc (no python module, no tests, no cli) # the needed bits of miniupnpc (no python module, no tests, no cli)