Skip to content
Snippets Groups Projects
Commit 5684a59f authored by Adam Wardynski's avatar Adam Wardynski
Browse files

Add ANTLR and ICU as project dependencies

parent 01a86bb6
Branches
No related merge requests found
# Finds the ANother Tool for Language Recognition (ANTLR) Library
#
# ANTLR_FOUND - True if ANTLR has been found.
#
# ANTLR_INCLUDE_DIR - Directory to include to get ANTLR headers
#
# ANTLR_LIBRARY - libraries to link
if (ANTLR_INCLUDE_DIR AND ANTLR_LIBRARY)
# in cache already
set(ANTLR_FOUND TRUE)
else (ANTLR_INCLUDE_DIR AND ANTLR_LIBRARY)
# Look for the header file.
find_path(
ANTLR_INCLUDE_DIR
NAMES antlr/ANTLRUtil.hpp
DOC "Include directory for the ANTLR library")
mark_as_advanced(ANTLR_INCLUDE_DIR)
# Look for the library.
find_library(
ANTLR_LIBRARY
NAMES antlr
DOC "Library to link against for ANTLR")
mark_as_advanced(ANTLR_LIBRARY)
if (ANTLR_INCLUDE_DIR AND ANTLR_LIBRARY)
set(ANTLR_FOUND TRUE)
endif (ANTLR_INCLUDE_DIR AND ANTLR_LIBRARY)
endif (ANTLR_INCLUDE_DIR AND ANTLR_LIBRARY)
if (ANTLR_FOUND)
if( NOT ANTLR_FIND_QUIETLY )
message( STATUS "Found ANTLR header files in ${ANTLR_INCLUDE_DIR}")
message( STATUS "Found ANTLR library: ${ANTLR_LIBRARY}")
endif ( NOT ANTLR_FIND_QUIETLY )
else (ANTLR_FOUND)
if (ANTLR_FIND_REQUIRED)
message( FATAL_ERROR "Could not find ANTLR" )
else (ANTLR_FIND_REQUIRED)
message( STATUS "Optional package ANTLR was not found" )
endif (ANTLR_FIND_REQUIRED)
endif (ANTLR_FOUND)
# Finds the International Components for Unicode (ICU) Library
#
# ICU_FOUND - True if ICU found.
# ICU_I18N_FOUND - True if ICU's internationalization library found.
# ICU_INCLUDE_DIRS - Directory to include to get ICU headers
# Note: always include ICU headers as, e.g.,
# unicode/utypes.h
# ICU_LIBRARIES - Libraries to link against for the common ICU
# ICU_I18N_LIBRARIES - Libraries to link against for ICU internationaliation
# (note: in addition to ICU_LIBRARIES)
MARK_AS_ADVANCED(ICU_DIR)
# Look for the header file.
find_path(
ICU_INCLUDE_DIR
NAMES unicode/utypes.h
DOC "Include directory for the ICU library")
mark_as_advanced(ICU_INCLUDE_DIR)
# Look for the library.
find_library(
ICU_LIBRARY
NAMES icuuc cygicuuc cygicuuc32
DOC "Libraries to link against for the common parts of ICU")
mark_as_advanced(ICU_LIBRARY)
# Copy the results to the output variables.
if(ICU_INCLUDE_DIR AND ICU_LIBRARY)
set(ICU_FOUND 1)
set(ICU_LIBRARIES ${ICU_LIBRARY})
set(ICU_INCLUDE_DIRS ${ICU_INCLUDE_DIR})
set(ICU_VERSION 0)
set(ICU_MAJOR_VERSION 0)
set(ICU_MINOR_VERSION 0)
FILE(READ "${ICU_INCLUDE_DIR}/unicode/uversion.h" _ICU_VERSION_CONENTS)
STRING(REGEX REPLACE ".*#define U_ICU_VERSION_MAJOR_NUM ([0-9]+).*" "\\1" ICU_MAJOR_VERSION "${_ICU_VERSION_CONENTS}")
STRING(REGEX REPLACE ".*#define U_ICU_VERSION_MINOR_NUM ([0-9]+).*" "\\1" ICU_MINOR_VERSION "${_ICU_VERSION_CONENTS}")
set(ICU_VERSION "${ICU_MAJOR_VERSION}.${ICU_MINOR_VERSION}")
# Look for the ICU internationalization libraries
find_library(
ICU_I18N_LIBRARY
NAMES icuin icui18n cygicuin cygicuin32
DOC "Libraries to link against for ICU internationalization")
mark_as_advanced(ICU_I18N_LIBRARY)
if (ICU_I18N_LIBRARY)
set(ICU_I18N_FOUND 1)
set(ICU_I18N_LIBRARIES ${ICU_I18N_LIBRARY})
else (ICU_I18N_LIBRARY)
set(ICU_I18N_FOUND 0)
set(ICU_I18N_LIBRARIES)
endif (ICU_I18N_LIBRARY)
else(ICU_INCLUDE_DIR AND ICU_LIBRARY)
set(ICU_FOUND 0)
set(ICU_I18N_FOUND 0)
set(ICU_LIBRARIES)
set(ICU_I18N_LIBRARIES)
set(ICU_INCLUDE_DIRS)
set(ICU_VERSION)
set(ICU_MAJOR_VERSION)
set(ICU_MINOR_VERSION)
endif(ICU_INCLUDE_DIR AND ICU_LIBRARY)
IF(ICU_FOUND)
IF( NOT ICU_FIND_QUIETLY )
MESSAGE( STATUS "Found ICU header files in ${ICU_INCLUDE_DIRS}")
MESSAGE( STATUS "Found ICU libraries: ${ICU_LIBRARIES}")
ENDIF( NOT ICU_FIND_QUIETLY )
ELSE(ICU_FOUND)
IF(ICU_FIND_REQUIRED)
MESSAGE( FATAL_ERROR "Could not find ICU" )
ELSE(ICU_FIND_REQUIRED)
MESSAGE( STATUS "Optional package ICU was not found" )
ENDIF(ICU_FIND_REQUIRED)
ENDIF(ICU_FOUND)
......@@ -13,6 +13,14 @@ set(LIBS ${LIBS} ${PwrUtils_LIBRARY})
link_directories(${Boost_LIBRARY_DIRS})
set(LIBS ${LIBS} ${Boost_LIBRARIES})
find_package(ICU REQUIRED)
include_directories(${ICU_INCLUDE_DIR})
set(LIBS ${LIBS} ${ICU_LIBRARIES} ${ICU_I18N_LIBRARIES})
find_package(ANTLR REQUIRED)
include_directories(${ANTLR_INCLUDE_DIR})
set(LIBS ${LIBS} ${ANTLR_LIBRARY})
SET(libwccl_STAT_SRC
exception.cpp
ops/and.cpp
......
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment