| 
									
										
										
										
											2016-02-16 23:45:11 +00:00
										 |  |  | # Copyright 2016 Julian Ospald <hasufell@posteo.de> | 
					
						
							|  |  |  | # Distributed under the terms of the GNU General Public License v2 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-04-23 02:22:08 +00:00
										 |  |  | WORK=${WORKBASE}/${PN}-${PNV} | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2016-04-22 15:42:34 +00:00
										 |  |  | require github [ user=ARMmbed tag=mbedtls-${PV} ] | 
					
						
							| 
									
										
										
										
											2016-04-23 02:22:08 +00:00
										 |  |  | require cmake [ api=2 ] | 
					
						
							| 
									
										
										
										
											2016-02-16 23:45:11 +00:00
										 |  |  | 
 | 
					
						
							|  |  |  | SUMMARY="Cryptographic library for embedded systems" | 
					
						
							|  |  |  | HOMEPAGE="https://tls.mbed.org/" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | LICENCES="Apache-2.0" | 
					
						
							|  |  |  | SLOT="0" | 
					
						
							|  |  |  | PLATFORMS="~amd64 ~x86" | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | MYOPTIONS="
 | 
					
						
							|  |  |  |     havege [[ description = [ Enable the HAVEGE random generator, | 
					
						
							|  |  |  |                               not suitable for virtualized environments! ] ]] | 
					
						
							|  |  |  |     threads | 
					
						
							| 
									
										
										
										
											2016-02-21 17:40:45 +00:00
										 |  |  |     x86_cpu_features: | 
					
						
							|  |  |  |         sse2 | 
					
						
							| 
									
										
										
										
											2016-02-16 23:45:11 +00:00
										 |  |  | "
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | DEPENDENCIES="
 | 
					
						
							|  |  |  |     build+run: | 
					
						
							|  |  |  |         sys-libs/zlib | 
					
						
							|  |  |  |     test: | 
					
						
							|  |  |  |         dev-lang/perl | 
					
						
							|  |  |  | "
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | CMAKE_SRC_CONFIGURE_PARAMS=( | 
					
						
							|  |  |  |     -DENABLE_PROGRAMS=OFF | 
					
						
							|  |  |  |     -DUSE_SHARED_MBEDTLS_LIBRARY=ON | 
					
						
							|  |  |  |     -DINSTALL_MBEDTLS_HEADERS=ON | 
					
						
							|  |  |  |     -DLIB_INSTALL_DIR="/usr/$(exhost --target)/lib" | 
					
						
							|  |  |  |     -DUSE_STATIC_MBEDTLS_LIBRARY=OFF | 
					
						
							|  |  |  |     -DENABLE_ZLIB_SUPPORT=ON | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | CMAKE_SRC_CONFIGURE_TESTS=( | 
					
						
							|  |  |  |     '-DENABLE_TESTING=ON' | 
					
						
							|  |  |  | ) | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | enable_mbedtls_option() { | 
					
						
							| 
									
										
										
										
											2016-02-17 01:53:28 +00:00
										 |  |  |     local myopt="$@" | 
					
						
							|  |  |  |     # check that config.h syntax is the same at version bump | 
					
						
							| 
									
										
										
										
											2016-02-28 23:05:15 +00:00
										 |  |  |     edo sed -i \
 | 
					
						
							| 
									
										
										
										
											2016-02-17 01:53:28 +00:00
										 |  |  |         -e "s://#define ${myopt}:#define ${myopt}:" \
 | 
					
						
							| 
									
										
										
										
											2016-04-23 02:22:08 +00:00
										 |  |  |         "${CMAKE_SOURCE}"/include/mbedtls/config.h | 
					
						
							| 
									
										
										
										
											2016-02-16 23:45:11 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | src_prepare() { | 
					
						
							| 
									
										
										
										
											2016-02-21 17:40:45 +00:00
										 |  |  |     option x86_cpu_features:sse2 && enable_mbedtls_option MBEDTLS_HAVE_SSE2 | 
					
						
							| 
									
										
										
										
											2016-02-17 01:53:28 +00:00
										 |  |  |     enable_mbedtls_option MBEDTLS_ZLIB_SUPPORT | 
					
						
							|  |  |  |     option havege && enable_mbedtls_option MBEDTLS_HAVEGE_C | 
					
						
							|  |  |  |     option threads && enable_mbedtls_option MBEDTLS_THREADING_C | 
					
						
							|  |  |  |     option threads && enable_mbedtls_option MBEDTLS_THREADING_PTHREAD | 
					
						
							| 
									
										
										
										
											2016-04-23 02:22:08 +00:00
										 |  |  |     cmake_src_prepare | 
					
						
							| 
									
										
										
										
											2016-02-16 23:45:11 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | src_test() { | 
					
						
							| 
									
										
										
										
											2016-02-17 10:42:35 +00:00
										 |  |  |     LD_LIBRARY_PATH="${ECMAKE_BUILD_DIR}/library" \
 | 
					
						
							| 
									
										
										
										
											2016-02-17 01:53:28 +00:00
										 |  |  |         cmake_src_test | 
					
						
							| 
									
										
										
										
											2016-02-16 23:45:11 +00:00
										 |  |  | } | 
					
						
							|  |  |  | 
 |