summaryrefslogtreecommitdiff
path: root/CMakeLists.txt
diff options
context:
space:
mode:
authorGravatar Benjamin Barenblat <bbaren@mit.edu>2015-08-17 13:22:21 -0400
committerGravatar Benjamin Barenblat <bbaren@mit.edu>2015-08-17 13:22:21 -0400
commitdc21e4544d372a248604944cd0da14382990f0f3 (patch)
treecae6df60cd0e52668a68e6017c8c5966b7e4a4a2 /CMakeLists.txt
parentd97efd4fb2ade6c6e9b3a3c9ba0dc870b2a025db (diff)
Switch build system to CMake
Diffstat (limited to 'CMakeLists.txt')
-rw-r--r--CMakeLists.txt33
1 files changed, 33 insertions, 0 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
new file mode 100644
index 0000000..cb64d7f
--- /dev/null
+++ b/CMakeLists.txt
@@ -0,0 +1,33 @@
+# Copyright 2015 the Massachusetts Institute of Technology
+#
+# Licensed under the Apache License, Version 2.0 (the "License"); you may not
+# use this file except in compliance with the License. You may obtain a copy of
+# the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+# License for the specific language governing permissions and limitations under
+# the License.
+
+cmake_policy(VERSION 3.0.2)
+cmake_minimum_required(VERSION 3.0)
+
+project(
+ urweb_crypto_hash_openssl
+ VERSION 1.0.0
+ LANGUAGES CXX
+)
+
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -D_FORTIFY_SOURCE=2")
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -ftrapv")
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fstack-protector-strong --param=ssp-buffer-size=4")
+set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Weverything -Wno-c++98-compat")
+
+set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-Bsymbolic-functions")
+set(CMAKE_SHARED_LINKER_FLAGS "${CMAKE_SHARED_LINKER_FLAGS} -Wl,-z,relro")
+
+add_subdirectory(src)