diff options
author | Jackie Huang <jackie.huang@windriver.com> | 2014-09-28 05:35:37 -0400 |
---|---|---|
committer | Martin Jansa <Martin.Jansa@gmail.com> | 2014-10-04 00:28:31 +0200 |
commit | 5131823c8ca75550a9130be6d35e9fadd98eda38 (patch) | |
tree | ff2a3bc271b156acb1ac304fd9dba0f7a091e258 /meta-oe/recipes-connectivity | |
parent | 3efc0c1974fd5191d04a8d8d622016e137d24ca0 (diff) | |
download | meta-openembedded-5131823c8ca75550a9130be6d35e9fadd98eda38.tar.gz |
krb5: update to version 1.12.2
Changed:
* Add init scripts and default configs based on debian
* Add a patch for crosscompile nm
* Add a patch to suppress /usr/lib in krb5-config
* Add DESCRIPTION
* Remove blacklist and inherit autotools-brokensep
* Add PACKAGECONFIG for ldap and readline
Signed-off-by: Jackie Huang <jackie.huang@windriver.com>
Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
Diffstat (limited to 'meta-oe/recipes-connectivity')
8 files changed, 437 insertions, 52 deletions
diff --git a/meta-oe/recipes-connectivity/krb5/krb5/crosscompile_nm.patch b/meta-oe/recipes-connectivity/krb5/krb5/crosscompile_nm.patch new file mode 100644 index 000000000..d3e693751 --- /dev/null +++ b/meta-oe/recipes-connectivity/krb5/krb5/crosscompile_nm.patch | |||
@@ -0,0 +1,29 @@ | |||
1 | Modifies export-check.pl to use look for $ENV{'NM'} before | ||
2 | defaulting to using 'nm' | ||
3 | |||
4 | Upstream-Status: Pending | ||
5 | |||
6 | Signed-off-by: Amy Fong <amy.fong@windriver.com> | ||
7 | --- | ||
8 | |||
9 | export-check.pl | 7 ++++++- | ||
10 | 1 file changed, 6 insertions(+), 1 deletion(-) | ||
11 | |||
12 | Index: src/util/export-check.pl | ||
13 | =================================================================== | ||
14 | --- src.orig/util/export-check.pl | ||
15 | +++ src/util/export-check.pl | ||
16 | @@ -38,7 +38,12 @@ | ||
17 | my($exfile, $libfile) = @ARGV; | ||
18 | |||
19 | @missing = (); | ||
20 | -open NM, "nm -Dg --defined-only $libfile |" || die "can't run nm on $libfile: $!"; | ||
21 | +if (defined($ENV{'NM'})) { | ||
22 | + $nm = $ENV{'NM'}; | ||
23 | +} else { | ||
24 | + $nm = "nm"; | ||
25 | +} | ||
26 | +open NM, "$nm -Dg --defined-only $libfile |" || die "can't run nm on $libfile: $!"; | ||
27 | open EXPORT, "< $exfile" || die "can't read $exfile: $!"; | ||
28 | |||
29 | @export = <EXPORT>; | ||
diff --git a/meta-oe/recipes-connectivity/krb5/krb5/debian-suppress-usr-lib-in-krb5-config.patch b/meta-oe/recipes-connectivity/krb5/krb5/debian-suppress-usr-lib-in-krb5-config.patch new file mode 100644 index 000000000..f0182ee5d --- /dev/null +++ b/meta-oe/recipes-connectivity/krb5/krb5/debian-suppress-usr-lib-in-krb5-config.patch | |||
@@ -0,0 +1,48 @@ | |||
1 | Subject: [PATCH] debian: suppress /usr/lib in krb5-config | ||
2 | |||
3 | Upstream-Status: Pending | ||
4 | |||
5 | Handel multi-arch suppressions | ||
6 | |||
7 | The patch is from debian. | ||
8 | |||
9 | Signed-off-by: Jackie Huang <jackie.huang@windriver.com> | ||
10 | --- | ||
11 | src/build-tools/krb5-config.in | 14 +++++++++----- | ||
12 | 1 files changed, 9 insertions(+), 5 deletions(-) | ||
13 | |||
14 | diff --git a/src/build-tools/krb5-config.in b/src/build-tools/krb5-config.in | ||
15 | index f6184da..637bad7 100755 | ||
16 | --- a/src/build-tools/krb5-config.in | ||
17 | +++ b/src/build-tools/krb5-config.in | ||
18 | @@ -138,6 +138,7 @@ if test -n "$do_help"; then | ||
19 | echo " [--defktname] Show built-in default keytab name" | ||
20 | echo " [--defcktname] Show built-in default client keytab name" | ||
21 | echo " [--cflags] Compile time CFLAGS" | ||
22 | + echo " [--deps] Include dependent libraries" | ||
23 | echo " [--libs] List libraries required to link [LIBRARIES]" | ||
24 | echo "Libraries:" | ||
25 | echo " krb5 Kerberos 5 application" | ||
26 | @@ -209,11 +210,14 @@ fi | ||
27 | |||
28 | if test -n "$do_libs"; then | ||
29 | # Assumes /usr/lib is the standard library directory everywhere... | ||
30 | - if test "$libdir" = /usr/lib; then | ||
31 | - libdirarg= | ||
32 | - else | ||
33 | - libdirarg="-L$libdir" | ||
34 | - fi | ||
35 | + case $libdir in | ||
36 | + /usr/lib*) | ||
37 | + libdirarg= | ||
38 | + ;; | ||
39 | + *) | ||
40 | + libdirarg="-L$libdir" | ||
41 | + ;; | ||
42 | + esac | ||
43 | # Ugly gross hack for our build tree | ||
44 | lib_flags=`echo $CC_LINK | sed -e 's/\$(CC)//' \ | ||
45 | -e 's/\$(PURE)//' \ | ||
46 | -- | ||
47 | 1.7.1 | ||
48 | |||
diff --git a/meta-oe/recipes-connectivity/krb5/krb5/etc/default/krb5-admin-server b/meta-oe/recipes-connectivity/krb5/krb5/etc/default/krb5-admin-server new file mode 100644 index 000000000..283592913 --- /dev/null +++ b/meta-oe/recipes-connectivity/krb5/krb5/etc/default/krb5-admin-server | |||
@@ -0,0 +1,6 @@ | |||
1 | # Automatically generated. If you change anything in this file other than the | ||
2 | # values of RUN_KADMIND or DAEMON_ARGS, first run dpkg-reconfigure | ||
3 | # krb5-admin-server and disable managing the kadmin configuration with | ||
4 | # debconf. Otherwise, changes will be overwritten. | ||
5 | |||
6 | RUN_KADMIND=true | ||
diff --git a/meta-oe/recipes-connectivity/krb5/krb5/etc/default/krb5-kdc b/meta-oe/recipes-connectivity/krb5/krb5/etc/default/krb5-kdc new file mode 100644 index 000000000..310bfcf8a --- /dev/null +++ b/meta-oe/recipes-connectivity/krb5/krb5/etc/default/krb5-kdc | |||
@@ -0,0 +1,5 @@ | |||
1 | # Automatically generated. Only the value of DAEMON_ARGS will be preserved. | ||
2 | # If you change anything in this file other than DAEMON_ARGS, first run | ||
3 | # dpkg-reconfigure krb5-kdc and disable managing the KDC configuration with | ||
4 | # debconf. Otherwise, changes will be overwritten. | ||
5 | |||
diff --git a/meta-oe/recipes-connectivity/krb5/krb5/etc/init.d/krb5-admin-server b/meta-oe/recipes-connectivity/krb5/krb5/etc/init.d/krb5-admin-server new file mode 100755 index 000000000..79238d4f4 --- /dev/null +++ b/meta-oe/recipes-connectivity/krb5/krb5/etc/init.d/krb5-admin-server | |||
@@ -0,0 +1,140 @@ | |||
1 | #! /bin/sh | ||
2 | ### BEGIN INIT INFO | ||
3 | # Provides: krb5-admin-server | ||
4 | # Required-Start: $local_fs $remote_fs $network $syslog | ||
5 | # Required-Stop: $local_fs $remote_fs $network $syslog | ||
6 | # Should-Start: krb5-kdc | ||
7 | # Should-Stop: krb5-kdc | ||
8 | # Default-Start: 2 3 4 5 | ||
9 | # Default-Stop: 0 1 6 | ||
10 | # Short-Description: MIT Kerberos KDC administrative daemon | ||
11 | # Description: Starts, stops, or restarts the MIT Kerberos KDC | ||
12 | # administrative daemon (kadmind). This daemon answers | ||
13 | # requests from kadmin clients and allows administrators | ||
14 | # to create, delete, and modify principals in the KDC | ||
15 | # database. | ||
16 | ### END INIT INFO | ||
17 | |||
18 | # Author: Sam Hartman <hartmans@mit.edu> | ||
19 | # Author: Russ Allbery <rra@debian.org> | ||
20 | # | ||
21 | # Based on the /etc/init.d/skeleton template as found in initscripts version | ||
22 | # 2.86.ds1-15. | ||
23 | |||
24 | # June, 2012: Adopted for yocto <amy.fong@windriver.com> | ||
25 | |||
26 | PATH=/usr/sbin:/usr/bin:/sbin:/bin | ||
27 | DESC="Kerberos administrative servers" | ||
28 | NAME=kadmind | ||
29 | DAEMON=/usr/sbin/$NAME | ||
30 | DAEMON_ARGS="" | ||
31 | SCRIPTNAME=/etc/init.d/krb5-admin-server | ||
32 | DEFAULT=/etc/default/krb5-admin-server | ||
33 | |||
34 | # Exit if the package is not installed. | ||
35 | [ -x "$DAEMON" ] || exit 0 | ||
36 | |||
37 | # Read configuration if it is present. | ||
38 | [ -r "$DEFAULT" ] && . "$DEFAULT" | ||
39 | |||
40 | # Get the setting of VERBOSE and other rcS variables. | ||
41 | [ -f /etc/default/rcS ] && . /etc/default/rcS | ||
42 | |||
43 | . /etc/init.d/functions | ||
44 | |||
45 | ADMIN_SERVER_LOG=/var/log/kadmind.log | ||
46 | [ -f $ADMIN_SERVER_LOG ] && (test ! -x /sbin/restorecon \ | ||
47 | || /sbin/restorecon -F $ADMIN_SERVER_LOG) | ||
48 | |||
49 | # Return | ||
50 | # 0 if daemon has been started | ||
51 | # 1 if daemon was already running | ||
52 | # 2 if daemon could not be started | ||
53 | do_start() | ||
54 | { | ||
55 | start-stop-daemon --start --quiet --startas $DAEMON --name $NAME --test \ | ||
56 | > /dev/null || return 1 | ||
57 | start-stop-daemon --start --quiet --startas $DAEMON --name $NAME \ | ||
58 | -- $DAEMON_ARGS || return 2 | ||
59 | } | ||
60 | |||
61 | # Return | ||
62 | # 0 if daemon has been stopped | ||
63 | # 1 if daemon was already stopped | ||
64 | # 2 if daemon could not be stopped | ||
65 | # other if a failure occurred | ||
66 | do_stop() | ||
67 | { | ||
68 | start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --name $NAME | ||
69 | RETVAL="$?" | ||
70 | [ "$RETVAL" = 2 ] && return 2 | ||
71 | return "$RETVAL" | ||
72 | } | ||
73 | |||
74 | |||
75 | case "$1" in | ||
76 | start) | ||
77 | if [ "$RUN_KADMIND" = false ] ; then | ||
78 | if [ "$VERBOSE" != no ] ; then | ||
79 | echo "Not starting $DESC per configuration" | ||
80 | fi | ||
81 | exit 0 | ||
82 | fi | ||
83 | [ "$VERBOSE" != no ] && echo "Starting $DESC" "$NAME" | ||
84 | do_start | ||
85 | case "$?" in | ||
86 | 0|1) [ "$VERBOSE" != no ] && echo 0 ;; | ||
87 | 2) [ "$VERBOSE" != no ] && echo 1 ;; | ||
88 | esac | ||
89 | ;; | ||
90 | |||
91 | stop) | ||
92 | [ "$VERBOSE" != no ] && echo "Stopping $DESC" "$NAME" | ||
93 | do_stop | ||
94 | case "$?" in | ||
95 | 0|1) [ "$VERBOSE" != no ] && echo 0 ;; | ||
96 | 2) [ "$VERBOSE" != no ] && echo 1 ;; | ||
97 | esac | ||
98 | ;; | ||
99 | |||
100 | restart|force-reload) | ||
101 | if [ "$RUN_KADMIND" = false ] ; then | ||
102 | if [ "$VERBOSE" != no ] ; then | ||
103 | echo "Not restarting $DESC per configuration" | ||
104 | fi | ||
105 | exit 0 | ||
106 | fi | ||
107 | echo "Restarting $DESC" "$NAME" | ||
108 | do_stop | ||
109 | case "$?" in | ||
110 | 0|1) | ||
111 | do_start | ||
112 | case "$?" in | ||
113 | 0) [ "$VERBOSE" != no ] && echo 0 ;; | ||
114 | *) [ "$VERBOSE" != no ] && echo 1 ;; | ||
115 | esac | ||
116 | ;; | ||
117 | *) | ||
118 | echo 1 | ||
119 | ;; | ||
120 | esac | ||
121 | ;; | ||
122 | |||
123 | status) | ||
124 | pidofproc "$DAEMON" >/dev/null | ||
125 | status=$? | ||
126 | if [ $status -eq 0 ]; then | ||
127 | echo "$NAME is running." | ||
128 | else | ||
129 | echo "$NAME is not running." | ||
130 | fi | ||
131 | exit $status | ||
132 | ;; | ||
133 | |||
134 | *) | ||
135 | echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|status}" >&2 | ||
136 | exit 3 | ||
137 | ;; | ||
138 | esac | ||
139 | |||
140 | : | ||
diff --git a/meta-oe/recipes-connectivity/krb5/krb5/etc/init.d/krb5-kdc b/meta-oe/recipes-connectivity/krb5/krb5/etc/init.d/krb5-kdc new file mode 100755 index 000000000..865d1b970 --- /dev/null +++ b/meta-oe/recipes-connectivity/krb5/krb5/etc/init.d/krb5-kdc | |||
@@ -0,0 +1,133 @@ | |||
1 | #! /bin/sh | ||
2 | ### BEGIN INIT INFO | ||
3 | # Provides: krb5-kdc | ||
4 | # Required-Start: $local_fs $remote_fs $network $syslog | ||
5 | # Required-Stop: $local_fs $remote_fs $network $syslog | ||
6 | # X-Start-Before: $x-display-manager | ||
7 | # Default-Start: 2 3 4 5 | ||
8 | # Default-Stop: 0 1 6 | ||
9 | # Short-Description: MIT Kerberos KDC | ||
10 | # Description: Starts, stops, or restarts the MIT Kerberos KDC. This | ||
11 | # daemon responds to ticket requests from Kerberos | ||
12 | # clients. | ||
13 | ### END INIT INFO | ||
14 | |||
15 | # Author: Sam Hartman <hartmans@mit.edu> | ||
16 | # Author: Russ Allbery <rra@debian.org> | ||
17 | # | ||
18 | # Based on the /etc/init.d/skeleton template as found in initscripts version | ||
19 | # 2.86.ds1-15. | ||
20 | |||
21 | # June, 2012: Adopted for yocto <amy.fong@windriver.com> | ||
22 | |||
23 | PATH=/usr/sbin:/usr/bin:/sbin:/bin | ||
24 | DESC="Kerberos KDC" | ||
25 | NAME=krb5kdc | ||
26 | DAEMON=/usr/sbin/$NAME | ||
27 | DAEMON_ARGS="" | ||
28 | SCRIPTNAME=/etc/init.d/krb5-kdc | ||
29 | |||
30 | # Exit if the package is not installed. | ||
31 | [ -x "$DAEMON" ] || exit 0 | ||
32 | |||
33 | # Read configuration if it is present. | ||
34 | [ -r /etc/default/krb5-kdc ] && . /etc/default/krb5-kdc | ||
35 | |||
36 | # Get the setting of VERBOSE and other rcS variables. | ||
37 | [ -f /etc/default/rcS ] && . /etc/default/rcS | ||
38 | |||
39 | . /etc/init.d/functions | ||
40 | |||
41 | # Return | ||
42 | # 0 if daemon has been started | ||
43 | # 1 if daemon was already running | ||
44 | # 2 if daemon could not be started | ||
45 | do_start_kdc() | ||
46 | { | ||
47 | start-stop-daemon --start --quiet --startas $DAEMON --name $NAME --test \ | ||
48 | > /dev/null || return 1 | ||
49 | start-stop-daemon --start --quiet --startas $DAEMON --name $NAME \ | ||
50 | -- $DAEMON_ARGS || return 2 | ||
51 | } | ||
52 | |||
53 | |||
54 | # Return | ||
55 | # 0 if daemon has been stopped | ||
56 | # 1 if daemon was already stopped | ||
57 | # 2 if daemon could not be stopped | ||
58 | # other if a failure occurred | ||
59 | do_stop_kdc() | ||
60 | { | ||
61 | start-stop-daemon --stop --quiet --retry=TERM/30/KILL/5 --name $NAME | ||
62 | RETVAL="$?" | ||
63 | [ "$RETVAL" = 2 ] && return 2 | ||
64 | return "$RETVAL" | ||
65 | } | ||
66 | |||
67 | |||
68 | case "$1" in | ||
69 | start) | ||
70 | [ "$VERBOSE" != no ] && echo "Starting $DESC" "$NAME" | ||
71 | do_start_kdc | ||
72 | case "$?" in | ||
73 | 0|1) | ||
74 | [ "$VERBOSE" != no ] && echo 0 | ||
75 | ;; | ||
76 | 2) | ||
77 | [ "$VERBOSE" != no ] && echo 1 | ||
78 | ;; | ||
79 | esac | ||
80 | ;; | ||
81 | |||
82 | stop) | ||
83 | [ "$VERBOSE" != no ] && echo "Stopping $DESC" "$NAME" | ||
84 | do_stop_kdc | ||
85 | case "$?" in | ||
86 | 0|1) | ||
87 | [ "$VERBOSE" != no ] && echo "krb524d" | ||
88 | ;; | ||
89 | 2) | ||
90 | [ "$VERBOSE" != no ] && echo 1 | ||
91 | ;; | ||
92 | esac | ||
93 | ;; | ||
94 | |||
95 | restart|force-reload) | ||
96 | echo "Restarting $DESC" "$NAME" | ||
97 | do_stop_kdc | ||
98 | case "$?" in | ||
99 | 0|1) | ||
100 | do_start_kdc | ||
101 | case "$?" in | ||
102 | 0) | ||
103 | echo 0 | ||
104 | ;; | ||
105 | 1|2) | ||
106 | echo 1 | ||
107 | ;; | ||
108 | esac | ||
109 | ;; | ||
110 | *) | ||
111 | echo 1 | ||
112 | ;; | ||
113 | esac | ||
114 | ;; | ||
115 | |||
116 | status) | ||
117 | pidofproc "$DAEMON" >/dev/null | ||
118 | status=$? | ||
119 | if [ $status -eq 0 ]; then | ||
120 | echo "$NAME is running." | ||
121 | else | ||
122 | echo "$NAME is not running." | ||
123 | fi | ||
124 | exit $status | ||
125 | ;; | ||
126 | |||
127 | *) | ||
128 | echo "Usage: $SCRIPTNAME {start|stop|restart|force-reload|status}" >&2 | ||
129 | exit 3 | ||
130 | ;; | ||
131 | esac | ||
132 | |||
133 | : | ||
diff --git a/meta-oe/recipes-connectivity/krb5/krb5_1.11.3.bb b/meta-oe/recipes-connectivity/krb5/krb5_1.11.3.bb deleted file mode 100644 index 49b891784..000000000 --- a/meta-oe/recipes-connectivity/krb5/krb5_1.11.3.bb +++ /dev/null | |||
@@ -1,52 +0,0 @@ | |||
1 | SUMMARY = "A network authentication protocol" | ||
2 | HOMEPAGE = "http://web.mit.edu/Kerberos/" | ||
3 | SECTION = "console/network" | ||
4 | LICENSE = "MIT" | ||
5 | LIC_FILES_CHKSUM = "file://${S}/../NOTICE;md5=1d9c8180d79838c02eb5eb1a3b184eb9" | ||
6 | DEPENDS = "ncurses util-linux e2fsprogs e2fsprogs-native" | ||
7 | |||
8 | inherit autotools binconfig perlnative | ||
9 | |||
10 | PNBLACKLIST[krb5] = "BROKEN: doesn't build with B!=S" | ||
11 | |||
12 | SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}" | ||
13 | SRC_URI = "http://web.mit.edu/kerberos/dist/${BPN}/${SHRT_VER}/${BP}-signed.tar \ | ||
14 | file://0001-aclocal-Add-parameter-to-disable-keyutils-detection.patch \ | ||
15 | " | ||
16 | SRC_URI[md5sum] = "56f0ae274b285320b8a597cb89442449" | ||
17 | SRC_URI[sha256sum] = "9abd94bb94a70996da0f8d90408957154bb543271b097e86c63eb33e5f5751b5" | ||
18 | |||
19 | S = "${WORKDIR}/${P}/src/" | ||
20 | |||
21 | PACKAGECONFIG ??= "openssl" | ||
22 | PACKAGECONFIG[libedit] = "--with-libedit,--without-libedit,libedit" | ||
23 | PACKAGECONFIG[openssl] = "--with-pkinit-crypto-impl=openssl,,openssl" | ||
24 | PACKAGECONFIG[keyutils] = "--enable-keyutils,--disable-keyutils,keyutils" | ||
25 | |||
26 | EXTRA_OECONF += " --without-tcl --with-system-et --disable-rpath" | ||
27 | CACHED_CONFIGUREVARS += "krb5_cv_attr_constructor_destructor=yes ac_cv_func_regcomp=yes \ | ||
28 | ac_cv_printf_positional=yes ac_cv_file__etc_environment=yes \ | ||
29 | ac_cv_file__etc_TIMEZONE=no" | ||
30 | |||
31 | CFLAGS_append += "-DDESTRUCTOR_ATTR_WORKS=1 -I${STAGING_INCDIR}/et" | ||
32 | LDFLAGS_append += "-lpthread" | ||
33 | |||
34 | FILES_${PN}-doc += "${datadir}/examples" | ||
35 | FILES_${PN} += "${datadir}/gnats" | ||
36 | FILES_${PN}-dbg += "${libdir}/krb5/plugins/*/.debug" | ||
37 | |||
38 | krb5_do_unpack() { | ||
39 | # ${P}-signed.tar contains ${P}.tar.gz.asc and ${P}.tar.gz | ||
40 | tar xzf ${WORKDIR}/${P}.tar.gz -C ${WORKDIR}/ | ||
41 | } | ||
42 | |||
43 | python do_unpack() { | ||
44 | bb.build.exec_func('base_do_unpack', d) | ||
45 | bb.build.exec_func('krb5_do_unpack', d) | ||
46 | } | ||
47 | |||
48 | do_configure() { | ||
49 | gnu-configize --force | ||
50 | autoreconf | ||
51 | oe_runconf | ||
52 | } | ||
diff --git a/meta-oe/recipes-connectivity/krb5/krb5_1.12.2.bb b/meta-oe/recipes-connectivity/krb5/krb5_1.12.2.bb new file mode 100644 index 000000000..0b14d3cdf --- /dev/null +++ b/meta-oe/recipes-connectivity/krb5/krb5_1.12.2.bb | |||
@@ -0,0 +1,76 @@ | |||
1 | SUMMARY = "A network authentication protocol" | ||
2 | DESCRIPTION = "Kerberos is a system for authenticating users and services on a network. \ | ||
3 | Kerberos is a trusted third-party service. That means that there is a \ | ||
4 | third party (the Kerberos server) that is trusted by all the entities on \ | ||
5 | the network (users and services, usually called "principals"). \ | ||
6 | . \ | ||
7 | This is the MIT reference implementation of Kerberos V5. \ | ||
8 | . \ | ||
9 | This package contains the Kerberos key server (KDC). The KDC manages all \ | ||
10 | authentication credentials for a Kerberos realm, holds the master keys \ | ||
11 | for the realm, and responds to authentication requests. This package \ | ||
12 | should be installed on both master and slave KDCs." | ||
13 | |||
14 | HOMEPAGE = "http://web.mit.edu/Kerberos/" | ||
15 | SECTION = "console/network" | ||
16 | LICENSE = "MIT" | ||
17 | LIC_FILES_CHKSUM = "file://${S}/../NOTICE;md5=450c80c6258ce03387bd09df37638ebc" | ||
18 | DEPENDS = "ncurses util-linux e2fsprogs e2fsprogs-native" | ||
19 | |||
20 | inherit autotools-brokensep binconfig perlnative | ||
21 | |||
22 | SHRT_VER = "${@oe.utils.trim_version("${PV}", 2)}" | ||
23 | SRC_URI = "http://web.mit.edu/kerberos/dist/${BPN}/${SHRT_VER}/${BP}-signed.tar \ | ||
24 | file://0001-aclocal-Add-parameter-to-disable-keyutils-detection.patch \ | ||
25 | file://debian-suppress-usr-lib-in-krb5-config.patch;striplevel=2 \ | ||
26 | file://crosscompile_nm.patch \ | ||
27 | file://etc/init.d/krb5-kdc \ | ||
28 | file://etc/init.d/krb5-admin-server \ | ||
29 | file://etc/default/krb5-kdc \ | ||
30 | file://etc/default/krb5-admin-server \ | ||
31 | " | ||
32 | SRC_URI[md5sum] = "357f1312b7720a0a591e22db0f7829fe" | ||
33 | SRC_URI[sha256sum] = "09bd180107b5c2b3b7378c57c023fb02a103d4cac39d6f2dd600275d7a4f3744" | ||
34 | |||
35 | S = "${WORKDIR}/${P}/src/" | ||
36 | |||
37 | PACKAGECONFIG ??= "openssl" | ||
38 | PACKAGECONFIG[libedit] = "--with-libedit,--without-libedit,libedit" | ||
39 | PACKAGECONFIG[openssl] = "--with-pkinit-crypto-impl=openssl,,openssl" | ||
40 | PACKAGECONFIG[keyutils] = "--enable-keyutils,--disable-keyutils,keyutils" | ||
41 | PACKAGECONFIG[ldap] = "--with-ldap,--without-ldap,openldap" | ||
42 | PACKAGECONFIG[readline] = "--with-readline,--without-readline,readline" | ||
43 | |||
44 | EXTRA_OECONF += " --without-tcl --with-system-et --disable-rpath" | ||
45 | CACHED_CONFIGUREVARS += "krb5_cv_attr_constructor_destructor=yes ac_cv_func_regcomp=yes \ | ||
46 | ac_cv_printf_positional=yes ac_cv_file__etc_environment=yes \ | ||
47 | ac_cv_file__etc_TIMEZONE=no" | ||
48 | |||
49 | CFLAGS_append += "-DDESTRUCTOR_ATTR_WORKS=1 -I${STAGING_INCDIR}/et" | ||
50 | LDFLAGS_append += "-lpthread" | ||
51 | |||
52 | FILES_${PN} += "${datadir}/gnats" | ||
53 | FILES_${PN}-doc += "${datadir}/examples" | ||
54 | FILES_${PN}-dbg += "${libdir}/krb5/plugins/*/.debug" | ||
55 | |||
56 | krb5_do_unpack() { | ||
57 | # ${P}-signed.tar contains ${P}.tar.gz.asc and ${P}.tar.gz | ||
58 | tar xzf ${WORKDIR}/${P}.tar.gz -C ${WORKDIR}/ | ||
59 | } | ||
60 | |||
61 | python do_unpack() { | ||
62 | bb.build.exec_func('base_do_unpack', d) | ||
63 | bb.build.exec_func('krb5_do_unpack', d) | ||
64 | } | ||
65 | |||
66 | do_configure() { | ||
67 | gnu-configize --force | ||
68 | autoreconf | ||
69 | oe_runconf | ||
70 | } | ||
71 | |||
72 | do_install_append() { | ||
73 | mkdir -p ${D}/etc/init.d ${D}/etc/default | ||
74 | install -m 0755 ${WORKDIR}/etc/init.d/* ${D}/etc/init.d | ||
75 | install -m 0644 ${WORKDIR}/etc/default/* ${D}/etc/default | ||
76 | } | ||