diff options
| author | Robert Schumacher <roschuma@microsoft.com> | 2017-01-19 18:55:36 -0800 |
|---|---|---|
| committer | Robert Schumacher <roschuma@microsoft.com> | 2017-01-19 18:55:36 -0800 |
| commit | d6e2ea075cd2afa363f6973c74ef599e8794e3d1 (patch) | |
| tree | b65ddac27a96914c8c87067d40de99319b3362e9 | |
| parent | 030ed271179ac57479d4bfec2e64b9457486d4c5 (diff) | |
| parent | 1c9ea008be82d00a1f7d7f3762e122d09bd3f41e (diff) | |
| download | vcpkg-d6e2ea075cd2afa363f6973c74ef599e8794e3d1.tar.gz vcpkg-d6e2ea075cd2afa363f6973c74ef599e8794e3d1.zip | |
Merge pull request #551 from smasherprog/master
FLTK Port
| -rw-r--r-- | ports/fltk/CONTROL | 4 | ||||
| -rw-r--r-- | ports/fltk/findlibsfix.patch | 51 | ||||
| -rw-r--r-- | ports/fltk/portfile.cmake | 91 |
3 files changed, 146 insertions, 0 deletions
diff --git a/ports/fltk/CONTROL b/ports/fltk/CONTROL new file mode 100644 index 000000000..4f8519550 --- /dev/null +++ b/ports/fltk/CONTROL @@ -0,0 +1,4 @@ +Source: fltk
+Version: 1.3.4-1
+Description: FLTK (pronounced fulltick) is a cross-platform C++ GUI toolkit for UNIX/Linux (X11), Microsoft Windows, and MacOS X. FLTK provides modern GUI functionality without the bloat and supports 3D graphics via OpenGL and its built-in GLUT emulation.
+Build-Depends: zlib, libpng, libjpeg-turbo
\ No newline at end of file diff --git a/ports/fltk/findlibsfix.patch b/ports/fltk/findlibsfix.patch new file mode 100644 index 000000000..6c2a7158a --- /dev/null +++ b/ports/fltk/findlibsfix.patch @@ -0,0 +1,51 @@ +diff --git a/CMake/resources.cmake b/CMake/resources.cmake +index 37c0c08..b1f52d1 100644 +--- a/CMake/resources.cmake ++++ b/CMake/resources.cmake +@@ -26,10 +26,10 @@ find_file(HAVE_DLFCN_H dlfcn.h) + find_file(HAVE_FREETYPE_H freetype.h PATH_SUFFIXES freetype2 freetype2/freetype) + find_file(HAVE_GL_GL_H GL/gl.h) + find_file(HAVE_GL_GLU_H GL/glu.h) +-find_file(HAVE_LIBPNG_PNG_H libpng/png.h) ++#find_file(HAVE_LIBPNG_PNG_H libpng/png.h) + find_file(HAVE_LOCALE_H locale.h) + find_file(HAVE_OPENGL_GLU_H OpenGL/glu.h) +-find_file(HAVE_PNG_H png.h) ++#find_file(HAVE_PNG_H png.h) + find_file(HAVE_PTHREAD_H pthread.h) + find_file(HAVE_STDIO_H stdio.h) + find_file(HAVE_STRINGS_H strings.h) +@@ -38,6 +38,17 @@ find_file(HAVE_SYS_STDTYPES_H sys/stdtypes.h) + find_file(HAVE_X11_XREGION_H X11/Xregion.h) + find_path(HAVE_XDBE_H Xdbe.h PATH_SUFFIXES X11/extensions extensions) + ++find_package(PNG REQUIRED) ++if(PNG_FOUND) ++ set(LIB_png ${PNG_LIBRARIES}) ++ set(HAVE_PNG_H ${PNG_FOUND}) ++ ++endif() ++find_package(ZLIB REQUIRED) ++if(ZLIB_FOUND) ++ set(LIB_zlib ${ZLIB_LIBRARIES}) ++endif() ++ + if (MSVC) + message(STATUS "Note: The following three headers should all be found!") + message(STATUS "HAVE_GL_GL_H = '${HAVE_GL_GL_H}'") +@@ -92,12 +103,12 @@ find_library(LIB_freetype freetype) + find_library(LIB_GL GL) + find_library(LIB_MesaGL MesaGL) + find_library(LIB_jpeg jpeg) +-find_library(LIB_png png) +-find_library(LIB_zlib z) ++#find_library(LIB_png png) ++#find_library(LIB_zlib z) + + mark_as_advanced(LIB_CAIRO LIB_dl LIB_fontconfig LIB_freetype) + mark_as_advanced(LIB_GL LIB_MesaGL) +-mark_as_advanced(LIB_jpeg LIB_png LIB_zlib) ++mark_as_advanced(LIB_jpeg) + + ####################################################################### + # functions diff --git a/ports/fltk/portfile.cmake b/ports/fltk/portfile.cmake new file mode 100644 index 000000000..848096dce --- /dev/null +++ b/ports/fltk/portfile.cmake @@ -0,0 +1,91 @@ +# Common Ambient Variables:
+# VCPKG_ROOT_DIR = <C:\path\to\current\vcpkg>
+# TARGET_TRIPLET is the current triplet (x86-windows, etc)
+# PORT is the current port name (zlib, etc)
+# CURRENT_BUILDTREES_DIR = ${VCPKG_ROOT_DIR}\buildtrees\${PORT}
+# CURRENT_PACKAGES_DIR = ${VCPKG_ROOT_DIR}\packages\${PORT}_${TARGET_TRIPLET}
+#
+
+include(vcpkg_common_functions)
+set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/fltk-1.3.4-1)
+vcpkg_download_distfile(ARCHIVE
+ URLS "http://fltk.org/pub/fltk/1.3.4/fltk-1.3.4-1-source.tar.gz"
+ FILENAME "fltk.tar.gz"
+ SHA512 0be1c8e6bb7a8c7ef484941a73868d5e40b90e97a8e5dc747bac2be53a350621975406ecfd4a9bcee8eeb7afd886e75bf7a6d6478fd6c56d16e54059f22f0891
+)
+vcpkg_extract_source_archive(${ARCHIVE})
+
+vcpkg_apply_patches(
+ SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/fltk-1.3.4-1
+ PATCHES "${CMAKE_CURRENT_LIST_DIR}/findlibsfix.patch"
+)
+
+if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
+ set(BUILD_SHARED ON)
+else()
+ set(BUILD_SHARED OFF)
+endif()
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ OPTIONS
+ -DOPTION_BUILD_EXAMPLES=OFF
+ -DOPTION_BUILD_SHARED_LIBS=${BUILD_SHARED}
+)
+
+vcpkg_install_cmake()
+
+file(REMOVE_RECURSE
+ ${CURRENT_PACKAGES_DIR}/CMAKE
+ ${CURRENT_PACKAGES_DIR}/debug/CMAKE
+ ${CURRENT_PACKAGES_DIR}/debug/include
+)
+file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/fluid.exe)
+file(REMOVE ${CURRENT_PACKAGES_DIR}/bin/fltk-config)
+
+file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/fluid.exe)
+file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/fltk-config)
+vcpkg_copy_pdbs()
+
+if (VCPKG_LIBRARY_LINKAGE STREQUAL dynamic)
+ file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/fltk_formsd.lib)
+ file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/fltk_gld.lib)
+ file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/fltk_imagesd.lib)
+ file(REMOVE ${CURRENT_PACKAGES_DIR}/debug/bin/fltkd.lib)
+
+ file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/fltk_forms_SHAREDd.lib ${CURRENT_PACKAGES_DIR}/debug/lib/fltk_formsd.lib)
+ file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/fltk_gl_SHAREDd.lib ${CURRENT_PACKAGES_DIR}/debug/lib/fltk_gld.lib)
+ file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/fltk_images_SHAREDd.lib ${CURRENT_PACKAGES_DIR}/debug/lib/fltk_imagesd.lib)
+ file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/fltk_SHAREDd.lib ${CURRENT_PACKAGES_DIR}/debug/lib/fltkd.lib)
+
+ file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/fltk_forms.lib)
+ file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/fltk_gl.lib)
+ file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/fltk_images.lib)
+ file(REMOVE ${CURRENT_PACKAGES_DIR}/lib/fltk.lib)
+
+ file(RENAME ${CURRENT_PACKAGES_DIR}/lib/fltk_forms_SHARED.lib ${CURRENT_PACKAGES_DIR}/lib/fltk_forms.lib)
+ file(RENAME ${CURRENT_PACKAGES_DIR}/lib/fltk_gl_SHARED.lib ${CURRENT_PACKAGES_DIR}/lib/fltk_gl.lib)
+ file(RENAME ${CURRENT_PACKAGES_DIR}/lib/fltk_images_SHARED.lib ${CURRENT_PACKAGES_DIR}/lib/fltk_images.lib)
+ file(RENAME ${CURRENT_PACKAGES_DIR}/lib/fltk_SHARED.lib ${CURRENT_PACKAGES_DIR}/lib/fltk.lib)
+
+else()
+ file(REMOVE_RECURSE
+ ${CURRENT_PACKAGES_DIR}/debug/bin
+ ${CURRENT_PACKAGES_DIR}/bin
+ )
+
+
+endif()
+
+file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/fltk_formsd.lib ${CURRENT_PACKAGES_DIR}/debug/lib/fltk_forms.lib)
+file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/fltk_gld.lib ${CURRENT_PACKAGES_DIR}/debug/lib/fltk_gl.lib)
+file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/fltk_imagesd.lib ${CURRENT_PACKAGES_DIR}/debug/lib/fltk_images.lib)
+file(RENAME ${CURRENT_PACKAGES_DIR}/debug/lib/fltkd.lib ${CURRENT_PACKAGES_DIR}/debug/lib/fltk.lib)
+
+
+
+file(INSTALL
+ ${SOURCE_PATH}/COPYING
+ DESTINATION ${CURRENT_PACKAGES_DIR}/share/fltk
+ RENAME copyright
+)
|
