1
0
mirror of https://github.com/tomahawk-player/tomahawk.git synced 2025-04-19 23:41:51 +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
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 )
check_taglib_filename( COMPLEX_TAGLIB_FILENAME )
# optional
macro_optional_find_package(Jreen)
IF( ENABLE_JREEN AND NOT LIBJREEN_FOUND )
ADD_SUBDIRECTORY( thirdparty/jreen )
SET( LIBJREEN_INCLUDE_DIR ${CMAKE_CURRENT_BINARY_DIR}/thirdparty/jreen/include )
IF( UNIX AND NOT APPLE )
@ -92,9 +102,10 @@ CONFIGURE_FILE(
"${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake"
IMMEDIATE @ONLY)
ADD_CUSTOM_TARGET(uninstall
"${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
# KDE4 defines an uninstall target for us automatically
IF( NOT KDE4_FOUND )
ADD_CUSTOM_TARGET(uninstall "${CMAKE_COMMAND}" -P "${CMAKE_CURRENT_BINARY_DIR}/cmake_uninstall.cmake")
ENDIF()
IF( NOT APPLE )
# 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]
exec=/home/leo/kde/tomahawk/build/tomahawk "%u"
exec=/path/to/binary "%u"
protocol=tomahawk
input=none
output=none

View File

@ -120,7 +120,7 @@ SET( tomahawkUI ${tomahawkUI}
)
INCLUDE_DIRECTORIES(
.
.
${TOMAHAWK_INC_DIR}
${CMAKE_CURRENT_BINARY_DIR}
@ -237,4 +237,14 @@ ENDIF( APPLE )
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" )

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_ARCHIVE_OUTPUT_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}")
SET( CMAKE_C_FLAGS ${CLEAN_C_FLAGS} )
#ADD_DEFINITIONS(-Wall -O2 -DNDEBUG)
ADD_DEFINITIONS(-fPIC)

View File

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

View File

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