diff options
| -rw-r--r-- | meta/packages/rpm/files/cross_libpaths.patch | 145 | ||||
| -rw-r--r-- | meta/packages/rpm/files/external-tools.patch | 108 | ||||
| -rw-r--r-- | meta/packages/rpm/rpm-native_4.4.2.3.bb | 10 | ||||
| -rw-r--r-- | meta/packages/rpm/rpm_4.4.2.3.bb | 84 |
4 files changed, 347 insertions, 0 deletions
diff --git a/meta/packages/rpm/files/cross_libpaths.patch b/meta/packages/rpm/files/cross_libpaths.patch new file mode 100644 index 0000000000..8cc34f2a74 --- /dev/null +++ b/meta/packages/rpm/files/cross_libpaths.patch | |||
| @@ -0,0 +1,145 @@ | |||
| 1 | Index: rpm-4.4.2.3/configure.ac | ||
| 2 | =================================================================== | ||
| 3 | --- rpm-4.4.2.3.orig/configure.ac 2008-08-17 11:40:29.000000000 +0100 | ||
| 4 | +++ rpm-4.4.2.3/configure.ac 2008-08-17 11:40:29.000000000 +0100 | ||
| 5 | @@ -326,10 +326,8 @@ | ||
| 6 | |||
| 7 | localdone= | ||
| 8 | |||
| 9 | -dirs=$prefix | ||
| 10 | if test "$cross_compiling" != "yes"; then | ||
| 11 | - dirs="$dirs /usr/local" | ||
| 12 | -fi | ||
| 13 | +dirs="$prefix /usr/local" | ||
| 14 | for dir in $dirs | ||
| 15 | do | ||
| 16 | case $dir in | ||
| 17 | @@ -371,6 +369,7 @@ | ||
| 18 | else | ||
| 19 | AC_MSG_RESULT(no) | ||
| 20 | fi | ||
| 21 | +fi | ||
| 22 | |||
| 23 | dnl | ||
| 24 | dnl Check for features | ||
| 25 | @@ -473,7 +472,7 @@ | ||
| 26 | AC_CHECK_HEADER([beecrypt/api.h], [ | ||
| 27 | AC_DEFINE(HAVE_BEECRYPT_API_H, 1, [Define to 1 if you have the <beecrypt/api.h> header file.]) | ||
| 28 | ]) | ||
| 29 | - WITH_BEECRYPT_INCLUDE="-I${includedir}/beecrypt" | ||
| 30 | + WITH_BEECRYPT_INCLUDE="" | ||
| 31 | WITH_BEECRYPT_LIB="-lbeecrypt" | ||
| 32 | ]) | ||
| 33 | ],[ | ||
| 34 | @@ -506,7 +505,7 @@ | ||
| 35 | AC_CHECK_LIB(neon, ne_send_request_chunk, [ | ||
| 36 | AC_DEFINE(HAVE_NEON_NE_SEND_REQUEST_CHUNK, 1, [Define to 1 if you have ne_send_request_chunk() in libneon.]) | ||
| 37 | ]) | ||
| 38 | - WITH_NEON_INCLUDE="-I${includedir}/neon" | ||
| 39 | + WITH_NEON_INCLUDE="" | ||
| 40 | WITH_NEON_LIB="-lneon" | ||
| 41 | ]) | ||
| 42 | ],[ | ||
| 43 | Index: rpm-4.4.2.3/rpmio/Makefile.am | ||
| 44 | =================================================================== | ||
| 45 | --- rpm-4.4.2.3.orig/rpmio/Makefile.am 2008-04-01 08:28:22.000000000 +0100 | ||
| 46 | +++ rpm-4.4.2.3/rpmio/Makefile.am 2008-08-17 11:40:29.000000000 +0100 | ||
| 47 | @@ -26,8 +26,6 @@ | ||
| 48 | |||
| 49 | BEECRYPTLOBJS = $(shell test X"@WITH_BEECRYPT_SUBDIR@" != X && cat $(top_builddir)/@WITH_BEECTYPT_SUBDIR@/listobjs) | ||
| 50 | |||
| 51 | -LDFLAGS = -L$(RPM_BUILD_ROOT)$(usrlibdir) -L$(DESTDIR)$(usrlibdir) | ||
| 52 | - | ||
| 53 | usrlibdir = $(libdir)@MARK64@ | ||
| 54 | usrlib_LTLIBRARIES = librpmio.la | ||
| 55 | librpmio_la_SOURCES = \ | ||
| 56 | Index: rpm-4.4.2.3/rpmio/rpmio_internal.h | ||
| 57 | =================================================================== | ||
| 58 | --- rpm-4.4.2.3.orig/rpmio/rpmio_internal.h 2008-04-01 08:28:22.000000000 +0100 | ||
| 59 | +++ rpm-4.4.2.3/rpmio/rpmio_internal.h 2008-08-17 11:40:29.000000000 +0100 | ||
| 60 | @@ -12,22 +12,22 @@ | ||
| 61 | #if HAVE_BEECRYPT_API_H | ||
| 62 | #include <api.h> | ||
| 63 | #else | ||
| 64 | -#include <beecrypt.api.h> | ||
| 65 | +#include <beecrypt/beecrypt.api.h> | ||
| 66 | #endif | ||
| 67 | |||
| 68 | #include <rpmpgp.h> | ||
| 69 | #include <rpmsw.h> | ||
| 70 | |||
| 71 | /* Drag in the beecrypt includes. */ | ||
| 72 | -#include <beecrypt.h> | ||
| 73 | -#include <base64.h> | ||
| 74 | -#include <dsa.h> | ||
| 75 | -#include <endianness.h> | ||
| 76 | -#include <md5.h> | ||
| 77 | -#include <mp.h> | ||
| 78 | -#include <rsa.h> | ||
| 79 | -#include <rsapk.h> | ||
| 80 | -#include <sha1.h> | ||
| 81 | +#include <beecrypt/beecrypt.h> | ||
| 82 | +#include <beecrypt/base64.h> | ||
| 83 | +#include <beecrypt/dsa.h> | ||
| 84 | +#include <beecrypt/endianness.h> | ||
| 85 | +#include <beecrypt/md5.h> | ||
| 86 | +#include <beecrypt/mp.h> | ||
| 87 | +#include <beecrypt/rsa.h> | ||
| 88 | +#include <beecrypt/rsapk.h> | ||
| 89 | +#include <beecrypt/sha1.h> | ||
| 90 | #if HAVE_BEECRYPT_API_H | ||
| 91 | #include <sha256.h> | ||
| 92 | #include <sha384.h> | ||
| 93 | Index: rpm-4.4.2.3/Makefile.am | ||
| 94 | =================================================================== | ||
| 95 | --- rpm-4.4.2.3.orig/Makefile.am 2008-08-17 11:42:36.000000000 +0100 | ||
| 96 | +++ rpm-4.4.2.3/Makefile.am 2008-08-17 11:42:50.000000000 +0100 | ||
| 97 | @@ -10,7 +10,7 @@ | ||
| 98 | po/*.in po/*.po po/rpm.pot \ | ||
| 99 | rpm.magic rpmpopt-$(VERSION) rpmqv.c | ||
| 100 | |||
| 101 | -SUBDIRS = po misc @WITH_ZLIB_SUBDIR@ @WITH_ELFUTILS_SUBDIR@ @WITH_MAGIC_SUBDIR@ @WITH_DB_SUBDIR@ @WITH_SQLITE3_SUBDIR@ @WITH_POPT_SUBDIR@ @WITH_BEECRYPT_SUBDIR@ @WITH_NEON_SUBDIR@ lua rpmio rpmdb lib build @WITH_PYTHON_SUBDIR@ tools scripts doc . | ||
| 102 | +SUBDIRS = po misc @WITH_ZLIB_SUBDIR@ @WITH_ELFUTILS_SUBDIR@ @WITH_MAGIC_SUBDIR@ @WITH_DB_SUBDIR@ @WITH_SQLITE3_SUBDIR@ @WITH_POPT_SUBDIR@ @WITH_BEECRYPT_SUBDIR@ @WITH_NEON_SUBDIR@ rpmio rpmdb lib build @WITH_PYTHON_SUBDIR@ tools scripts doc . | ||
| 103 | |||
| 104 | INCLUDES = \ | ||
| 105 | -I$(top_srcdir)/build \ | ||
| 106 | Index: rpm-4.4.2.3/rpmdb/Makefile.am | ||
| 107 | =================================================================== | ||
| 108 | --- rpm-4.4.2.3.orig/rpmdb/Makefile.am 2008-08-17 11:43:36.000000000 +0100 | ||
| 109 | +++ rpm-4.4.2.3/rpmdb/Makefile.am 2008-08-17 11:43:57.000000000 +0100 | ||
| 110 | @@ -41,9 +41,6 @@ | ||
| 111 | # XXX watchout, ../db3/libdb.la created by this Makefile may surprise | ||
| 112 | libdb_la = $(top_builddir)/$(WITH_DB_SUBDIR)/libdb.la | ||
| 113 | |||
| 114 | -# XXX grrr, RPM_BUILD_ROOT prevents build pollution if/when -lrpm different | ||
| 115 | -LDFLAGS = -L$(RPM_BUILD_ROOT)$(usrlibdir) -L$(DESTDIR)$(usrlibdir) | ||
| 116 | - | ||
| 117 | usrlibdir = $(libdir)@MARK64@ | ||
| 118 | usrlib_LTLIBRARIES = librpmdb.la | ||
| 119 | librpmdb_la_SOURCES = \ | ||
| 120 | Index: rpm-4.4.2.3/lib/Makefile.am | ||
| 121 | =================================================================== | ||
| 122 | --- rpm-4.4.2.3.orig/lib/Makefile.am 2008-08-17 11:46:43.000000000 +0100 | ||
| 123 | +++ rpm-4.4.2.3/lib/Makefile.am 2008-08-17 11:46:51.000000000 +0100 | ||
| 124 | @@ -29,8 +29,6 @@ | ||
| 125 | mylibs = librpm.la | ||
| 126 | LIBS = | ||
| 127 | |||
| 128 | -LDFLAGS = -L$(RPM_BUILD_ROOT)$(usrlibdir) -L$(DESTDIR)$(usrlibdir) | ||
| 129 | - | ||
| 130 | usrlibdir = $(libdir)@MARK64@ | ||
| 131 | usrlib_LTLIBRARIES = librpm.la | ||
| 132 | librpm_la_SOURCES = \ | ||
| 133 | Index: rpm-4.4.2.3/build/Makefile.am | ||
| 134 | =================================================================== | ||
| 135 | --- rpm-4.4.2.3.orig/build/Makefile.am 2008-08-17 11:47:37.000000000 +0100 | ||
| 136 | +++ rpm-4.4.2.3/build/Makefile.am 2008-08-17 11:47:43.000000000 +0100 | ||
| 137 | @@ -22,8 +22,6 @@ | ||
| 138 | pkginc_HEADERS = rpmbuild.h rpmfc.h rpmfile.h rpmspec.h | ||
| 139 | noinst_HEADERS = buildio.h | ||
| 140 | |||
| 141 | -LDFLAGS = -L$(RPM_BUILD_ROOT)$(usrlibdir) -L$(DESTDIR)$(usrlibdir) | ||
| 142 | - | ||
| 143 | usrlibdir = $(libdir)@MARK64@ | ||
| 144 | usrlib_LTLIBRARIES = librpmbuild.la | ||
| 145 | librpmbuild_la_SOURCES = \ | ||
diff --git a/meta/packages/rpm/files/external-tools.patch b/meta/packages/rpm/files/external-tools.patch new file mode 100644 index 0000000000..e967b872fa --- /dev/null +++ b/meta/packages/rpm/files/external-tools.patch | |||
| @@ -0,0 +1,108 @@ | |||
| 1 | Index: rpm-4.4.2.3/configure.ac | ||
| 2 | =================================================================== | ||
| 3 | --- rpm-4.4.2.3.orig/configure.ac 2008-04-01 08:30:14.000000000 +0100 | ||
| 4 | +++ rpm-4.4.2.3/configure.ac 2008-08-17 10:57:30.000000000 +0100 | ||
| 5 | @@ -529,7 +529,7 @@ | ||
| 6 | WITH_MAGIC_INCLUDE= | ||
| 7 | WITH_MAGIC_LIB= | ||
| 8 | |||
| 9 | -if test -d file ; then | ||
| 10 | +if test -d file_disabled ; then | ||
| 11 | WITH_RPMFILE=rpmfile | ||
| 12 | WITH_MAGIC_SUBDIR=file | ||
| 13 | WITH_MAGIC_INCLUDE="-I\${top_srcdir}/${WITH_MAGIC_SUBDIR}/src" | ||
| 14 | @@ -1307,7 +1307,7 @@ | ||
| 15 | dnl # XXX Propagate -lucb to popt ... | ||
| 16 | dnl export LIBS INCPATH CONFIG_SITE | ||
| 17 | |||
| 18 | -AC_CONFIG_SUBDIRS(popt file db3) | ||
| 19 | +AC_CONFIG_SUBDIRS(db/dist) | ||
| 20 | |||
| 21 | AC_CONFIG_FILES([ Doxyfile Makefile rpmrc macros platform rpmpopt | ||
| 22 | rpmio/Makefile rpmdb/Makefile lib/Makefile build/Makefile | ||
| 23 | Index: rpm-4.4.2.3/db/dist/configure.ac | ||
| 24 | =================================================================== | ||
| 25 | --- rpm-4.4.2.3.orig/db/dist/configure.ac 2008-04-01 08:28:21.000000000 +0100 | ||
| 26 | +++ rpm-4.4.2.3/db/dist/configure.ac 2008-08-17 09:54:37.000000000 +0100 | ||
| 27 | @@ -11,14 +11,6 @@ | ||
| 28 | AC_CANONICAL_HOST() | ||
| 29 | AC_ARG_PROGRAM() | ||
| 30 | |||
| 31 | -# Don't build in the top-level or dist directories. | ||
| 32 | -AC_MSG_CHECKING(if building in the top-level or dist directories) | ||
| 33 | -if [ test -d db_archive -o -f configure.ac ] ; then | ||
| 34 | - AC_MSG_RESULT(yes) | ||
| 35 | - AC_MSG_ERROR( | ||
| 36 | - [Berkeley DB should not be built in the top-level or dist directories.]) | ||
| 37 | -fi | ||
| 38 | -AC_MSG_RESULT(no) | ||
| 39 | |||
| 40 | # Substitution variables. | ||
| 41 | AC_SUBST(ADDITIONAL_INCS) | ||
| 42 | @@ -281,7 +273,7 @@ | ||
| 43 | AC_PROG_LIBTOOL | ||
| 44 | |||
| 45 | SOFLAGS="-rpath \$(libdir)" | ||
| 46 | -LIBTOOL_PROG="${SHELL} ./libtool" | ||
| 47 | +LIBTOOL_PROG="${SHELL} ./$host_alias-libtool" | ||
| 48 | |||
| 49 | # Set SOSUFFIX and friends | ||
| 50 | SOSUFFIX_CONFIG | ||
| 51 | @@ -297,7 +289,7 @@ | ||
| 52 | MAKEFILE_XSOLINK="\$(LIBTOOL) --mode=link ${MAKEFILE_CXXLINK} -avoid-version" | ||
| 53 | MAKEFILE_CXXLINK="\$(LIBTOOL) --mode=link ${MAKEFILE_CXXLINK}" | ||
| 54 | |||
| 55 | -LIBTOOL="\$(SHELL) ./libtool" | ||
| 56 | +LIBTOOL="\$(SHELL) ./$host_alias-libtool" | ||
| 57 | |||
| 58 | case "$host_os" in | ||
| 59 | cygwin* | mingw*) | ||
| 60 | Index: rpm-4.4.2.3/db/dist/aclocal/options.ac | ||
| 61 | =================================================================== | ||
| 62 | --- rpm-4.4.2.3.orig/db/dist/aclocal/options.ac 2008-08-17 09:57:49.000000000 +0100 | ||
| 63 | +++ rpm-4.4.2.3/db/dist/aclocal/options.ac 2008-08-17 09:57:59.000000000 +0100 | ||
| 64 | @@ -277,10 +277,6 @@ | ||
| 65 | |||
| 66 | # Uniquename excludes C++, Java, RPC. | ||
| 67 | if test "$db_cv_uniquename" = "yes"; then | ||
| 68 | - if test "$db_cv_rpc" = "yes"; then | ||
| 69 | - AC_MSG_ERROR( | ||
| 70 | - [--with-uniquename is not compatible with --enable-rpc]) | ||
| 71 | - fi | ||
| 72 | if test "$db_cv_cxx" = "yes"; then | ||
| 73 | AC_MSG_ERROR( | ||
| 74 | [--with-uniquename is not compatible with --enable-cxx]) | ||
| 75 | Index: rpm-4.4.2.3/db/dist/aclocal/rpc.ac | ||
| 76 | =================================================================== | ||
| 77 | --- rpm-4.4.2.3.orig/db/dist/aclocal/rpc.ac 2008-08-17 10:46:26.000000000 +0100 | ||
| 78 | +++ rpm-4.4.2.3/db/dist/aclocal/rpc.ac 2008-08-17 10:46:47.000000000 +0100 | ||
| 79 | @@ -60,6 +60,7 @@ | ||
| 80 | -e 's/^}/__dbsrv_timeout(0);}/' \ | ||
| 81 | -e '}' \ | ||
| 82 | -e '1,/^#include/s/^#include/#include "db_config.h"\ | ||
| 83 | +#include "db_int_def.h"\ | ||
| 84 | &/' > db_server_svc.c | ||
| 85 | |||
| 86 | $RPCGEN -c $XDR_FILE | | ||
| 87 | Index: rpm-4.4.2.3/tools/rpmfile.c | ||
| 88 | =================================================================== | ||
| 89 | --- rpm-4.4.2.3.orig/tools/rpmfile.c 2008-08-17 11:01:51.000000000 +0100 | ||
| 90 | +++ rpm-4.4.2.3/tools/rpmfile.c 2008-08-17 11:03:07.000000000 +0100 | ||
| 91 | @@ -29,7 +29,7 @@ | ||
| 92 | * file - find type of a file or files - main program. | ||
| 93 | */ | ||
| 94 | |||
| 95 | -#include "file.h" | ||
| 96 | +#include "../file/src/file.h" | ||
| 97 | #include "magic.h" | ||
| 98 | |||
| 99 | #include <stdio.h> | ||
| 100 | @@ -69,7 +69,7 @@ | ||
| 101 | |||
| 102 | #include <netinet/in.h> /* for byte swapping */ | ||
| 103 | |||
| 104 | -#include "patchlevel.h" | ||
| 105 | +#include "../file/src/patchlevel.h" | ||
| 106 | |||
| 107 | #ifndef lint | ||
| 108 | FILE_RCSID("@(#)$Id: file.c,v 1.96 2005/03/06 05:58:22 christos Exp $") | ||
diff --git a/meta/packages/rpm/rpm-native_4.4.2.3.bb b/meta/packages/rpm/rpm-native_4.4.2.3.bb new file mode 100644 index 0000000000..f122a47aa9 --- /dev/null +++ b/meta/packages/rpm/rpm-native_4.4.2.3.bb | |||
| @@ -0,0 +1,10 @@ | |||
| 1 | require rpm_${PV}.bb | ||
| 2 | inherit native | ||
| 3 | |||
| 4 | DEPENDS = "beecrypt-native zlib-native file-native popt-native" | ||
| 5 | |||
| 6 | PR = "r2" | ||
| 7 | |||
| 8 | export sharedstatedir = "${layout_sharedstatedir}" | ||
| 9 | export localstatedir = "${layout_localstatedir}" | ||
| 10 | |||
diff --git a/meta/packages/rpm/rpm_4.4.2.3.bb b/meta/packages/rpm/rpm_4.4.2.3.bb new file mode 100644 index 0000000000..b04b500b86 --- /dev/null +++ b/meta/packages/rpm/rpm_4.4.2.3.bb | |||
| @@ -0,0 +1,84 @@ | |||
| 1 | DESCRIPTION = "The RPM Package Manager." | ||
| 2 | HOMEPAGE = "http://rpm.org/" | ||
| 3 | LICENSE = "LGPL GPL" | ||
| 4 | DEPENDS = "zlib beecrypt file popt" | ||
| 5 | PR = "r1" | ||
| 6 | |||
| 7 | SRC_URI = "http://www.rpm.org/releases/rpm-4.4.x/rpm-4.4.2.3.tar.gz \ | ||
| 8 | file://external-tools.patch;patch=1 \ | ||
| 9 | file://cross_libpaths.patch;patch=1" | ||
| 10 | |||
| 11 | inherit autotools gettext | ||
| 12 | |||
| 13 | S = "${WORKDIR}/rpm-${PV}" | ||
| 14 | |||
| 15 | acpaths = "-I ${S}/db/dist/aclocal -I ${S}/db/dist/aclocal_java" | ||
| 16 | |||
| 17 | EXTRA_OECONF = "--without-python \ | ||
| 18 | --without-apidocs \ | ||
| 19 | --without-selinux \ | ||
| 20 | --without-lua \ | ||
| 21 | --without-dmalloc \ | ||
| 22 | --without-efence" | ||
| 23 | |||
| 24 | # Handle the db MUTEX settings here, the POSIX library is | ||
| 25 | # the default - "POSIX/pthreads/library". | ||
| 26 | # Don't ignore the nice SWP instruction on the ARM: | ||
| 27 | # These enable the ARM assembler mutex code, this won't | ||
| 28 | # work with thumb compilation... | ||
| 29 | ARM_MUTEX = "--with-mutex=ARM/gcc-assembly" | ||
| 30 | MUTEX = "" | ||
| 31 | MUTEX_arm = "${ARM_MUTEX}" | ||
| 32 | MUTEX_armeb = "${ARM_MUTEX}" | ||
| 33 | EXTRA_OECONF += "${MUTEX}" | ||
| 34 | |||
| 35 | do_configure () { | ||
| 36 | rm ${S}/popt/ -Rf | ||
| 37 | rm ${S}/db/dist/configure.in -f | ||
| 38 | cd ${S}/db/dist/aclocal | ||
| 39 | rm libtool* -f | ||
| 40 | for i in `ls *.ac`; do | ||
| 41 | j=`echo $i | sed 's/.ac/.m4/g'` | ||
| 42 | mv $i $j | ||
| 43 | done | ||
| 44 | cd ${S}/db/dist/aclocal_java | ||
| 45 | for i in `ls *.ac`; do | ||
| 46 | j=`echo $i | sed 's/.ac/.m4/g'` | ||
| 47 | mv $i $j | ||
| 48 | done | ||
| 49 | cd ${S} | ||
| 50 | autotools_do_configure | ||
| 51 | cd ${S}/db/dist | ||
| 52 | . ./RELEASE | ||
| 53 | # Edit version information we couldn't pre-compute. | ||
| 54 | (echo "1,\$s/__EDIT_DB_VERSION_MAJOR__/$DB_VERSION_MAJOR/g" && | ||
| 55 | echo "1,\$s/__EDIT_DB_VERSION_MINOR__/$DB_VERSION_MINOR/g" && | ||
| 56 | echo "1,\$s/__EDIT_DB_VERSION_PATCH__/$DB_VERSION_PATCH/g" && | ||
| 57 | echo "1,\$s/__EDIT_DB_VERSION_STRING__/$DB_VERSION_STRING/g" && | ||
| 58 | echo "1,\$s/__EDIT_DB_VERSION_UNIQUE_NAME__/$DB_VERSION_UNIQUE_NAME/g" && | ||
| 59 | echo "1,\$s/__EDIT_DB_VERSION__/$DB_VERSION/g" && | ||
| 60 | echo "w" && | ||
| 61 | echo "q") | ed configure | ||
| 62 | cd ${S}/db3 | ||
| 63 | ${S}/db3/configure \ | ||
| 64 | --build=${BUILD_SYS} \ | ||
| 65 | --host=${HOST_SYS} \ | ||
| 66 | --target=${TARGET_SYS} \ | ||
| 67 | --prefix=${prefix} \ | ||
| 68 | --exec_prefix=${exec_prefix} \ | ||
| 69 | --bindir=${bindir} \ | ||
| 70 | --sbindir=${sbindir} \ | ||
| 71 | --libexecdir=${libexecdir} \ | ||
| 72 | --datadir=${datadir} \ | ||
| 73 | --sysconfdir=${sysconfdir} \ | ||
| 74 | --sharedstatedir=${sharedstatedir} \ | ||
| 75 | --localstatedir=${localstatedir} \ | ||
| 76 | --libdir=${libdir} \ | ||
| 77 | --includedir=${includedir} \ | ||
| 78 | --oldincludedir=${oldincludedir} \ | ||
| 79 | --infodir=${infodir} \ | ||
| 80 | --mandir=${mandir} \ | ||
| 81 | ${EXTRA_OECONF} \ | ||
| 82 | --with-pic | ||
| 83 | |||
| 84 | } | ||
