- attempt to get static linking working for libvlc
This commit is contained in:
parent
32b4925f31
commit
b7cf90a09e
|
@ -45,24 +45,35 @@ PATHS
|
|||
find_path(LIBVLC_INCLUDE_DIR PATHS "${CMAKE_INCLUDE_PATH}/vlc" NAMES vlc.h
|
||||
HINTS ${PC_LIBVLC_INCLUDEDIR} ${PC_LIBVLC_INCLUDE_DIRS})
|
||||
|
||||
# dream on libvlc doesn't support static linking
|
||||
OPTION(WANT_STATIC_LIBS "builds as many static libs as possible" OFF)
|
||||
set(LIBVLC_LIB_NAMES vlc libvlc)
|
||||
set(LIBVLC_LIB_CORE_NAMES vlccore libvlccore)
|
||||
IF(WANT_STATIC_LIBS)
|
||||
set(LIBVLC_LIB_NAMES libvlc.a ${LIBVLC_LIB_NAMES})
|
||||
set(LIBVLC_LIB_CORE_NAMES libvlccore.a ${LIBVLC_LIB_CORE_NAMES})
|
||||
|
||||
message(STATUS "Looking for LIBVLC static libs")
|
||||
ENDIF()
|
||||
|
||||
#Put here path to custom location
|
||||
#example: /home/user/vlc/lib etc..
|
||||
find_library(LIBVLC_LIBRARY NAMES vlc libvlc
|
||||
find_library(LIBVLC_LIBRARY NAMES ${LIBVLC_LIB_NAMES}
|
||||
HINTS "$ENV{LIBVLC_LIBRARY_PATH}" ${PC_LIBVLC_LIBDIR} ${PC_LIBVLC_LIBRARY_DIRS}
|
||||
PATHS
|
||||
"$ENV{LIB_DIR}/lib"
|
||||
#mingw
|
||||
c:/msys/local/lib
|
||||
)
|
||||
find_library(LIBVLC_LIBRARY NAMES vlc libvlc)
|
||||
find_library(LIBVLCCORE_LIBRARY NAMES vlccore libvlccore
|
||||
find_library(LIBVLC_LIBRARY NAMES ${LIBVLC_LIB_NAMES})
|
||||
find_library(LIBVLCCORE_LIBRARY NAMES ${LIBVLC_LIB_CORE_NAMES}
|
||||
HINTS "$ENV{LIBVLC_LIBRARY_PATH}" ${PC_LIBVLC_LIBDIR} ${PC_LIBVLC_LIBRARY_DIRS}
|
||||
PATHS
|
||||
"$ENV{LIB_DIR}/lib"
|
||||
#mingw
|
||||
c:/msys/local/lib
|
||||
)
|
||||
find_library(LIBVLCCORE_LIBRARY NAMES vlccore libvlccore)
|
||||
find_library(LIBVLCCORE_LIBRARY NAMES ${LIBVLC_LIB_CORE_NAMES})
|
||||
|
||||
set(LIBVLC_VERSION ${PC_LIBVLC_VERSION})
|
||||
if (NOT LIBVLC_VERSION)
|
||||
|
|
|
@ -95,6 +95,27 @@ IF(BUILD_MEGAGLEST)
|
|||
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${GLEW_LIBRARY})
|
||||
ENDIF()
|
||||
|
||||
#SET(LIBVLC_MIN_VERSION "2.0.1")
|
||||
FIND_PACKAGE(LIBVLC)
|
||||
|
||||
IF(LIBVLC_FOUND AND NOT LIBVLC_VERSION STRLESS "${LIBVLC_MIN_VERSION}")
|
||||
MESSAGE(STATUS "**NOTE: LIBVLC found so intro videos are supported.")
|
||||
INCLUDE_DIRECTORIES(${LIBVLC_INCLUDE_DIR})
|
||||
IF(UNIX)
|
||||
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${LIBVLCCORE_LIBRARY} ${LIBVLC_LIBRARY})
|
||||
ADD_DEFINITIONS(-DHAS_LIBVLC)
|
||||
ENDIF()
|
||||
IF(LIBVLC_VERSION_PRE_V2)
|
||||
ADD_DEFINITIONS(-DLIBVLC_VERSION_PRE_2)
|
||||
ENDIF()
|
||||
IF(LIBVLC_VERSION_PRE_1_1_13)
|
||||
ADD_DEFINITIONS(-DLIBVLC_VERSION_PRE_1_1_13)
|
||||
ENDIF()
|
||||
|
||||
ELSE()
|
||||
MESSAGE(STATUS "**WARNING: LIBVLC NOT found so intro videos are NOT supported.")
|
||||
ENDIF()
|
||||
|
||||
#########################################################################################
|
||||
# megaglest game
|
||||
|
||||
|
|
|
@ -235,7 +235,7 @@ IF(BUILD_MEGAGLEST_MODEL_VIEWER OR BUILD_MEGAGLEST_MAP_EDITOR OR BUILD_MEGAGLEST
|
|||
MESSAGE(STATUS "**NOTE: LIBVLC found so intro videos are supported.")
|
||||
INCLUDE_DIRECTORIES(${LIBVLC_INCLUDE_DIR})
|
||||
IF(UNIX)
|
||||
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${LIBVLC_LIBRARY})
|
||||
SET(EXTERNAL_LIBS ${EXTERNAL_LIBS} ${LIBVLCCORE_LIBRARY} ${LIBVLC_LIBRARY})
|
||||
ADD_DEFINITIONS(-DHAS_LIBVLC)
|
||||
ENDIF()
|
||||
IF(LIBVLC_VERSION_PRE_V2)
|
||||
|
|
|
@ -160,6 +160,11 @@ void VideoPlayer::PlayVideo() {
|
|||
std::vector<const char *> vlc_argv;
|
||||
vlc_argv.push_back("--no-xlib" /* tell VLC to not use Xlib */);
|
||||
vlc_argv.push_back("--no-video-title-show");
|
||||
#if defined(LIBVLC_VERSION_PRE_2)
|
||||
string fullPluginsParam = "--plugin-path=" + pluginsPath;
|
||||
vlc_argv.push_back(fullPluginsParam.c_str());
|
||||
#endif
|
||||
|
||||
#if defined(LIBVLC_VERSION_PRE_2) && defined(LIBVLC_VERSION_PRE_1_1_13)
|
||||
char clock[64], cunlock[64], cdata[64];
|
||||
char cwidth[32], cheight[32], cpitch[32];
|
||||
|
|
Loading…
Reference in New Issue