aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzi-m <53815290+zi-m@users.noreply.github.com>2019-09-09 20:31:43 +0200
committerVictor Romero <romerosanchezv@gmail.com>2019-09-09 11:31:43 -0700
commite00bf0c7be14bd829496a2e0fb0932feb192bd76 (patch)
tree445cb0bfe57dc5e4da4750eba97aa712c9f4f4e5
parent43fea7c61f23cf8c8f49c36b5a56541216d9fd2b (diff)
downloadvcpkg-e00bf0c7be14bd829496a2e0fb0932feb192bd76.tar.gz
vcpkg-e00bf0c7be14bd829496a2e0fb0932feb192bd76.zip
[cityhash] Add new port (#7879)
* cityhash * use ./configure (!win) * remove 'usage' file
-rw-r--r--ports/cityhash/CMakeLists.txt18
-rw-r--r--ports/cityhash/CONTROL4
-rw-r--r--ports/cityhash/config.h118
-rw-r--r--ports/cityhash/portfile.cmake39
4 files changed, 179 insertions, 0 deletions
diff --git a/ports/cityhash/CMakeLists.txt b/ports/cityhash/CMakeLists.txt
new file mode 100644
index 000000000..f2e08336c
--- /dev/null
+++ b/ports/cityhash/CMakeLists.txt
@@ -0,0 +1,18 @@
+cmake_minimum_required(VERSION 3.13)
+project(cityhash CXX)
+
+add_library(cityhash STATIC src/city.cc)
+
+target_include_directories(cityhash PUBLIC
+ $<INSTALL_INTERFACE:include>
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src>
+)
+
+install(TARGETS cityhash EXPORT cityhash-config
+ RUNTIME DESTINATION bin
+ ARCHIVE DESTINATION lib
+ LIBRARY DESTINATION lib
+)
+
+install(EXPORT cityhash-config DESTINATION share/cmake/cityhash)
+install(FILES src/city.h DESTINATION include)
diff --git a/ports/cityhash/CONTROL b/ports/cityhash/CONTROL
new file mode 100644
index 000000000..2b45a58c9
--- /dev/null
+++ b/ports/cityhash/CONTROL
@@ -0,0 +1,4 @@
+Source: cityhash
+Version: 2013-01-08
+Homepage: https://github.com/google/cityhash
+Description: CityHash, a family of hash functions for strings.
diff --git a/ports/cityhash/config.h b/ports/cityhash/config.h
new file mode 100644
index 000000000..190c1da38
--- /dev/null
+++ b/ports/cityhash/config.h
@@ -0,0 +1,118 @@
+/* config.h. Generated from config.h.in by configure. */
+/* config.h.in. Generated from configure.ac by autoheader. */
+
+/* Define if building universal (internal helper macro) */
+/* #undef AC_APPLE_UNIVERSAL_BUILD */
+
+/* Define to 1 if the compiler supports __builtin_expect. */
+#if WIN32 || WIN64
+# define HAVE_BUILTIN_EXPECT 0
+#else
+# define HAVE_BUILTIN_EXPECT 1
+#endif
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+#define HAVE_DLFCN_H 1
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+#define HAVE_INTTYPES_H 1
+
+/* Define to 1 if you have the <memory.h> header file. */
+#define HAVE_MEMORY_H 1
+
+/* Define to 1 if you have the <stdint.h> header file. */
+#define HAVE_STDINT_H 1
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#define HAVE_STDLIB_H 1
+
+/* Define to 1 if you have the <strings.h> header file. */
+#define HAVE_STRINGS_H 1
+
+/* Define to 1 if you have the <string.h> header file. */
+#define HAVE_STRING_H 1
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#define HAVE_SYS_STAT_H 1
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#define HAVE_SYS_TYPES_H 1
+
+/* Define to 1 if you have the <unistd.h> header file. */
+#define HAVE_UNISTD_H 1
+
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+ */
+#define LT_OBJDIR ".libs/"
+
+/* Define to the address where bug reports for this package should be sent. */
+#define PACKAGE_BUGREPORT "cityhash-discuss@googlegroups.com"
+
+/* Define to the full name of this package. */
+#define PACKAGE_NAME "CityHash"
+
+/* Define to the full name and version of this package. */
+#define PACKAGE_STRING "CityHash 1.1.1"
+
+/* Define to the one symbol short name of this package. */
+#define PACKAGE_TARNAME "cityhash"
+
+/* Define to the home page for this package. */
+#define PACKAGE_URL ""
+
+/* Define to the version of this package. */
+#define PACKAGE_VERSION "1.1.1"
+
+/* Define to 1 if you have the ANSI C header files. */
+#define STDC_HEADERS 1
+
+/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
+ significant byte first (like Motorola and SPARC, unlike Intel). */
+#if defined AC_APPLE_UNIVERSAL_BUILD
+# if defined __BIG_ENDIAN__
+# define WORDS_BIGENDIAN 1
+# endif
+#else
+# ifndef WORDS_BIGENDIAN
+/* # undef WORDS_BIGENDIAN */
+# endif
+#endif
+
+/* Define for Solaris 2.5.1 so the uint32_t typedef from <sys/synch.h>,
+ <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the
+ #define below would cause a syntax error. */
+/* #undef _UINT32_T */
+
+/* Define for Solaris 2.5.1 so the uint64_t typedef from <sys/synch.h>,
+ <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the
+ #define below would cause a syntax error. */
+/* #undef _UINT64_T */
+
+/* Define for Solaris 2.5.1 so the uint8_t typedef from <sys/synch.h>,
+ <pthread.h>, or <semaphore.h> is not used. If the typedef were allowed, the
+ #define below would cause a syntax error. */
+/* #undef _UINT8_T */
+
+/* Define to `__inline__' or `__inline' if that's what the C compiler
+ calls it, or to nothing if 'inline' is not supported under any name. */
+#ifndef __cplusplus
+/* #undef inline */
+#endif
+
+/* Define to `unsigned int' if <sys/types.h> does not define. */
+/* #undef size_t */
+
+/* Define to `int' if <sys/types.h> does not define. */
+/* #undef ssize_t */
+
+/* Define to the type of an unsigned integer type of width exactly 32 bits if
+ such a type exists and the standard includes do not define it. */
+/* #undef uint32_t */
+
+/* Define to the type of an unsigned integer type of width exactly 64 bits if
+ such a type exists and the standard includes do not define it. */
+/* #undef uint64_t */
+
+/* Define to the type of an unsigned integer type of width exactly 8 bits if
+ such a type exists and the standard includes do not define it. */
+/* #undef uint8_t */
diff --git a/ports/cityhash/portfile.cmake b/ports/cityhash/portfile.cmake
new file mode 100644
index 000000000..7e759e7fb
--- /dev/null
+++ b/ports/cityhash/portfile.cmake
@@ -0,0 +1,39 @@
+include(vcpkg_common_functions)
+
+vcpkg_check_linkage(ONLY_STATIC_LIBRARY)
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO google/cityhash
+ REF 8af9b8c2b889d80c22d6bc26ba0df1afb79a30db
+ SHA512 5878a6a4f8ee99593412d446d96c05be1f89fa7771eca49ff4a52ce181de8199ba558170930996d36f6df80a65889d93c81ab2611868b015d8db913e2ecd2eb9
+ HEAD_REF master
+)
+
+file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
+
+if(VCPKG_TARGET_IS_WINDOWS)
+ file(COPY ${CMAKE_CURRENT_LIST_DIR}/config.h DESTINATION ${SOURCE_PATH}/src)
+else()
+ file(MAKE_DIRECTORY ${SOURCE_PATH}/out)
+ vcpkg_execute_required_process(
+ COMMAND ${SOURCE_PATH}/configure
+ WORKING_DIRECTORY ${SOURCE_PATH}/out
+ LOGNAME configure-${TARGET_TRIPLET}
+ )
+ file(COPY ${SOURCE_PATH}/out/config.h DESTINATION ${SOURCE_PATH}/src)
+endif()
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+)
+
+vcpkg_install_cmake()
+vcpkg_copy_pdbs()
+vcpkg_fixup_cmake_targets(CONFIG_PATH share/cmake/cityhash)
+
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
+file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)
+
+configure_file(${SOURCE_PATH}/COPYING ${CURRENT_PACKAGES_DIR}/share/cityhash/copyright COPYONLY)