Skip to content

Commit

Permalink
[gettext] Set includes correctly in target (#5463)
Browse files Browse the repository at this point in the history
  • Loading branch information
Sean Warren authored and Rastaban committed Feb 27, 2019
1 parent 3a7c94a commit 68039e4
Show file tree
Hide file tree
Showing 2 changed files with 41 additions and 31 deletions.
70 changes: 40 additions & 30 deletions ports/gettext/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,6 @@ project(libintl C)

find_package(unofficial-iconv REQUIRED)

include_directories(${CMAKE_CURRENT_BINARY_DIR}/config .)

set(CMAKE_STATIC_LIBRARY_PREFIX)
set(CMAKE_SHARED_LIBRARY_PREFIX)

Expand All @@ -23,27 +21,28 @@ else()
set(HAVE_ASPRINTF 1)
set(HAVE_WPRINTF 1)
set(HAVE_NEWLOCALE 1)
add_definitions(-DHAVE_NEWLOCALE=1)

set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
set(THREADS_PREFER_PTHREAD_FLAG TRUE)
find_package(Threads REQUIRED)
if(NOT CMAKE_USE_PTHREADS_INIT)
message(FATAL_ERROR "Error: Only pthreads is currently supported.")
endif()

include(CheckFunctionExists)
include(CheckIncludeFiles)

if(APPLE)
set(HAVE_CFLOCALECOPYCURRENT 1)
set(HAVE_CFPREFERENCESCOPYAPPVALUE 1)
endif()
check_function_exists(dcgettext HAVE_DCGETTEXT)
check_include_files(features.h HAVE_FEATURES_H)
check_function_exists(gettext HAVE_GETTEXT)
check_include_files(mach-o/dyld.h HAVE_MACH_O_DYLD_H)
check_function_exists(mempcpy HAVE_MEMPCPY)
add_definitions(-DHAVE_NEWLOCALE=1)
add_definitions(-DHAVE_NEWLOCALE=1)

set(CMAKE_THREAD_PREFER_PTHREAD TRUE)
set(THREADS_PREFER_PTHREAD_FLAG TRUE)
find_package(Threads REQUIRED)
if(NOT CMAKE_USE_PTHREADS_INIT)
message(FATAL_ERROR "Error: Only pthreads is currently supported.")
endif()

include(CheckFunctionExists)
include(CheckIncludeFiles)

if(APPLE)
set(HAVE_CFLOCALECOPYCURRENT 1)
set(HAVE_CFPREFERENCESCOPYAPPVALUE 1)
endif()
check_function_exists(dcgettext HAVE_DCGETTEXT)
check_include_files(features.h HAVE_FEATURES_H)
check_function_exists(gettext HAVE_GETTEXT)
check_include_files(mach-o/dyld.h HAVE_MACH_O_DYLD_H)
check_function_exists(mempcpy HAVE_MEMPCPY)
check_include_files(xlocale.h HAVE_XLOCALE_H)

configure_file(intl/libgnuintl.in.h config/libgnuintl.h @ONLY)
Expand Down Expand Up @@ -106,13 +105,19 @@ add_definitions("-DBUILDING_LIBINTL -DIN_LIBINTL -DENABLE_RELOCATABLE=1 -DIN_LIB
add_definitions("-DNO_XMALLOC -Dset_relocation_prefix=libintl_set_relocation_prefix -Drelocate=libintl_relocate -DDEPENDS_ON_LIBICONV=1 -DHAVE_CONFIG_H -D_CRT_SECURE_NO_WARNINGS")

add_library(libintl ${SOURCES})
target_link_libraries(libintl PRIVATE unofficial::iconv::libcharset unofficial::iconv::libiconv)
if(APPLE)
find_library(COREFOUNDATION_LIBRARY CoreFoundation REQUIRED)
target_link_libraries(libintl PRIVATE ${COREFOUNDATION_LIBRARY})
endif()
if(NOT WIN32)
target_link_libraries(libintl PRIVATE Threads::Threads)
target_link_libraries(libintl PRIVATE unofficial::iconv::libcharset unofficial::iconv::libiconv)

target_include_directories(libintl PUBLIC
$<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}/config>
$<INSTALL_INTERFACE:include>
)

if(APPLE)
find_library(COREFOUNDATION_LIBRARY CoreFoundation REQUIRED)
target_link_libraries(libintl PRIVATE ${COREFOUNDATION_LIBRARY})
endif()
if(NOT WIN32)
target_link_libraries(libintl PRIVATE Threads::Threads)
endif()

install(TARGETS libintl
Expand All @@ -135,3 +140,8 @@ find_dependency(unofficial-iconv)
find_dependency(Threads)
include(\${CMAKE_CURRENT_LIST_DIR}/unofficial-gettext-targets.cmake)
")

install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/unofficial-gettext-config.cmake
DESTINATION share/unofficial-gettext
)
2 changes: 1 addition & 1 deletion ports/gettext/CONTROL
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Source: gettext
Version: 0.19-7
Version: 0.19-8
Description: The GNU gettext utilities are a set of tools that provides a framework to help other GNU packages produce multi-lingual messages. Provides libintl.
Build-Depends: libiconv

0 comments on commit 68039e4

Please sign in to comment.