diff --git a/CMakeLists.txt b/CMakeLists.txt index 862ca31..b459f5f 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -3,6 +3,8 @@ cmake_minimum_required (VERSION 2.8.7) set(LIB_NAME tidy) +set(LIBTIDY_DESCRIPTION "${LIB_NAME} - HTML syntax checker") +set(LIBTIDY_URL "http://www.html-tidy.org") project (${LIB_NAME}) @@ -203,7 +205,7 @@ if (NOT BIN_INSTALL_DIR) endif () if (NOT INCLUDE_INSTALL_DIR) - set(INCLUDE_INSTALL_DIR include) + set(INCLUDE_INSTALL_DIR include/${LIB_NAME}) endif () # Always build the STATIC library @@ -371,7 +373,7 @@ else () endif () set(CPACK_PACKAGE_NAME "${LIB_NAME}") -set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${LIB_NAME} - HTML syntax checker") +set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${LIBTIDY_DESCRIPTION}") set(CPACK_PACKAGE_VENDOR "HTML Tidy Advocacy Community Group") set(CPACK_PACKAGE_CONTACT "maintainer@htacg.org") @@ -387,7 +389,7 @@ set(CPACK_RESOURCE_FILE_WELCOME "${CMAKE_CURRENT_SOURCE_DIR}/README/README.html" ## debian config set(CPACK_DEBIAN_PACKAGE_MAINTAINER ${CPACK_PACKAGE_CONTACT}) -set(CPACK_DEBIAN_PACKAGE_HOMEPAGE "http://www.html-tidy.org/") +set(CPACK_DEBIAN_PACKAGE_HOMEPAGE ${LIBTIDY_URL}) #set(CPACK_DEBIAN_PACKAGE_DEPENDS "libc") set(CPACK_DEBIAN_PACKAGE_SECTION "Libraries") set(CPACK_SOURCE_IGNORE_FILES @@ -405,4 +407,15 @@ endif () include(CPack) +# pkg-config +configure_file( + "${CMAKE_CURRENT_SOURCE_DIR}/${LIB_NAME}.pc.cmake.in" + "${CMAKE_CURRENT_BINARY_DIR}/${LIB_NAME}.pc" + @ONLY + ) +install(FILES + "${CMAKE_CURRENT_BINARY_DIR}/${LIB_NAME}.pc" + DESTINATION "${LIB_INSTALL_DIR}/pkgconfig" + ) + # eof diff --git a/README/BUILD.md b/README/BUILD.md index 6ae5bbb..e427752 100644 --- a/README/BUILD.md +++ b/README/BUILD.md @@ -40,6 +40,14 @@ If you do **not** need the tidy library built as a 'shared' (DLL) library, then See the `CMakeLists.txt` file for other CMake **options** offered. +## Build the tidy packages + + 1. `cd build/cmake` + + 2. `cmake ../.. -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_PREFIX=/usr` + + 3. Unix/OS X: `make package` + ## Build PHP with the tidy-html5 library Due to API changes in the PHP source, `buffio.h` needs to be renamed to `tidybuffio.h` in the file `ext/tidy/tidy.c` in PHP's source. diff --git a/build/cmake/.gitignore b/build/cmake/.gitignore index 2539213..2b83d50 100644 --- a/build/cmake/.gitignore +++ b/build/cmake/.gitignore @@ -30,5 +30,6 @@ _CPack_Packages/* tidy libtidy* tidy1.xsl +tidy.pc *.vcproj diff --git a/build/cmake/cmake-clean.txt b/build/cmake/cmake-clean.txt index 36eb531..c57f3ae 100644 --- a/build/cmake/cmake-clean.txt +++ b/build/cmake/cmake-clean.txt @@ -27,4 +27,4 @@ libtidy.so.5.0.0 tidy.1 _CPack_Packages tidy1.xsl - +tidy.pc diff --git a/tidy.pc.cmake.in b/tidy.pc.cmake.in new file mode 100644 index 0000000..7d819f1 --- /dev/null +++ b/tidy.pc.cmake.in @@ -0,0 +1,11 @@ +prefix=@CMAKE_INSTALL_PREFIX@ +exec_prefix=${prefix} +libdir=${exec_prefix}/@LIB_INSTALL_DIR@ +includedir=${prefix}/@INCLUDE_INSTALL_DIR@ + +Name: @LIB_NAME@ +Description: @LIBTIDY_DESCRIPTION@ +URL: @LIBTIDY_URL@ +Version: @LIBTIDY_VERSION@ +Libs: -L${libdir} -l@LIB_NAME@ +Cflags: -I${includedir}