summaryrefslogtreecommitdiffstats
path: root/recipes-connectivity/openssl/openssl.inc
diff options
context:
space:
mode:
Diffstat (limited to 'recipes-connectivity/openssl/openssl.inc')
-rw-r--r--recipes-connectivity/openssl/openssl.inc124
1 files changed, 124 insertions, 0 deletions
diff --git a/recipes-connectivity/openssl/openssl.inc b/recipes-connectivity/openssl/openssl.inc
new file mode 100644
index 0000000000..b3f3dafe55
--- /dev/null
+++ b/recipes-connectivity/openssl/openssl.inc
@@ -0,0 +1,124 @@
1DESCRIPTION = "Secure Socket Layer (SSL) binary and related cryptographic tools."
2HOMEPAGE = "http://www.openssl.org/"
3LICENSE = "openssl"
4SECTION = "libs/network"
5
6SRC_URI = "http://www.openssl.org/source/openssl-${PV}.tar.gz;name=src"
7S = "${WORKDIR}/openssl-${PV}"
8
9inherit siteinfo
10
11INC_PR = "r13"
12
13AR_append = " r"
14CFLAG = "${@base_conditional('SITEINFO_ENDIANNESS', 'le', '-DL_ENDIAN', '-DB_ENDIAN', d)} \
15 -DTERMIO ${FULL_OPTIMIZATION} -Wall"
16
17# -02 does not work on mipsel: ssh hangs when it tries to read /dev/urandom
18CFLAG_mtx-1 := "${@'${CFLAG}'.replace('-O2', '')}"
19CFLAG_mtx-2 := "${@'${CFLAG}'.replace('-O2', '')}"
20
21export DIRS = "crypto ssl apps"
22BBCLASSEXTEND = "native nativesdk"
23
24export EX_LIBS = "-lgcc -ldl"
25export AS = "${CC} -c"
26
27PACKAGES =+ "libcrypto libssl ${PN}-misc"
28FILES_libcrypto = "${libdir}/libcrypto.so.*"
29FILES_libssl = "${libdir}/libssl.so.*"
30FILES_${PN}-misc = "${libdir}/ssl/misc ${libdir}/ssl/openssl.cnf"
31
32do_configure_prepend_darwin () {
33 sed -i -e '/version-script=openssl\.ld/d' Configure
34}
35
36do_configure () {
37 cd util
38 perl perlpath.pl ${bindir}
39 cd ..
40 ln -sf apps/openssl.pod crypto/crypto.pod ssl/ssl.pod doc/
41
42 os=${HOST_OS}
43 if [ "x$os" = "xlinux-uclibc" ]; then
44 os=linux
45 elif [ "x$os" = "xlinux-uclibceabi" ]; then
46 os=linux
47 elif [ "x$os" = "xlinux-gnueabi" ]; then
48 os=linux
49 fi
50 target="$os-${HOST_ARCH}"
51 case $target in
52 linux-arm)
53 target=linux-elf-arm
54 ;;
55 linux-armeb)
56 target=linux-elf-armeb
57 ;;
58 linux-sh3)
59 target=debian-sh3
60 ;;
61 linux-sh4)
62 target=debian-sh4
63 ;;
64 linux-i486)
65 target=debian-i386-i486
66 ;;
67 linux-i586 | linux-viac3)
68 target=debian-i386-i586
69 ;;
70 linux-i686)
71 target=debian-i386-i686/cmov
72 ;;
73 linux-mips)
74 target=debian-mips
75 ;;
76 linux-mipsel)
77 target=debian-mipsel
78 ;;
79 linux-powerpc)
80 target=linux-ppc
81 ;;
82 linux-gnuspe-powerpc)
83 target=linux-ppc
84 ;;
85 linux-supersparc)
86 target=linux-sparcv8
87 ;;
88 linux-sparc)
89 target=linux-sparcv8
90 ;;
91 darwin-i386)
92 target=darwin-i386-cc
93 ;;
94 esac
95 # inject machine-specific flags
96 sed -i -e "s|^\(\"$target\",\s*\"[^:]\+\):\([^:]\+\)|\1:${CFLAG}|g" Configure
97 useprefix=${prefix}
98 if [ "x$useprefix" == "x" ]; then
99 useprefix=/
100 fi
101 perl ./Configure shared --prefix=$useprefix --openssldir=${libdir}/ssl $target
102}
103
104do_compile () {
105 oe_runmake
106}
107
108do_install () {
109 oe_runmake INSTALL_PREFIX="${D}" install
110
111 # On x86_64, move lib/* to lib64
112 if [ "${libdir}" != "${prefix}/lib" ]
113 then
114 install -d ${D}${libdir} ${D}${libdir}/pkgconfig
115 mv ${D}${prefix}/lib/lib* ${D}${libdir}
116 mv ${D}${prefix}/lib/pkgconfig/*.pc ${D}${libdir}/pkgconfig
117 fi
118
119 oe_libinstall -so libcrypto ${D}${libdir}
120 oe_libinstall -so libssl ${D}${libdir}
121
122 install -d ${D}${includedir}
123 cp --dereference -R include/openssl ${D}${includedir}
124}