Slightly rework the detection code for some packages.

Make compile flag detection work (needed some not so nice hacks).


git-svn-id: http://anonsvn.wireshark.org/wireshark/trunk@30129 f5534014-38df-0310-8fa8-9805f1628bb7
This commit is contained in:
jmayer 2009-09-24 20:42:08 +00:00
parent 5818cde41e
commit 57baf83899
5 changed files with 43 additions and 69 deletions

View File

@ -146,18 +146,19 @@ add_definitions(
-DNEW_PACKET_LIST
)
# todo
# This doesn't actually work because of some cache magic in
# CHECK_C_SOURCE_COMPILES
# Counterhack to work around some cache magic in CHECK_C_SOURCE_COMPILES
include(CheckCCompilerFlag)
foreach(WS_C_FLAG ${WIRESHARK_C_FLAGS})
message(STATUS "Flag pre: ${WS_C_FLAG}")
check_c_compiler_flag(${WS_C_FLAG} WS_C_FLAG_VALID)
if (${WS_C_FLAG_VALID})
add_definitions(${WS_C_FLAG})
set(C 0)
# Sigh: Have to use THIS_FLAG instead of ${F} for some reason
foreach(THIS_FLAG ${WIRESHARK_C_FLAGS})
set(F WS_C_FLAG_${C})
set(${F} ${THIS_FLAG})
set(V WS_C_FLAG_VALID${C})
check_c_compiler_flag(${${F}} ${V})
if (${${V}})
add_definitions(${${F}})
endif()
message(STATUS "Flag post ${WS_C_FLAG}: ${WS_C_FLAG_VALID}")
#set(WS_C_FLAG_VALID "" CACHE INTERNAL "Dummy" )
math(EXPR C "${C} + 1")
endforeach()
if(DISABLE_WERROR OR ENABLE_EXTRA_GCC_CHECKS)
@ -285,22 +286,6 @@ if(ENABLE_AIRPCAP)
set(HAVE_AIRPCAP 1)
endif()
#packaging
set(CPACK_PACKAGE_NAME wireshark)
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "capture packet")
set(CPACK_PACKAGE_VENDOR "wireshark")
set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README")
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
set(CPACK_PACKAGE_VERSION_MAJOR "1")
set(CPACK_PACKAGE_VERSION_MINOR "3")
set(CPACK_PACKAGE_VERSION_PATCH "0")
set(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
set(CPACK_SOURCE_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}")
set(CPACK_PACKAGE_INSTALL_DIRECTORY "/usr")
set(CPACK_GENERATOR "TGZ")
set(CPACK_SOURCE_GENERATOR "TGZ")
include(ConfigureChecks.cmake)
#Big or little endian ?
@ -373,6 +358,27 @@ endif()
configure_file(${CMAKE_SOURCE_DIR}/cmakeconfig.h.in ${CMAKE_BINARY_DIR}/config.h)
include(FeatureSummary)
#SET_FEATURE_INFO(NAME DESCRIPTION [URL [COMMENT] ]
PRINT_ENABLED_FEATURES()
PRINT_DISABLED_FEATURES()
#packaging
set(CPACK_PACKAGE_NAME wireshark)
set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "capture packet")
set(CPACK_PACKAGE_VENDOR "wireshark")
set(CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_CURRENT_SOURCE_DIR}/README")
set(CPACK_RESOURCE_FILE_LICENSE "${CMAKE_CURRENT_SOURCE_DIR}/COPYING")
set(CPACK_PACKAGE_VERSION_MAJOR "1")
set(CPACK_PACKAGE_VERSION_MINOR "3")
set(CPACK_PACKAGE_VERSION_PATCH "0")
set(CPACK_PACKAGE_VERSION "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}.${CPACK_PACKAGE_VERSION_PATCH}")
set(CPACK_SOURCE_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}")
set(CPACK_PACKAGE_INSTALL_DIRECTORY "/usr")
set(CPACK_GENERATOR "TGZ")
set(CPACK_SOURCE_GENERATOR "TGZ")
link_directories(
gtk
codecs

View File

@ -22,13 +22,8 @@ FIND_PROGRAM(HTML_VIEWER_EXECUTABLE
/sbin
)
IF (NOT HTML_VIEWER_EXECUTABLE)
MESSAGE(FATAL_ERROR "HTML_VIEWER not found - aborting")
ELSE ()
SET (HTML_VIEWER_FOUND "YES")
MESSAGE(STATUS "Found HTML_VIEWER: ${HTML_VIEWER_EXECUTABLE}")
ENDIF ()
INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(HtmlViewer DEFAULT_MSG HTML_VIEWER_EXECUTABLE)
# For compat with configure
SET(HTML_VIEWER ${HTML_VIEWER_EXECUTABLE})

View File

@ -18,23 +18,14 @@ FIND_PROGRAM(LEX_EXECUTABLE
/sbin
)
INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(LEX DEFAULT_MSG LEX_EXECUTABLE)
MARK_AS_ADVANCED(LEX_EXECUTABLE)
# flex a .l file
# search flex
MACRO(FIND_LEX)
IF(NOT LEX_EXECUTABLE)
FIND_PROGRAM(LEX_EXECUTABLE flex)
IF (NOT LEX_EXECUTABLE)
MESSAGE(FATAL_ERROR "flex not found - aborting")
ENDIF (NOT LEX_EXECUTABLE)
ENDIF(NOT LEX_EXECUTABLE)
ENDMACRO(FIND_LEX)
MACRO(ADD_LEX_FILES _sources )
FIND_LEX()
FOREACH (_current_FILE ${ARGN})
GET_FILENAME_COMPONENT(_in ${_current_FILE} ABSOLUTE)
GET_FILENAME_COMPONENT(_basename ${_current_FILE} NAME_WE)
@ -51,7 +42,6 @@ MACRO(ADD_LEX_FILES _sources )
${_in}
DEPENDS ${_in}
)
SET(${_sources} ${${_sources}} ${_outc} )
ENDFOREACH (_current_FILE)
ENDMACRO(ADD_LEX_FILES)

View File

@ -18,15 +18,8 @@ FIND_PROGRAM(SH_EXECUTABLE
/sbin
)
INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(SH DEFAULT_MSG SH_EXECUTABLE)
MARK_AS_ADVANCED(SH_EXECUTABLE)
# search sh
MACRO(FIND_SH)
IF(NOT SH_EXECUTABLE)
FIND_PROGRAM(SH_EXECUTABLE sh)
IF (NOT SH_EXECUTABLE)
MESSAGE(FATAL_ERROR "sh not found - aborting")
ENDIF (NOT SH_EXECUTABLE)
ENDIF(NOT SH_EXECUTABLE)
ENDMACRO(FIND_SH)

View File

@ -19,21 +19,12 @@ FIND_PROGRAM(YACC_EXECUTABLE
/sbin
)
INCLUDE(FindPackageHandleStandardArgs)
FIND_PACKAGE_HANDLE_STANDARD_ARGS(YACC DEFAULT_MSG YACC_EXECUTABLE)
MARK_AS_ADVANCED(YACC_EXECUTABLE)
# search bison/yacc
MACRO(FIND_YACC)
IF(NOT YACC_EXECUTABLE)
FIND_PROGRAM(YACC_EXECUTABLE bison)
IF (NOT YACC_EXECUTABLE)
MESSAGE(FATAL_ERROR "bison/yacc not found - aborting")
ENDIF (NOT YACC_EXECUTABLE)
ENDIF(NOT YACC_EXECUTABLE)
ENDMACRO(FIND_YACC)
MACRO(ADD_YACC_FILES _sources )
FIND_YACC()
FOREACH (_current_FILE ${ARGN})
GET_FILENAME_COMPONENT(_in ${_current_FILE} ABSOLUTE)
GET_FILENAME_COMPONENT(_basename ${_current_FILE} NAME_WE)
@ -49,7 +40,6 @@ MACRO(ADD_YACC_FILES _sources )
${_in}
DEPENDS ${_in}
)
SET(${_sources} ${${_sources}} ${_out} )
ENDFOREACH (_current_FILE)
ENDMACRO(ADD_YACC_FILES)