$OpenBSD: patch-CMakeLists_txt,v 1.15 2013/05/22 15:05:50 dcoppa Exp $

These auto-generated (db2man.xsl) manpages contain a mixture of ISO
latin-1 characters and numerical HTML entities that neither mandoc
nor groff can fully understand: do not install them.

Fix usage of -export-dynamic

--- CMakeLists.txt.orig	Mon Apr  1 13:44:46 2013
+++ CMakeLists.txt	Tue May 21 07:33:13 2013
@@ -79,7 +79,6 @@ set(AWE_MAN_SRCS
     ${SOURCE_DIR}/manpages/awesome.1.txt
     ${SOURCE_DIR}/manpages/awesome-client.1.txt
     ${SOURCE_DIR}/manpages/awesomerc.5.txt)
-set(AWE_MAN_LANGS it es fr de ru)
 
 # Don't strip RPATH if compiling on Solaris
 if (${CMAKE_SYSTEM_NAME} MATCHES "SunOS")
@@ -91,11 +90,11 @@ endif()
 add_executable(${PROJECT_AWE_NAME}
     ${AWE_SRCS})
 
-# FreeBSD requires dynamic linking
-if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
+# FreeBSD and OpenBSD require dynamic linking
+if(CMAKE_SYSTEM_NAME MATCHES "FreeBSD" OR CMAKE_SYSTEM_NAME MATCHES "OpenBSD")
     set_target_properties(${PROJECT_AWE_NAME}
         PROPERTIES
-        LINK_FLAGS -export-dynamic)
+        LINK_FLAGS -Wl,--export-dynamic)
 endif()
 
 target_link_libraries(${PROJECT_AWE_NAME}
@@ -103,10 +102,6 @@ target_link_libraries(${PROJECT_AWE_NAME}
     ${AWESOME_REQUIRED_LDFLAGS}
     ${AWESOME_OPTIONAL_LDFLAGS})
 
-# check for lgi and the needed gobject introspection files
-add_custom_target(lgi-check ALL
-    COMMAND ${SOURCE_DIR}/build-utils/lgi-check.sh)
-
 # atoms
 file(MAKE_DIRECTORY ${BUILD_DIR}/common)
 add_custom_command(
@@ -155,68 +150,45 @@ if(GENERATE_MANPAGES)
     if(NOT BUILD_DIR STREQUAL SOURCE_DIR)
         file(MAKE_DIRECTORY ${BUILD_DIR}/manpages)
     endif()
+    foreach(txtfile ${AWE_MAN_SRCS})
+        string(REGEX REPLACE ".txt\$" ".xml" xmlfile ${txtfile})
+        string(REPLACE ${SOURCE_DIR}
+                       ${BUILD_DIR} xmlfile ${xmlfile})
+        string(REGEX REPLACE ".xml\$" ".gz" gzfile ${xmlfile})
+        string(REGEX REPLACE ".gz\$" "" manfile ${gzfile})
 
-    # add the default translation to the list of languages
-    set(AWE_MAN_LANGS default ${AWE_MAN_LANGS})
+        add_custom_command(
+            COMMAND ${ASCIIDOC_EXECUTABLE} -d manpage -b docbook -o ${xmlfile} - < ${txtfile}
+            WORKING_DIRECTORY ${BUILD_DIR}/manpages
+            OUTPUT  ${xmlfile}
+            DEPENDS ${txtfile}
+            VERBATIM)
+        add_custom_command(
+            COMMAND ${XMLTO_EXECUTABLE} --skip-validation man ${xmlfile}
+            OUTPUT  ${manfile}
+            WORKING_DIRECTORY ${BUILD_DIR}/manpages
+            DEPENDS ${xmlfile})
 
-    foreach(lang ${AWE_MAN_LANGS})
-
-        foreach(txtfile ${AWE_MAN_SRCS})
-            # figure the base name of the file (ie "awesome.1")
-            GET_FILENAME_COMPONENT(tmpname ${txtfile} NAME)
-            string(REGEX REPLACE ".txt\$" "" basename ${tmpname})
-
-            # figure the relative path of the file
-            GET_FILENAME_COMPONENT(tmppath ${txtfile} PATH)
-            string(REPLACE ${SOURCE_DIR}/ "" relpath ${tmppath})
-
-            # figure the manpage section to install to from filename
-            string(REGEX REPLACE "^.*\\.([0-9])$" "\\1" section ${basename})
-
-            # construct the language specific versions of the basename and path
-            if (lang STREQUAL default)
-                set(basename2 ${basename})
-                set(relpath2 ${relpath}/man${section})
-            else()
-                set(basename2 ${basename}.${lang})
-                set(relpath2 ${relpath}/${lang}/man${section})
-            endif()
-
-            # create the build directory (if it does not exist)
-            file(MAKE_DIRECTORY ${BUILD_DIR}/${relpath2})
-
-            # set the final filenames
-            set(txtfile ${SOURCE_DIR}/${relpath}/${basename2}.txt)
-            set(xmlfile ${BUILD_DIR}/${relpath2}/${basename}.xml)
-            set(gzfile  ${BUILD_DIR}/${relpath2}/${basename}.gz)
-            set(manfile ${BUILD_DIR}/${relpath2}/${basename})
-
+        if(COMPRESS_MANPAGES)
             add_custom_command(
-                COMMAND ${ASCIIDOC_EXECUTABLE} -d manpage -b docbook -o ${xmlfile} - < ${txtfile}
-                WORKING_DIRECTORY ${BUILD_DIR}/${relpath2}
-                OUTPUT  ${xmlfile}
-                DEPENDS ${txtfile}
+                COMMAND ${GZIP_EXECUTABLE} < ${manfile} > ${gzfile}
+                OUTPUT  ${gzfile}
+                WORKING_DIRECTORY ${BUILD_DIR}/manpages
+                DEPENDS ${manfile}
                 VERBATIM)
-            add_custom_command(
-                COMMAND ${XMLTO_EXECUTABLE} man ${xmlfile}
-                OUTPUT  ${manfile}
-                WORKING_DIRECTORY ${BUILD_DIR}/${relpath2}
-                DEPENDS ${xmlfile})
 
-            if(COMPRESS_MANPAGES)
-                add_custom_command(
-                    COMMAND ${GZIP_EXECUTABLE} < ${manfile} > ${gzfile}
-                    OUTPUT  ${gzfile}
-                    WORKING_DIRECTORY ${BUILD_DIR}/${relpath2}
-                    DEPENDS ${manfile}
-                    VERBATIM)
+            set(MAN_FILES ${MAN_FILES} ${gzfile})
+        else()
+            set(MAN_FILES ${MAN_FILES} ${manfile})
+        endif()
 
-                set(MAN_FILES ${MAN_FILES} ${gzfile})
-            else()
-                set(MAN_FILES ${MAN_FILES} ${manfile})
-            endif()
-        endforeach()
-
+        # figure out in what section to install to from filename
+        string(REGEX REPLACE "^.*\\.([0-9])\\.gz\$" "\\1" section ${gzfile})
+        if(COMPRESS_MANPAGES)
+            set(AWE_MAN${section}_FILES ${AWE_MAN${section}_FILES} ${gzfile})
+        else()
+            set(AWE_MAN${section}_FILES ${AWE_MAN${section}_FILES} ${manfile})
+        endif()
     endforeach()
 
     add_custom_target(man ALL DEPENDS ${MAN_FILES})
@@ -304,13 +276,8 @@ install(DIRECTORY ${BUILD_DIR}/lib DESTINATION ${AWESO
 install(FILES ${AWE_CONF_FILE_DEFAULT} DESTINATION ${AWESOME_SYSCONFDIR}
         RENAME ${AWE_CONF_FILE})
 if(GENERATE_MANPAGES)
-    if(COMPRESS_MANPAGES)
-        set(regex "\\.(xml|txt|[0-9])$")
-    else()
-        set(regex "\\.(xml|txt|gz)$")
-    endif()
-    install(DIRECTORY ${BUILD_DIR}/${relpath}/ DESTINATION ${AWESOME_MAN_PATH}
-            REGEX ${regex} EXCLUDE )
+    install(FILES ${AWE_MAN1_FILES} DESTINATION ${AWESOME_MAN_PATH}/man1)
+    install(FILES ${AWE_MAN5_FILES} DESTINATION ${AWESOME_MAN_PATH}/man5)
 endif()
 install(DIRECTORY ${AWE_ICON_DIR} DESTINATION ${AWESOME_DATA_PATH})
 install(DIRECTORY ${BUILD_DIR}/themes DESTINATION ${AWESOME_DATA_PATH}
