vcpkg/ports/gl2ps/separate-static-dynamic-build.patch
2017-08-15 12:24:12 -07:00

215 lines
8.1 KiB
Diff

diff --git "a/CMakeLists.txt" "b/CMakeLists.txt"
index 40da57e..39acf6b 100644
--- "a/CMakeLists.txt"
+++ "b/CMakeLists.txt"
@@ -1,34 +1,34 @@
# GL2PS, an OpenGL to PostScript Printing Library
# Copyright (C) 1999-2017 C. Geuzaine
-#
+#
# This program is free software; you can redistribute it and/or
# modify it under the terms of either:
-#
+#
# a) the GNU Library General Public License as published by the Free
# Software Foundation, either version 2 of the License, or (at your
# option) any later version; or
-#
+#
# b) the GL2PS License as published by Christophe Geuzaine, either
# version 2 of the License, or (at your option) any later version.
-#
+#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See either
# the GNU Library General Public License or the GL2PS License for
# more details.
-#
+#
# You should have received a copy of the GNU Library General Public
# License along with this library in the file named "COPYING.LGPL";
# if not, write to the Free Software Foundation, Inc., 675 Mass Ave,
# Cambridge, MA 02139, USA.
-#
+#
# You should have received a copy of the GL2PS License with this
# library in the file named "COPYING.GL2PS"; if not, I will be glad
# to provide one.
-#
+#
# For the latest info about gl2ps and a full list of contributors,
# see http://www.geuz.org/gl2ps/.
-#
+#
# Please report all bugs and problems to <gl2ps@geuz.org>.
cmake_minimum_required(VERSION 2.4 FATAL_ERROR)
@@ -55,8 +55,8 @@ set(GL2PS_EXTRA_VERSION "" CACHE STRING "GL2PS extra version string")
set(GL2PS_VERSION "${GL2PS_MAJOR_VERSION}.${GL2PS_MINOR_VERSION}")
set(GL2PS_VERSION "${GL2PS_VERSION}.${GL2PS_PATCH_VERSION}${GL2PS_EXTRA_VERSION}")
-execute_process(COMMAND date "+%Y%m%d" OUTPUT_VARIABLE DATE
- OUTPUT_STRIP_TRAILING_WHITESPACE)
+execute_process(COMMAND date "+%Y%m%d" OUTPUT_VARIABLE DATE
+OUTPUT_STRIP_TRAILING_WHITESPACE)
if(NOT DATE)
set(DATE "unknown")
endif(NOT DATE)
@@ -113,84 +113,93 @@ endif(MATH_LIBRARY)
include_directories(${EXTERNAL_INCLUDES})
-if(OPENGL_FOUND)
- add_library(lib STATIC gl2ps.c gl2ps.h)
- set_target_properties(lib PROPERTIES OUTPUT_NAME gl2ps)
-
- add_library(shared SHARED gl2ps.c gl2ps.h)
- target_link_libraries(shared ${EXTERNAL_LIBRARIES})
- set_target_properties(shared PROPERTIES OUTPUT_NAME gl2ps)
- set_target_properties(shared PROPERTIES
- VERSION ${GL2PS_MAJOR_VERSION}.${GL2PS_MINOR_VERSION}.${GL2PS_PATCH_VERSION}
- SOVERSION ${GL2PS_MAJOR_VERSION})
- if(MSVC)
- set_target_properties(shared PROPERTIES COMPILE_FLAGS "-DGL2PSDLL -DGL2PSDLL_EXPORTS")
- endif(MSVC)
-
- install(TARGETS lib shared DESTINATION lib${LIB_SUFFIX})
-endif(OPENGL_FOUND)
+
+add_library(gl2ps gl2ps.c gl2ps.h)
+target_link_libraries(gl2ps ${EXTERNAL_LIBRARIES})
+set_target_properties(gl2ps PROPERTIES
+ VERSION ${GL2PS_MAJOR_VERSION}.${GL2PS_MINOR_VERSION}.${GL2PS_PATCH_VERSION}
+SOVERSION ${GL2PS_MAJOR_VERSION})
+
+if(BUILD_SHARED_LIBS)
+ target_compile_definitions(gl2ps PRIVATE -DGL2PSDLL -DGL2PSDLL_EXPORTS)
+endif()
+
+install(
+ TARGETS gl2ps
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib
+)
+
if(WIN32)
- set(GL2PS_DOC .)
+ set(GL2PS_DOC share/gl2ps/docs)
else(WIN32)
set(GL2PS_DOC share/doc/gl2ps)
endif(WIN32)
+if(NOT DISABLE_INSTALL_HEADERS)
install(FILES gl2ps.h DESTINATION include)
install(FILES ${CMAKE_SOURCE_DIR}/README.txt DESTINATION ${GL2PS_DOC})
install(FILES ${CMAKE_SOURCE_DIR}/COPYING.LGPL DESTINATION ${GL2PS_DOC})
install(FILES ${CMAKE_SOURCE_DIR}/COPYING.GL2PS DESTINATION ${GL2PS_DOC})
install(FILES ${CMAKE_SOURCE_DIR}/gl2psTest.c DESTINATION ${GL2PS_DOC})
install(FILES ${CMAKE_SOURCE_DIR}/gl2psTestSimple.c DESTINATION ${GL2PS_DOC})
+endif()
+
+if(BUILD_TESTS)
+
+ if(GLUT_FOUND)
+ add_executable(gl2psTest gl2psTest.c)
+ target_link_libraries(gl2psTest gl2ps ${EXTERNAL_LIBRARIES})
+ add_executable(gl2psTestSimple gl2psTestSimple.c)
+ target_link_libraries(gl2psTestSimple gl2ps ${EXTERNAL_LIBRARIES})
+ endif(GLUT_FOUND)
+
+ find_package(LATEX)
+ if(PDFLATEX_COMPILER)
+ add_custom_command(OUTPUT gl2ps.pdf DEPENDS gl2ps.tex
+ COMMAND ${PDFLATEX_COMPILER} ARGS ${CMAKE_SOURCE_DIR}/gl2ps.tex
+ COMMAND ${PDFLATEX_COMPILER} ARGS ${CMAKE_SOURCE_DIR}/gl2ps.tex
+ COMMAND ${PDFLATEX_COMPILER} ARGS ${CMAKE_SOURCE_DIR}/gl2ps.tex
+ COMMAND ${CMAKE_COMMAND} -E copy gl2ps.pdf ${CMAKE_SOURCE_DIR})
+ add_custom_target(pdf ALL DEPENDS gl2ps.pdf)
+ install(FILES gl2ps.pdf DESTINATION ${GL2PS_DOC})
+ find_program(TTH tth)
+ if(TTH)
+ add_custom_command(OUTPUT gl2ps.html DEPENDS gl2ps.tex gl2ps.pdf
+ COMMAND ${CMAKE_COMMAND} -E copy_if_different
+ ${CMAKE_SOURCE_DIR}/gl2ps.tex ${CMAKE_BINARY_DIR}/gl2ps.tex
+ COMMAND ${TTH} ARGS -w1 gl2ps.tex)
+ add_custom_target(html DEPENDS gl2ps.html)
+ endif(TTH)
+ endif(PDFLATEX_COMPILER)
+
+endif()
-if(GLUT_FOUND)
- add_executable(gl2psTest WIN32 gl2psTest.c)
- target_link_libraries(gl2psTest lib ${EXTERNAL_LIBRARIES})
- add_executable(gl2psTestSimple WIN32 gl2psTestSimple.c)
- target_link_libraries(gl2psTestSimple lib ${EXTERNAL_LIBRARIES})
-endif(GLUT_FOUND)
-
-find_package(LATEX)
-if(PDFLATEX_COMPILER)
- add_custom_command(OUTPUT gl2ps.pdf DEPENDS gl2ps.tex
- COMMAND ${PDFLATEX_COMPILER} ARGS ${CMAKE_SOURCE_DIR}/gl2ps.tex
- COMMAND ${PDFLATEX_COMPILER} ARGS ${CMAKE_SOURCE_DIR}/gl2ps.tex
- COMMAND ${PDFLATEX_COMPILER} ARGS ${CMAKE_SOURCE_DIR}/gl2ps.tex
- COMMAND ${CMAKE_COMMAND} -E copy gl2ps.pdf ${CMAKE_SOURCE_DIR})
- add_custom_target(pdf ALL DEPENDS gl2ps.pdf)
- install(FILES gl2ps.pdf DESTINATION ${GL2PS_DOC})
- find_program(TTH tth)
- if(TTH)
- add_custom_command(OUTPUT gl2ps.html DEPENDS gl2ps.tex gl2ps.pdf
- COMMAND ${CMAKE_COMMAND} -E copy_if_different
- ${CMAKE_SOURCE_DIR}/gl2ps.tex ${CMAKE_BINARY_DIR}/gl2ps.tex
- COMMAND ${TTH} ARGS -w1 gl2ps.tex)
- add_custom_target(html DEPENDS gl2ps.html)
- endif(TTH)
-endif(PDFLATEX_COMPILER)
set(CPACK_PACKAGE_VENDOR "Christophe Geuzaine")
set(CPACK_PACKAGE_VERSION_MAJOR ${GL2PS_MAJOR_VERSION})
set(CPACK_PACKAGE_VERSION_MINOR ${GL2PS_MINOR_VERSION})
set(CPACK_PACKAGE_VERSION_PATCH ${GL2PS_PATCH_VERSION})
set(CPACK_PACKAGE_DESCRIPTION_FILE ${CMAKE_SOURCE_DIR}/README.txt)
-set(CPACK_PACKAGE_DESCRIPTION_SUMMARY
- "An OpenGL to PostScript (and PDF, and SVG...) printing library")
-set(CPACK_PACKAGE_FILE_NAME gl2ps-${GL2PS_VERSION}-${GL2PS_OS})
-set(CPACK_PACKAGE_INSTALL_DIRECTORY "gl2ps")
-set(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_SOURCE_DIR}/COPYING.LGPL)
-set(CPACK_RESOURCE_FILE_README ${CMAKE_SOURCE_DIR}/README.txt)
-set(CPACK_RESOURCE_FILE_WELCOME ${CMAKE_SOURCE_DIR}/README.txt)
-set(CPACK_PACKAGE_EXECUTABLE "gl2ps;gl2ps")
-set(CPACK_STRIP_FILES TRUE)
-set(CPACK_SOURCE_PACKAGE_FILE_NAME gl2ps-${GL2PS_VERSION}-source)
-set(CPACK_SOURCE_GENERATOR TGZ)
-set(CPACK_SOURCE_IGNORE_FILES "TODO.txt" "${CMAKE_BINARY_DIR}" "/CVS/"
- "/.svn" "~$" "DS_Store$" "/tmp/" "/bin/" "/lib/")
-if(WIN32)
- set(CPACK_GENERATOR ZIP)
-else(WIN32)
- set(CPACK_GENERATOR TGZ)
-endif(WIN32)
-
-include(CPack)
+set(CPACK_PACKAGE_DESCRIPTION_SUMMARY
+ "An OpenGL to PostScript (and PDF, and SVG...) printing library")
+ set(CPACK_PACKAGE_FILE_NAME gl2ps-${GL2PS_VERSION}-${GL2PS_OS})
+ set(CPACK_PACKAGE_INSTALL_DIRECTORY "gl2ps")
+ set(CPACK_RESOURCE_FILE_LICENSE ${CMAKE_SOURCE_DIR}/COPYING.LGPL)
+ set(CPACK_RESOURCE_FILE_README ${CMAKE_SOURCE_DIR}/README.txt)
+ set(CPACK_RESOURCE_FILE_WELCOME ${CMAKE_SOURCE_DIR}/README.txt)
+ set(CPACK_PACKAGE_EXECUTABLE "gl2ps;gl2ps")
+ set(CPACK_STRIP_FILES TRUE)
+ set(CPACK_SOURCE_PACKAGE_FILE_NAME gl2ps-${GL2PS_VERSION}-source)
+ set(CPACK_SOURCE_GENERATOR TGZ)
+ set(CPACK_SOURCE_IGNORE_FILES "TODO.txt" "${CMAKE_BINARY_DIR}" "/CVS/"
+ "/.svn" "~$" "DS_Store$" "/tmp/" "/bin/" "/lib/")
+ if(WIN32)
+ set(CPACK_GENERATOR ZIP)
+ else(WIN32)
+ set(CPACK_GENERATOR TGZ)
+ endif(WIN32)
+
+ # include(CPack)