summaryrefslogtreecommitdiffstats
path: root/internal/cmake
diff options
context:
space:
mode:
Diffstat (limited to 'internal/cmake')
-rw-r--r--internal/cmake/Modules/CheckSafeC.cmake18
-rw-r--r--internal/cmake/Modules/CheckSsl.cmake19
-rw-r--r--internal/cmake/Modules/FindCiscoSafeC.cmake54
-rw-r--r--internal/cmake/Modules/ImportInternal.cmake23
-rw-r--r--internal/cmake/Modules/SetRelyGitRepo.cmake20
5 files changed, 134 insertions, 0 deletions
diff --git a/internal/cmake/Modules/CheckSafeC.cmake b/internal/cmake/Modules/CheckSafeC.cmake
new file mode 100644
index 000000000..fe0b996bd
--- /dev/null
+++ b/internal/cmake/Modules/CheckSafeC.cmake
@@ -0,0 +1,18 @@
+# Copyright (c) 2017-2022 Cisco and/or its affiliates.
+# 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.
+
+macro(CheckSafeC)
+ if(INTERNAL_ENVIRONMENT_FOUND)
+ set(SAFEC_DEPENDENCY "ciscosafec")
+ endif()
+endmacro() \ No newline at end of file
diff --git a/internal/cmake/Modules/CheckSsl.cmake b/internal/cmake/Modules/CheckSsl.cmake
new file mode 100644
index 000000000..bf1b11737
--- /dev/null
+++ b/internal/cmake/Modules/CheckSsl.cmake
@@ -0,0 +1,19 @@
+# Copyright (c) 2017-2022 Cisco and/or its affiliates.
+# 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.
+
+macro(CheckSsl)
+ if("${OPENSSL_INCLUDE_DIR}" MATCHES ".*cisco.*")
+ set(OPENSSL_DEPENDENCY "tk-libssl1.1")
+ set(OPENSSL_DEPENDENCY_DEV "tk-libssl-dev")
+ endif()
+endmacro() \ No newline at end of file
diff --git a/internal/cmake/Modules/FindCiscoSafeC.cmake b/internal/cmake/Modules/FindCiscoSafeC.cmake
new file mode 100644
index 000000000..9f723a018
--- /dev/null
+++ b/internal/cmake/Modules/FindCiscoSafeC.cmake
@@ -0,0 +1,54 @@
+# Copyright (c) 2017-2022 Cisco and/or its affiliates.
+# 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.
+
+########################################
+#
+# Find the CiscoSafeC libraries and includes
+# This module sets:
+# CISCOSAFEC_FOUND: True if CiscoSafeC was found
+# CISCOSAFEC_LIBRARY: The CiscoSafeC library
+# CISCOSAFEC_LIBRARIES: The CiscoSafeC library and dependencies
+# CISCOSAFEC_INCLUDE_DIR: The CiscoSafeC include dir
+#
+
+set(CISCOSAFEC_SEARCH_PATH_LIST
+ ${CISCOSAFEC_HOME}
+ $ENV{CISCOSAFEC_HOME}
+ /usr/local
+ /opt
+ /usr
+)
+
+find_path(CISCOSAFEC_INCLUDE_DIR safec_config.h
+ HINTS ${CISCOSAFEC_SEARCH_PATH_LIST}
+ PATH_SUFFIXES include include/safec
+ DOC "Find the CiscoSafeC includes"
+)
+
+find_library(CISCOSAFEC_LIBRARY NAMES ciscosafec
+ HINTS ${CISCOSAFEC_SEARCH_PATH_LIST}
+ PATH_SUFFIXES lib
+ DOC "Find the CiscoSafeC libraries"
+)
+
+set(CISCOSAFEC_LIBRARIES ${CISCOSAFEC_LIBRARY})
+set(CISCOSAFEC_INCLUDE_DIRS ${CISCOSAFEC_INCLUDE_DIR})
+
+include(FindPackageHandleStandardArgs)
+set(CISCOSAFEC_FOUND False)
+
+if (NOT "${CISCOSAFEC_INCLUDE_DIR}" STREQUAL "")
+ set(CISCOSAFEC_FOUND True)
+ find_package_handle_standard_args(CiscoSafeC DEFAULT_MSG CISCOSAFEC_LIBRARY CISCOSAFEC_INCLUDE_DIR)
+ mark_as_advanced(CISCOSAFEC_LIBRARY CISCOSAFEC_INCLUDE_DIR)
+endif ()
diff --git a/internal/cmake/Modules/ImportInternal.cmake b/internal/cmake/Modules/ImportInternal.cmake
new file mode 100644
index 000000000..73cdac1a7
--- /dev/null
+++ b/internal/cmake/Modules/ImportInternal.cmake
@@ -0,0 +1,23 @@
+# Copyright (c) 2017-2022 Cisco and/or its affiliates.
+# 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.
+
+macro(ImportInternal)
+ find_package(CiscoSafeC)
+ if (CiscoSafeC_FOUND)
+ list(APPEND COMPILER_DEFINITIONS
+ "-DENABLE_SAFEC"
+ )
+ list(APPEND THIRD_PARTY_LIBRARIES ${CISCOSAFEC_LIBRARY})
+ list(APPEND THIRD_PARTY_INCLUDE_DIRS ${CISCOSAFEC_INCLUDE_DIR})
+ endif()
+endmacro() \ No newline at end of file
diff --git a/internal/cmake/Modules/SetRelyGitRepo.cmake b/internal/cmake/Modules/SetRelyGitRepo.cmake
new file mode 100644
index 000000000..facdc19b9
--- /dev/null
+++ b/internal/cmake/Modules/SetRelyGitRepo.cmake
@@ -0,0 +1,20 @@
+# Copyright (c) 2017-2022 Cisco and/or its affiliates.
+# 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.
+
+macro(SetRelyGitRepo)
+ if(DEFINED ENV{BITBUCKET_USERNAME} AND DEFINED ENV{BITBUCKET_PASSWORD})
+ set(GIT_REPO https://$ENV{BITBUCKET_USERNAME}:$ENV{BITBUCKET_PASSWORD}@bitbucket-eng-gpk1.cisco.com/bitbucket/scm/icn/rely.git)
+ else()
+ set(GIT_REPO ssh://git@bitbucket-eng-gpk1.cisco.com:7999/icn/rely.git)
+ endif()
+endmacro() \ No newline at end of file