aboutsummaryrefslogblamecommitdiff
path: root/src/plugins/Output/oss4/CMakeLists.txt
blob: bcedcaada28bd8e2b6967f91e2d6a54f512032bf (plain) (tree)
































































































                                                                            
project(liboss4)

cmake_minimum_required(VERSION 2.4.7)

if(COMMAND cmake_policy)
cmake_policy(SET CMP0003 NEW)
endif(COMMAND cmake_policy)

INCLUDE(CheckIncludeFile)
INCLUDE(CheckCXXSourceCompiles)

# qt plugin
ADD_DEFINITIONS( -Wall )
ADD_DEFINITIONS(${QT_DEFINITIONS})
ADD_DEFINITIONS(-DQT_PLUGIN)
ADD_DEFINITIONS(-DQT_NO_DEBUG)
ADD_DEFINITIONS(-DQT_SHARED)
ADD_DEFINITIONS(-DQT_THREAD)

include_directories(${CMAKE_CURRENT_BINARY_DIR})

SET(QT_INCLUDES
  ${QT_INCLUDES}
  ${CMAKE_CURRENT_SOURCE_DIR}/../../../
)
#oss4
include_directories(/usr/lib/oss/include)
CHECK_INCLUDE_FILE(sys/soundcard.h SYS_SOUNDCARD_H_FOUND)
IF(SYS_SOUNDCARD_H_FOUND)
ADD_DEFINITIONS(-DHAVE_SYS_SOUNDCARD_H)
SET(CMAKE_REQUIRED_DEFINITIONS -DHAVE_SYS_SOUNDCARD_H)
ENDIF(SYS_SOUNDCARD_H_FOUND)


SET(CMAKE_REQUIRED_INCLUDES /usr/lib/oss/include/ /usr/include/)

CHECK_CXX_SOURCE_COMPILES("
#include <unistd.h>
#include <stdio.h>
#include <stdlib.h>
#ifdef HAVE_SYS_SOUNDCARD_H
#include <sys/soundcard.h>
#else
#include <soundcard.h>
#endif

#if OSS_VERSION < 0x040000
#error \\\"oss test failed\\\"
#endif


int main (int argc, char **argv)
{
   exit(0);
}" OSS4_SUPPORT)

IF(OSS4_SUPPORT)
SET(OSS4_FOUND TRUE CACHE INTERNAL "oss4")
ENDIF(OSS4_SUPPORT)


# libqmmp
include_directories(${CMAKE_CURRENT_SOURCE_DIR}/../../../)
link_directories(${CMAKE_CURRENT_BINARY_DIR}/../../../qmmp)


SET(liboss4_SRCS
  outputoss4factory.cpp
  outputoss4.cpp
  settingsdialog.cpp
)

SET(liboss4_MOC_HDRS
  outputoss4factory.h
  outputoss4.h
  settingsdialog.h
)

SET(liboss4_RCCS translations/translations.qrc)

QT4_ADD_RESOURCES(liboss4_RCC_SRCS ${liboss4_RCCS})

QT4_WRAP_CPP(liboss4_MOC_SRCS ${liboss4_MOC_HDRS})

SET(liboss4_UIS
    settingsdialog.ui
)

IF(OSS4_FOUND)
QT4_WRAP_UI(liboss4_UIS_H ${liboss4_UIS})

ADD_LIBRARY(oss4 MODULE ${liboss4_SRCS} ${liboss4_MOC_SRCS} ${liboss4_UIS_H}
  ${liboss4_RCC_SRCS})
add_dependencies(oss4 qmmp)
target_link_libraries(oss4 ${QT_LIBRARIES} -lqmmp)
install(TARGETS oss4 DESTINATION ${LIB_DIR}/qmmp/Output)
ENDIF(OSS4_FOUND)