forked from hasufell/hasufell-repository
		
	Merge remote-tracking branch 'tgurr/mbedtls'
This commit is contained in:
		
						commit
						381573e66d
					
				@ -1,94 +0,0 @@
 | 
			
		||||
# Copyright 2016 Julian Ospald <hasufell@posteo.de>
 | 
			
		||||
# Distributed under the terms of the GNU General Public License v2
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
require github [ user=ARMmbed tag=mbedtls-${PV} ]
 | 
			
		||||
WORK="${WORKBASE}/${PNV}" # because github.exlib is broken
 | 
			
		||||
require cmake [ api=2 ]
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
SUMMARY="Cryptographic library for embedded systems"
 | 
			
		||||
HOMEPAGE="https://tls.mbed.org/"
 | 
			
		||||
DOWNLOADS="https://tls.mbed.org/download/${PNV}-gpl.tgz"
 | 
			
		||||
 | 
			
		||||
LICENCES="|| ( Apache-2.0 GPL-2 )"
 | 
			
		||||
SLOT="0"
 | 
			
		||||
PLATFORMS="~amd64 ~x86"
 | 
			
		||||
 | 
			
		||||
MYOPTIONS="
 | 
			
		||||
    doc
 | 
			
		||||
    havege [[ description = [ Enable the HAVEGE random generator,
 | 
			
		||||
                              not suitable for virtualized environments! ] ]]
 | 
			
		||||
    threads [[ description = [ Enables the threading abstraction layer
 | 
			
		||||
                               via pthread. This is used if you do intend
 | 
			
		||||
                               to use contexts between threads. ] ]]
 | 
			
		||||
    x86_cpu_features:
 | 
			
		||||
        sse2
 | 
			
		||||
"
 | 
			
		||||
 | 
			
		||||
DEPENDENCIES="
 | 
			
		||||
    build:
 | 
			
		||||
        doc? (
 | 
			
		||||
            app-doc/doxygen[>=1.8.4]
 | 
			
		||||
            media-gfx/graphviz
 | 
			
		||||
        )
 | 
			
		||||
    build+run:
 | 
			
		||||
        sys-libs/zlib
 | 
			
		||||
    test:
 | 
			
		||||
        dev-lang/perl:*
 | 
			
		||||
        dev-lang/python:*[>=3]
 | 
			
		||||
"
 | 
			
		||||
 | 
			
		||||
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() {
 | 
			
		||||
    local myopt="$@"
 | 
			
		||||
    # check that config.h syntax is the same at version bump
 | 
			
		||||
    edo sed -i \
 | 
			
		||||
        -e "s://#define ${myopt}:#define ${myopt}:" \
 | 
			
		||||
        "${CMAKE_SOURCE}"/include/mbedtls/config.h
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
src_prepare() {
 | 
			
		||||
    option x86_cpu_features:sse2 && enable_mbedtls_option MBEDTLS_HAVE_SSE2
 | 
			
		||||
    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
 | 
			
		||||
    enable_mbedtls_option MBEDTLS_MD4_C
 | 
			
		||||
    cmake_src_prepare
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
src_compile() {
 | 
			
		||||
    default
 | 
			
		||||
 | 
			
		||||
    if option doc ; then
 | 
			
		||||
        emake apidoc
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
src_test() {
 | 
			
		||||
    LD_LIBRARY_PATH="${ECMAKE_BUILD_DIR}/library" \
 | 
			
		||||
        emake test
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
src_install() {
 | 
			
		||||
    cmake_src_install
 | 
			
		||||
 | 
			
		||||
    if option doc ; then
 | 
			
		||||
        docinto html
 | 
			
		||||
        dodoc -r "${CMAKE_SOURCE}"/apidoc/*
 | 
			
		||||
    fi
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user