meta-openembedded/meta-oe/recipes-crypto/libmcrypt/libmcrypt_2.5.8.bb
mark.yang 0d2b2b54fc
libmcrypt: fix build with gcc-15.0.1
* see more details: http://errors.yoctoproject.org/Errors/Details/850150/
    des.c:199:9: error: too many arguments to function 'spinit'; expected 0, have 1
    199 |         spinit(key);
        |         ^~~~~~ ~~~
    des.c:38:56: note: declared here
    38 | static void permute_ip(), permute_fp(), perminit_ip(), spinit(),
        |                                                        ^~~~~~

* Move function forward declarations to .h file to fix the following errors:
    tripledes.c: In function '_mcrypt_desinit':
    tripledes.c:198:18: error: passing argument 1 of 'perminit' from incompatible pointer type [-Wincompatible-pointer-types]
    198 |         perminit(&key->iperm, ip);
        |                  ^~~~~~~~~~~
        |                  |
        |                  char (*)[16][16][8]
    In file included from tripledes.c:23:
    tripledes.h:11:27: note: expected 'char (*)[16][8]' but argument is of type 'char (*)[16][16][8]'
    11 | static void perminit(char perm[][16][8], char p[64]);
        |                      ~~~~~^~~~~~~~~~~~~
    tripledes.c:199:18: error: passing argument 1 of 'perminit' from incompatible pointer type [-Wincompatible-pointer-types]
    199 |         perminit(&key->fperm, fp);
        |                  ^~~~~~~~~~~
        |                  |
        |                  char (*)[16][16][8]
    tripledes.h:11:27: note: expected 'char (*)[16][8]' but argument is of type 'char (*)[16][16][8]'
    11 | static void perminit(char perm[][16][8], char p[64]);
        |                      ~~~~~^~~~~~~~~~~~~

	Changed parameter from &key to key
	perminit(key->iperm, ip);
	perminit(key->fperm, fp);

Signed-off-by: mark.yang <mark.yang@lge.com>
Signed-off-by: Khem Raj <raj.khem@gmail.com>
2025-04-01 20:43:27 -07:00

35 lines
1.1 KiB
BlitzBasic

SUMMARY = "Replacement for the old crypt() package and crypt(1) command, with extensions"
HOMEPAGE = "http://mcrypt.sourceforge.net/"
LICENSE = "LGPL-2.1-only"
LIC_FILES_CHKSUM = "file://COPYING.LIB;md5=bbb461211a33b134d42ed5ee802b37ff"
DEPENDS = "libtool"
SRC_URI = " \
${SOURCEFORGE_MIRROR}/project/mcrypt/Libmcrypt/${PV}/libmcrypt-${PV}.tar.gz \
file://0001-fix-parameter-related-unexpected-error-in-gcc-15.0.1.patch \
"
SRC_URI[sha256sum] = "e4eb6c074bbab168ac47b947c195ff8cef9d51a211cdd18ca9c9ef34d27a373e"
UPSTREAM_CHECK_URI = "https://sourceforge.net/projects/mcrypt/files/Libmcrypt/"
UPSTREAM_CHECK_REGEX = "Libmcrypt/(?P<pver>\d+(\.\d+)+)/"
inherit autotools-brokensep gettext binconfig multilib_script
CFLAGS += "-Wno-error=implicit-int"
do_configure() {
install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.guess ${S}
install -m 0755 ${STAGING_DATADIR_NATIVE}/gnu-config/config.sub ${S}
aclocal
libtoolize --automake --copy --force
autoconf
autoheader
automake -a
oe_runconf
}
CLEANBROKEN = "1"
MULTILIB_SCRIPTS = "${PN}-dev:${bindir}/libmcrypt-config"