omxplayer: add new package
[openwrt/staging/noltari.git] / package / multimedia / omxplayer / files / CMakeLists.txt
diff --git a/package/multimedia/omxplayer/files/CMakeLists.txt b/package/multimedia/omxplayer/files/CMakeLists.txt
new file mode 100644 (file)
index 0000000..a26b080
--- /dev/null
@@ -0,0 +1,100 @@
+cmake_minimum_required(VERSION 2.8)
+
+project(omxplayer)
+
+add_definitions(-D__STDC_CONSTANT_MACROS)
+add_definitions(-D__STDC_LIMIT_MACROS)
+add_definitions(-DTARGET_POSIX)
+add_definitions(-DTARGET_LINUX)
+add_definitions(-D_REENTRANT)
+add_definitions(-D_LARGEFILE64_SOURCE)
+add_definitions(-D_FILE_OFFSET_BITS=64)
+add_definitions(-DHAVE_CMAKE_CONFIG)
+add_definitions(-D__VIDEOCORE4__)
+add_definitions(-DHAVE_OMXLIB)
+add_definitions(-DUSE_EXTERNAL_FFMPEG)
+add_definitions(-DHAVE_LIBAVCODEC_AVCODEC_H)
+add_definitions(-DHAVE_LIBAVUTIL_OPT_H)
+add_definitions(-DHAVE_LIBAVUTIL_MEM_H)
+add_definitions(-DHAVE_LIBAVUTIL_AVUTIL_H)
+add_definitions(-DHAVE_LIBAVFORMAT_AVFORMAT_H)
+add_definitions(-DHAVE_LIBAVFILTER_AVFILTER_H)
+add_definitions(-DHAVE_LIBSWRESAMPLE_SWRESAMPLE_H)
+add_definitions(-DOMX)
+add_definitions(-DOMX_SKIP64BIT)
+add_definitions(-DUSE_EXTERNAL_OMX)
+add_definitions(-DTARGET_RASPBERRY_PI)
+add_definitions(-DUSE_EXTERNAL_LIBBCM_HOST)
+
+include_directories(.)
+include_directories(linux)
+include_directories(utils)
+
+add_custom_command(OUTPUT help.h
+       COMMAND awk
+       ARGS '/SYNOPSIS/{p=1\;print\;next} p&&/KEY BINDINGS/{p=0}\;p' README.md | sed -e '1,3 d' -e 's/^/\"/' -e 's/$$/\\\\n\"/' > help.h
+       DEPENDS README.md)
+
+add_custom_command(OUTPUT keys.h
+       COMMAND awk
+       ARGS '/KEY BINDINGS/{p=1\;print\;next} p&&/KEY CONFIG/{p=0}\;p' README.md | sed -e '1,3 d' -e 's/^/\"/' -e 's/$$/\\\\n\"/' > keys.h
+       DEPENDS README.md)
+
+add_custom_command(OUTPUT version.h
+       COMMAND gen_version.sh
+       ARGS > keys.h)
+
+set_property(SOURCE omxplayer.cpp APPEND PROPERTY OBJECT_DEPENDS help.h keys.h version.h)
+
+add_executable(omxplayer.bin
+       linux/XMemUtils.cpp
+       linux/OMXAlsa.cpp
+       utils/log.cpp
+       DynamicDll.cpp
+       utils/PCMRemap.cpp
+       utils/RegExp.cpp
+       OMXSubtitleTagSami.cpp
+       OMXOverlayCodecText.cpp
+       BitstreamConverter.cpp
+       linux/RBP.cpp
+       OMXThread.cpp
+       OMXReader.cpp
+       OMXStreamInfo.cpp
+       OMXAudioCodecOMX.cpp
+       OMXCore.cpp
+       OMXVideo.cpp
+       OMXAudio.cpp
+       OMXClock.cpp
+       File.cpp
+       OMXPlayerVideo.cpp
+       OMXPlayerAudio.cpp
+       OMXPlayerSubtitles.cpp
+       SubtitleRenderer.cpp
+       Unicode.cpp
+       Srt.cpp
+       KeyConfig.cpp
+       OMXControl.cpp
+       Keyboard.cpp
+       omxplayer.cpp
+       revision.cpp)
+
+target_link_libraries(omxplayer.bin
+       brcmGLESv2
+       brcmEGL
+       bcm_host
+       openmaxil
+       freetype
+       asound
+       vchiq_arm
+       vchostif
+       vcos
+       dbus-1
+       pcre
+       avcodec
+       avformat
+       avutil
+       swresample
+       swscale)
+
+install(TARGETS omxplayer.bin
+       RUNTIME DESTINATION bin)