aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Schumacher <roschuma@microsoft.com>2018-02-19 08:12:04 -0800
committerRobert Schumacher <roschuma@microsoft.com>2018-02-19 08:12:04 -0800
commit0f607865f36fa8988288ca666395d52b32762ac7 (patch)
treea53d191c81b6c50b2f4de288cfeaa60e0804786d
parent12f19c7a30e14a89c0bac9279bb8bcda64158496 (diff)
downloadvcpkg-0f607865f36fa8988288ca666395d52b32762ac7.tar.gz
vcpkg-0f607865f36fa8988288ca666395d52b32762ac7.zip
[libdisasm][breakpad] Initial commit of breakpad. Improvements to libdisasm.
-rw-r--r--ports/breakpad/CMakeLists.txt49
-rw-r--r--ports/breakpad/CONTROL4
-rw-r--r--ports/breakpad/portfile.cmake24
-rw-r--r--ports/libdisasm/CMakeLists.txt11
-rw-r--r--ports/libdisasm/CONTROL2
-rw-r--r--ports/libdisasm/portfile.cmake1
6 files changed, 86 insertions, 5 deletions
diff --git a/ports/breakpad/CMakeLists.txt b/ports/breakpad/CMakeLists.txt
new file mode 100644
index 000000000..f4c19cb8c
--- /dev/null
+++ b/ports/breakpad/CMakeLists.txt
@@ -0,0 +1,49 @@
+cmake_minimum_required(VERSION 3.8)
+project(breakpad CXX)
+
+add_definitions(
+ -DNOMINMAX
+ -DUNICODE
+ -DWIN32_LEAN_AND_MEAN
+ -D_CRT_SECURE_NO_WARNINGS
+ -D_CRT_SECURE_NO_DEPRECATE
+ -D_CRT_NONSTDC_NO_DEPRECATE
+)
+
+set(CMAKE_DEBUG_POSTFIX d)
+set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
+
+string(COMPARE EQUAL "${CMAKE_BUILD_TYPE}" "Release" DEFAULT_INSTALL_HEADERS)
+option(INSTALL_HEADERS "Install header files" ${DEFAULT_INSTALL_HEADERS})
+
+file(GLOB_RECURSE SOURCES src/processor/*.cc)
+list(FILTER SOURCES EXCLUDE REGEX
+ "_unittest|synth_minidump|/tests|/testdata|/linux|/mac|/android|/solaris|microdump_stackwalk|minidump_dump|minidump_stackwalk")
+
+find_library(LIBDISASM_LIB NAMES libdisasmd libdisasm)
+
+add_library(libbreakpad ${SOURCES})
+target_link_libraries(libbreakpad PRIVATE ${LIBDISASM_LIB})
+
+target_include_directories(libbreakpad
+ PUBLIC
+ $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/src>
+ $<INSTALL_INTERFACE:include>
+)
+
+install(TARGETS libbreakpad EXPORT unofficial-breakpad-targets
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib
+)
+
+if(INSTALL_HEADERS)
+ install(DIRECTORY src/google_breakpad DESTINATION include)
+endif()
+
+install(
+ EXPORT unofficial-breakpad-targets
+ FILE unofficial-breakpad-config.cmake
+ NAMESPACE unofficial::breakpad::
+ DESTINATION share/unofficial-breakpad
+)
diff --git a/ports/breakpad/CONTROL b/ports/breakpad/CONTROL
new file mode 100644
index 000000000..c391454b6
--- /dev/null
+++ b/ports/breakpad/CONTROL
@@ -0,0 +1,4 @@
+Source: breakpad
+Version: 2018-2-19
+Build-Depends: libdisasm
+Description: a set of client and server components which implement a crash-reporting system.
diff --git a/ports/breakpad/portfile.cmake b/ports/breakpad/portfile.cmake
new file mode 100644
index 000000000..6267b271b
--- /dev/null
+++ b/ports/breakpad/portfile.cmake
@@ -0,0 +1,24 @@
+include(vcpkg_common_functions)
+
+vcpkg_from_github(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO google/breakpad
+ REF 6bb6c9b26afd9844b9e35fcaa39fb24893e7abb5
+ SHA512 a6a786c2cabb1fd2749d79215c7a3024ae6d1a894166060b22869cd3ee3010edb3e0613c0aeea254580554f402d919ed630ee088c53a1f218e01a7280ad29fec
+ HEAD_REF master
+)
+
+file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+)
+
+vcpkg_install_cmake()
+
+vcpkg_fixup_cmake_targets(CONFIG_PATH share/unofficial-breakpad TARGET_PATH share/unofficial-breakpad)
+
+vcpkg_copy_pdbs()
+
+file(INSTALL ${SOURCE_PATH}/LICENSE DESTINATION ${CURRENT_PACKAGES_DIR}/share/breakpad RENAME copyright)
diff --git a/ports/libdisasm/CMakeLists.txt b/ports/libdisasm/CMakeLists.txt
index 295f0f72b..96889e794 100644
--- a/ports/libdisasm/CMakeLists.txt
+++ b/ports/libdisasm/CMakeLists.txt
@@ -1,7 +1,10 @@
cmake_minimum_required(VERSION 3.9)
-project(libdisasm)
-set(
- SRCS
+project(libdisasm C)
+
+set(CMAKE_DEBUG_POSTFIX d)
+set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON)
+
+set(SRCS
ia32_implicit.c
ia32_implicit.h
ia32_insn.c
@@ -32,7 +35,7 @@ set(
include_directories(libdisasm)
-add_library(libdisasm ${SRCS})
+add_library(libdisasm ${SRCS})
install(
TARGETS libdisasm
diff --git a/ports/libdisasm/CONTROL b/ports/libdisasm/CONTROL
index 3d41823ca..c6044e88d 100644
--- a/ports/libdisasm/CONTROL
+++ b/ports/libdisasm/CONTROL
@@ -1,3 +1,3 @@
Source: libdisasm
-Version: 0.23
+Version: 0.23-1
Description: x86 Disassembler Library.
diff --git a/ports/libdisasm/portfile.cmake b/ports/libdisasm/portfile.cmake
index 21a022c42..19919bed6 100644
--- a/ports/libdisasm/portfile.cmake
+++ b/ports/libdisasm/portfile.cmake
@@ -25,6 +25,7 @@ file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
OPTIONS_DEBUG -DDISABLE_INSTALL_HEADERS=ON
)