libtasn1: Compile into asn1 module
Create a wrapper file that specifies the module license. Set up the makefile so it is built. Signed-off-by: Daniel Axtens <dja@axtens.net> Signed-off-by: Gary Lin <glin@suse.com> Reviewed-by: Daniel Kiper <daniel.kiper@oracle.com> Tested-by: Stefan Berger <stefanb@linux.ibm.com>
This commit is contained in:
parent
8a0fedef21
commit
504058e82a
19
autogen.sh
19
autogen.sh
@ -51,6 +51,25 @@ for x in mpi-asm-defs.h mpih-add1.c mpih-sub1.c mpih-mul1.c mpih-mul2.c mpih-mul
|
|||||||
cp grub-core/lib/libgcrypt-grub/mpi/generic/"$x" grub-core/lib/libgcrypt-grub/mpi/"$x"
|
cp grub-core/lib/libgcrypt-grub/mpi/generic/"$x" grub-core/lib/libgcrypt-grub/mpi/"$x"
|
||||||
done
|
done
|
||||||
|
|
||||||
|
echo "Importing libtasn1..."
|
||||||
|
if [ -d grub-core/lib/libtasn1-grub ]; then
|
||||||
|
rm -rf grub-core/lib/libtasn1-grub
|
||||||
|
fi
|
||||||
|
|
||||||
|
mkdir -p grub-core/lib/libtasn1-grub/lib
|
||||||
|
cp grub-core/lib/libtasn1/lib/*.[ch] grub-core/lib/libtasn1-grub/lib
|
||||||
|
cp grub-core/lib/libtasn1/libtasn1.h grub-core/lib/libtasn1-grub/
|
||||||
|
|
||||||
|
for patch in \
|
||||||
|
0001-libtasn1-disable-code-not-needed-in-grub.patch \
|
||||||
|
0002-libtasn1-replace-strcat-with-strcpy-in-_asn1_str_cat.patch \
|
||||||
|
0003-libtasn1-replace-strcat-with-_asn1_str_cat.patch \
|
||||||
|
0004-libtasn1-adjust-the-header-paths-in-libtasn1.h.patch \
|
||||||
|
0005-libtasn1-Use-grub_divmod64-for-division.patch \
|
||||||
|
0006-libtasn1-fix-the-potential-buffer-overrun.patch ; do
|
||||||
|
patch -p1 -i grub-core/lib/libtasn1-patches/$patch
|
||||||
|
done
|
||||||
|
|
||||||
echo "Generating Automake input..."
|
echo "Generating Automake input..."
|
||||||
|
|
||||||
# Automake doesn't like including files from a path outside the project.
|
# Automake doesn't like including files from a path outside the project.
|
||||||
|
|||||||
@ -2606,3 +2606,18 @@ module = {
|
|||||||
enable = efi;
|
enable = efi;
|
||||||
depends = part_gpt;
|
depends = part_gpt;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
module = {
|
||||||
|
name = asn1;
|
||||||
|
common = lib/libtasn1-grub/lib/decoding.c;
|
||||||
|
common = lib/libtasn1-grub/lib/coding.c;
|
||||||
|
common = lib/libtasn1-grub/lib/element.c;
|
||||||
|
common = lib/libtasn1-grub/lib/structure.c;
|
||||||
|
common = lib/libtasn1-grub/lib/parser_aux.c;
|
||||||
|
common = lib/libtasn1-grub/lib/gstr.c;
|
||||||
|
common = lib/libtasn1-grub/lib/errors.c;
|
||||||
|
common = lib/libtasn1_wrap/wrap.c;
|
||||||
|
cflags = '$(CFLAGS_POSIX) $(CFLAGS_GNULIB)';
|
||||||
|
/* -Wno-type-limits comes from configure.ac of libtasn1 */
|
||||||
|
cppflags = '$(CPPFLAGS_POSIX) $(CPPFLAGS_GNULIB) -I$(srcdir)/lib/libtasn1-grub -I$(srcdir)/lib/libtasn1-grub/lib -Wno-type-limits';
|
||||||
|
};
|
||||||
|
|||||||
27
grub-core/lib/libtasn1_wrap/wrap.c
Normal file
27
grub-core/lib/libtasn1_wrap/wrap.c
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
/*
|
||||||
|
* GRUB -- GRand Unified Bootloader
|
||||||
|
* Copyright (C) 2020 IBM Corporation
|
||||||
|
* Copyright (C) 2024 Free Software Foundation, Inc.
|
||||||
|
*
|
||||||
|
* GRUB is free software: you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation, either version 3 of the License, or
|
||||||
|
* (at your option) any later version.
|
||||||
|
*
|
||||||
|
* GRUB is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU General Public License
|
||||||
|
* along with GRUB. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <grub/dl.h>
|
||||||
|
|
||||||
|
/*
|
||||||
|
* libtasn1 is provided under LGPL2.1+, which is compatible
|
||||||
|
* with GPL3+. As GRUB as a whole is under GPL3+, this module
|
||||||
|
* is therefore under GPL3+ also.
|
||||||
|
*/
|
||||||
|
GRUB_MOD_LICENSE ("GPLv3+");
|
||||||
Loading…
x
Reference in New Issue
Block a user