1
##########################################################
2
# main cmake file for avidemux
3
# Derived from the one available in sim-im & kde4
4
##########################################################
5
MESSAGE("#####################################")
6
MESSAGE("Configure Started")
7
MESSAGE("#####################################")
9
CMAKE_MINIMUM_REQUIRED(VERSION 2.4.4)
10
SET(CMAKE_COLOR_MAKEFILE ON)
12
# where to look first for cmake modules, before ${CMAKE_ROOT}/Modules/ is checked
13
SET(CMAKE_MODULE_PATH "${CMAKE_SOURCE_DIR}/cmake")
17
MESSAGE(STATUS "Xmingw set, forcing win32 target")
21
#**************************************************
23
#**************************************************
24
SET(CMAKE_C_FLAGS $ENV{CFLAGS})
25
SET(CMAKE_CXX_FLAGS $ENV{CXXFLAGS})
27
MESSAGE("EXTRA Cflags:${CMAKE_C_FLAGS}")
28
MESSAGE("EXTRA CXXflags:${CMAKE_CXX_FLAGS}")
29
#*************************************************
31
include(MacroEnsureOutOfSourceBuild)
32
include(CheckCXXCompilerFlag)
34
SET(ADM_SUBVERSION 3688 )
36
#**************************************************
38
#**************************************************
39
MESSAGE(STATUS "<Checking for PKG-CONFIG>")
40
MESSAGE(STATUS "<***********************>")
41
if(NOT PKGCONFIG_EXECUTABLE)
42
MESSAGE(FATAL_ERROR "Could not find pkg-config")
43
endif(NOT PKGCONFIG_EXECUTABLE)
44
MESSAGE(STATUS "OK ${PKGCONFIG_EXECUTABLE}")
46
#**************************************************
48
#**************************************************
49
MESSAGE(STATUS "<Checking for LibXML2>")
50
MESSAGE(STATUS "<*********************>")
53
MESSAGE(FATAL_ERROR "Could not find Libxml2")
54
endif(NOT LIBXML2_FOUND)
55
MESSAGE(STATUS "LibXML2 OK")
57
#**************************************************
59
#**************************************************
60
MESSAGE(STATUS "<Checking for FreeType through PKG-CONFIG>")
61
MESSAGE(STATUS "<****************************************>")
63
message(status "<disabled per request>")
65
PKGCONFIG(freetype2 FT_INCLUDE FT_LIB FT_LDFLAGS FT_CFLAGS)
68
MESSAGE(STATUS "Could not find Freetype ")
71
MESSAGE(STATUS "LDFLAGS <${FT_LDFLAGS}>")
72
MESSAGE(STATUS "LIBS <${FT_LIB}>")
74
MESSAGE(STATUS "FreeType Found ("${FT_CFLAGS} ${FT_INCLUDE}")")
78
#**************************************************
79
# Search for X11 (not on windows)
80
#**************************************************
82
MESSAGE(STATUS "<Checking for X11>")
83
MESSAGE(STATUS "<******************************>")
86
MESSAGE(FATAL_ERROR "Could not find X11")
90
#**************************************************
91
# Search for GLIB through PKG-Config
92
#**************************************************
93
MESSAGE(STATUS "<Checking for GLIB>")
94
MESSAGE(STATUS "<******************************>")
95
PKGCONFIG(glib-2.0 GLIB_INCLUDE GLIB_LIB GLIB_LDFLAGS GLIB_CFLAGS)
98
MESSAGE(STATUS "Could not find GLIB - cannot compile avidemux2_gtk here")
99
ELSE(NOT GLIB_INCLUDE)
102
MESSAGE("GLIB Found ("${GLIB_CFLAGS}")")
104
ENDIF(NOT GLIB_INCLUDE)
105
#**************************************************
106
# Search for GTK through PKG-Config
107
#**************************************************
108
MESSAGE(STATUS "<Checking for GTK>")
109
MESSAGE(STATUS "<******************************>")
111
message(status "<disabled per request>")
113
PKGCONFIG(gtk+-2.0 GTK_INCLUDE GTK_LIB GTK_LDFLAGS GTK_CFLAGS)
116
MESSAGE(STATUS "Could not find GTK - cannot compile avidemux2_gtk here")
120
ENDIF(NOT GTK_CFLAGS)
122
#**************************************************
123
# Search for Gthread through PKG-Config
124
#**************************************************
125
MESSAGE(STATUS "<Checking for Gthread>")
126
MESSAGE(STATUS "<******************************>")
127
PKGCONFIG(gthread-2.0 GTHREAD_INCLUDE GTHREAD_LIB GTHREAD_LDFLAGS GTHREAD_CFLAGS)
129
IF(NOT GTHREAD_CFLAGS)
130
MESSAGE(STATUS "Could not find GTHREAD")
132
ELSE(NOT GTHREAD_CFLAGS)
133
SET(GTHREAD_LDFLAGS,${GTHREAD_LDFLAGS})
134
MESSAGE(STATUS "OK ${GTHREAD_LDFLAGS}")
135
ENDIF(NOT GTHREAD_CFLAGS)
136
#**************************************************
138
#**************************************************
139
MESSAGE(STATUS "<Checking for QT4>")
140
MESSAGE(STATUS "<******************************>")
142
message(status "<disabled per request>")
145
if(QT4_FOUND AND MINGW)
146
if(XMINGW) # Cross compile ?
147
SET(QTXM /rot2/qt_4.3)
149
SET(QT_QMAKE_EXECUTABLE qmake)
150
SET(QT_UIC_EXECUTABLE uic-qt4)
151
SET(QT_MOC_EXECUTABLE moc-qt4)
152
SET(QT_RCC_EXECUTABLE rcc)
153
SET(QT_QTGUI_LIBRARY QtGui4 ) # FIXME
154
SET(QT_QTCORE_LIBRARY QtCore4 ) # FIXME
156
SET(CMAKE_CXX_FLAGS "-I${QTXM}/include ${CMAKE_CXX_FLAGS}")
157
LINK_DIRECTORIES(${QTXM}/bin)
158
LINK_DIRECTORIES(${QTXM}/lib)
161
MESSAGE(STATUS "** MINGW ** OVERRIDING PATH FOR QT4 You may have to edit CMakeLists.txt!!!")
162
SET(QT_QMAKE_EXECUTABLE qmake)
163
SET(QT_UIC_EXECUTABLE uic)
164
SET(QT_MOC_EXECUTABLE moc)
165
SET(QT_RCC_EXECUTABLE rcc)
167
endif(QT4_FOUND AND MINGW)
171
include(ConfigureChecks.cmake)
174
CONFIGURE_FILE(config.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config.h)
176
include_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_SOURCE_DIR}/avidemux ${CMAKE_SOURCE_DIR}/avidemux/ADM_libraries)
177
include_directories(${CMAKE_SOURCE_DIR}/avidemux/ADM_libraries/ADM_utilities/ ${CMAKE_SOURCE_DIR}/avidemux/ADM_libraries/ADM_lavutil)
178
include_directories(${CMAKE_SOURCE_DIR}/avidemux/ADM_libraries/ADM_lavcodec )
180
#**********************************************
182
#**********************************************
183
add_definitions (-D_FILE_OFFSET_BITS=64 -D_LARGE_FILES)
184
add_definitions( -DHAVE_CONFIG_H )
186
ADD_SUBDIRECTORY(avidemux)
189
###############################
191
###############################
192
include(conf_summary)