diff options
author | Andreas K. Hüttel <dilfridge@gentoo.org> | 2020-05-11 22:41:03 +0300 |
---|---|---|
committer | Andreas K. Hüttel <dilfridge@gentoo.org> | 2020-05-11 22:41:03 +0300 |
commit | f13bc403d5e844097d62d8bb3253824826aee4c4 (patch) | |
tree | 2b86c6438a4ff72956b33530f0fdd1bb6f5263c5 /dev-db | |
parent | sci-visualization/qtiplot-bin: Attempt to use 64bit version (diff) | |
download | dilfridge-f13bc403d5e844097d62d8bb3253824826aee4c4.tar.gz dilfridge-f13bc403d5e844097d62d8bb3253824826aee4c4.tar.bz2 dilfridge-f13bc403d5e844097d62d8bb3253824826aee4c4.zip |
dev-db/sqlite: Add ancient version for qtiplot-bin...
Package-Manager: Portage-2.3.99, Repoman-2.3.22
Signed-off-by: Andreas K. Hüttel <dilfridge@gentoo.org>
Diffstat (limited to 'dev-db')
-rw-r--r-- | dev-db/sqlite/Manifest | 1 | ||||
-rw-r--r-- | dev-db/sqlite/files/maketcllib.sh | 40 | ||||
-rw-r--r-- | dev-db/sqlite/files/sqlite-2.8.15-alignement-fix.patch | 12 | ||||
-rw-r--r-- | dev-db/sqlite/files/sqlite-2.8.16-exit.patch | 12 | ||||
-rw-r--r-- | dev-db/sqlite/files/sqlite-2.8.16-multilib.patch | 108 | ||||
-rw-r--r-- | dev-db/sqlite/metadata.xml | 7 | ||||
-rw-r--r-- | dev-db/sqlite/sqlite-2.8.16-r5.ebuild | 127 |
7 files changed, 307 insertions, 0 deletions
diff --git a/dev-db/sqlite/Manifest b/dev-db/sqlite/Manifest new file mode 100644 index 0000000..433784e --- /dev/null +++ b/dev-db/sqlite/Manifest @@ -0,0 +1 @@ +DIST sqlite-2.8.16.tar.gz 981834 BLAKE2B f44c836843a7fcfa07d38c5a49beb389b71a8c0a5593dfbb07c44408785bdee18e3fe8aff15a8db813d19029d0e7570ca5a8f3eb1c24c5c993404e8d182717e4 SHA512 262cacbb9a6e615cd6ce7c2992c4dd5b0cd59de096daa74925e81baef4c0e4b3d9a7e4ebf8f4ba949afac4fe2fbf2c627ead29fa72ff38dffe6446ae46c40d4a diff --git a/dev-db/sqlite/files/maketcllib.sh b/dev-db/sqlite/files/maketcllib.sh new file mode 100644 index 0000000..ad87ce1 --- /dev/null +++ b/dev-db/sqlite/files/maketcllib.sh @@ -0,0 +1,40 @@ +#!/bin/bash +# +# This script was adapted from the one used by Hwaci to build it's +# documentation and binaries for shipping to their website. +# +# Any similarity to the original has probably been trampled into +# oblivion modifying everything for Gentoo. +# +echo "Starting TCL Build" + +# Set srcdir to the name of the directory that contains the publish.sh +# script. +# +srcdir=`echo "$0" | sed 's%\(^.*\)/[^/][^/]*$%\1%'` + +# +# Build the tclsqlite.so shared library for import into tclsh or wish +# under Linux +# +make target_source +source /etc/make.conf +cd tsrc +rm shell.c + +OPTS='-DUSE_TCL_STUBS=1 -DNDEBUG=1' +TCLSTUBLIB=${TCL_BUILD_STUB_LIB_PATH} + +export CFLAGS +gcc -fPIC $CFLAGS $OPTS -I. -shared *.c $TCLSTUBLIB -o tclsqlite.so + +strip tclsqlite.so +cp tclsqlite.so .. + +cd .. + +echo "pkg_mkIndex [pwd] tclsqlite.so" >> make_pkgIndex.tcl +tclsh make_pkgIndex.tcl + +echo "Done TCL Build" + diff --git a/dev-db/sqlite/files/sqlite-2.8.15-alignement-fix.patch b/dev-db/sqlite/files/sqlite-2.8.15-alignement-fix.patch new file mode 100644 index 0000000..7081ffd --- /dev/null +++ b/dev-db/sqlite/files/sqlite-2.8.15-alignement-fix.patch @@ -0,0 +1,12 @@ +diff -uNr sqlite.orig/src/vdbeInt.h sqlite/src/vdbeInt.h +--- sqlite.orig/src/vdbeInt.h 2004-10-16 01:33:02.779442000 +0200 ++++ sqlite/src/vdbeInt.h 2004-10-16 01:35:01.139442000 +0200 +@@ -115,7 +115,7 @@ + int flags; /* Some combination of MEM_Null, MEM_Str, MEM_Dyn, etc. */ + double r; /* Real value */ + char *z; /* String value */ +- char zShort[NBFS]; /* Space for short strings */ ++ char zShort[NBFS] __attribute__ ((__aligned__(16))); /* Space for short strings */ + }; + typedef struct Mem Mem; + diff --git a/dev-db/sqlite/files/sqlite-2.8.16-exit.patch b/dev-db/sqlite/files/sqlite-2.8.16-exit.patch new file mode 100644 index 0000000..aaccb57 --- /dev/null +++ b/dev-db/sqlite/files/sqlite-2.8.16-exit.patch @@ -0,0 +1,12 @@ +temp.c:4:1: warning: incompatible implicit declaration of built-in function ‘exit’ + +--- Makefile.in ++++ Makefile.in +@@ -269,6 +269,7 @@ + # + config.h: + echo '#include <stdio.h>' >temp.c ++ echo '#include <stdlib.h>' >>temp.c + echo 'int main(){printf(' >>temp.c + echo '"#define SQLITE_PTR_SZ %d",sizeof(char*));' >>temp.c + echo 'exit(0);}' >>temp.c diff --git a/dev-db/sqlite/files/sqlite-2.8.16-multilib.patch b/dev-db/sqlite/files/sqlite-2.8.16-multilib.patch new file mode 100644 index 0000000..3211187 --- /dev/null +++ b/dev-db/sqlite/files/sqlite-2.8.16-multilib.patch @@ -0,0 +1,108 @@ +diff -Naurp sqlite-2.8.16.orig/Makefile.in sqlite-2.8.16/Makefile.in +--- sqlite-2.8.16.orig/Makefile.in 2005-02-14 00:22:04.000000000 +0000 ++++ sqlite-2.8.16/Makefile.in 2005-02-17 18:22:50.174537727 +0000 +@@ -187,12 +187,12 @@ last_change: $(SRC) + | awk '{print $$5,$$6}' >last_change + + libsqlite.la: $(LIBOBJ) +- $(LTLINK) -o libsqlite.la $(LIBOBJ) ${RELEASE} -rpath @exec_prefix@/lib \ ++ $(LTLINK) -o libsqlite.la $(LIBOBJ) ${RELEASE} -rpath @libdir@ \ + -version-info "8:6:8" + + libtclsqlite.la: tclsqlite.lo libsqlite.la + $(LTLINK) -o libtclsqlite.la tclsqlite.lo \ +- libsqlite.la $(LIBTCL) -rpath @exec_prefix@/lib/sqlite \ ++ libsqlite.la $(LIBTCL) -rpath @libdir@/sqlite \ + -version-info "8:6:8" + + sqlite@TARGET_EXEEXT@: $(TOP)/src/shell.c libsqlite.la sqlite.h +@@ -465,14 +465,14 @@ doc: $(DOC) + mv $(DOC) doc + + install: sqlite libsqlite.la sqlite.h +- $(INSTALL) -d $(DESTDIR)$(exec_prefix)/lib +- $(LTINSTALL) libsqlite.la $(DESTDIR)$(exec_prefix)/lib ++ $(INSTALL) -d $(DESTDIR)@libdir@ ++ $(LTINSTALL) libsqlite.la $(DESTDIR)@libdir@ + $(INSTALL) -d $(DESTDIR)$(exec_prefix)/bin + $(LTINSTALL) sqlite $(DESTDIR)$(exec_prefix)/bin + $(INSTALL) -d $(DESTDIR)$(prefix)/include + $(INSTALL) -m 0644 sqlite.h $(DESTDIR)$(prefix)/include +- $(INSTALL) -d $(DESTDIR)$(exec_prefix)/lib/pkgconfig; +- $(INSTALL) -m 0644 sqlite.pc $(DESTDIR)$(exec_prefix)/lib/pkgconfig; ++ $(INSTALL) -d $(DESTDIR)@libdir@/pkgconfig; ++ $(INSTALL) -m 0644 sqlite.pc $(DESTDIR)@libdir@/pkgconfig; + + clean: + rm -f *.lo *.la *.o sqlite@TARGET_EXEEXT@ libsqlite.la sqlite.h opcodes.* +diff -Naurp sqlite-2.8.16.orig/Makefile.linux-gcc sqlite-2.8.16/Makefile.linux-gcc +--- sqlite-2.8.16.orig/Makefile.linux-gcc 2005-02-14 00:22:04.000000000 +0000 ++++ sqlite-2.8.16/Makefile.linux-gcc 2005-02-17 18:21:47.654969648 +0000 +@@ -14,7 +14,7 @@ + #### The toplevel directory of the source tree. This is the directory + # that contains this "Makefile.in" and the "configure.in" script. + # +-TOP = ../sqlite ++TOP = @@S@@ + + #### C Compiler and options for use in building executables that + # will run on the platform that is doing the build. +@@ -38,8 +38,8 @@ THREADSAFE = -DTHREADSAFE=0 + #### Specify any extra linker options needed to make the library + # thread safe + # +-#THREADLIB = -lpthread +-THREADLIB = ++THREADLIB = -lpthread ++#THREADLIB = + + #### Leave MEMORY_DEBUG undefined for maximum speed. Use MEMORY_DEBUG=1 + # to check for memory leaks. Use MEMORY_DEBUG=2 to print a log of all +@@ -64,7 +64,7 @@ EXE = + # will run on the target platform. This is usually the same + # as BCC, unless you are cross-compiling. + # +-TCC = gcc -O6 ++TCC = @@CC@@ @@CFLAGS@@ + #TCC = gcc -g -O0 -Wall + #TCC = gcc -g -O0 -Wall -fprofile-arcs -ftest-coverage + #TCC = /opt/mingw/bin/i386-mingw32-gcc -O6 +@@ -72,23 +72,23 @@ TCC = gcc -O6 + + #### Tools used to build a static library. + # +-AR = ar cr ++AR = @@AR@@ cr + #AR = /opt/mingw/bin/i386-mingw32-ar cr +-RANLIB = ranlib ++RANLIB = @@RANLIB@@ + #RANLIB = /opt/mingw/bin/i386-mingw32-ranlib + + #### Extra compiler options needed for programs that use the TCL library. + # +-#TCL_FLAGS = ++#TCL_FLAGS = @@TCL_FLAGS@@ + #TCL_FLAGS = -DSTATIC_BUILD=1 +-TCL_FLAGS = -I/home/drh/tcltk/8.4linux ++#TCL_FLAGS = -I/home/drh/tcltk/8.4linux + #TCL_FLAGS = -I/home/drh/tcltk/8.4win -DSTATIC_BUILD=1 + #TCL_FLAGS = -I/home/drh/tcltk/8.3hpux + + #### Linker options needed to link against the TCL library. + # +-#LIBTCL = -ltcl -lm -ldl +-LIBTCL = /home/drh/tcltk/8.4linux/libtcl8.4g.a -lm -ldl ++LIBTCL = -ltcl -lm -ldl ++#LIBTCL = /home/drh/tcltk/8.4linux/libtcl8.4g.a -lm -ldl + #LIBTCL = /home/drh/tcltk/8.4win/libtcl84s.a -lmsvcrt + #LIBTCL = /home/drh/tcltk/8.3hpux/libtcl8.3.a -ldld -lm -lc + +@@ -100,7 +100,7 @@ READLINE_FLAGS = -DHAVE_READLINE=1 -I/us + #### Linker options needed by programs using readline() must link against. + # + #LIBREADLINE = +-LIBREADLINE = -static -lreadline -ltermcap ++LIBREADLINE = -static -lreadline -lncurses + + #### Should the database engine assume text is coded as UTF-8 or iso8859? + # diff --git a/dev-db/sqlite/metadata.xml b/dev-db/sqlite/metadata.xml new file mode 100644 index 0000000..713432f --- /dev/null +++ b/dev-db/sqlite/metadata.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>dilfridge@gentoo.org</email> + </maintainer> +</pkgmetadata> diff --git a/dev-db/sqlite/sqlite-2.8.16-r5.ebuild b/dev-db/sqlite/sqlite-2.8.16-r5.ebuild new file mode 100644 index 0000000..76248c1 --- /dev/null +++ b/dev-db/sqlite/sqlite-2.8.16-r5.ebuild @@ -0,0 +1,127 @@ +# Copyright 1999-2020 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit eutils alternatives multilib toolchain-funcs + +KEYWORDS="~amd64" + +DESCRIPTION="SQLite: an SQL Database Engine in a C Library" +HOMEPAGE="http://www.sqlite.org/" +SRC_URI="http://www.sqlite.org/${P}.tar.gz" + +LICENSE="public-domain" +SLOT="0" +IUSE="doc nls tcl" + +DEPEND="doc? ( dev-lang/tcl ) + tcl? ( dev-lang/tcl )" + +RDEPEND="tcl? ( dev-lang/tcl )" + +SOURCE="/usr/bin/lemon" +ALTERNATIVES="${SOURCE}-3 ${SOURCE}-0" + +RESTRICT="!tcl? ( test )" + +src_unpack() { + # test + if has test ${FEATURES}; then + if ! has userpriv ${FEATURES}; then + ewarn "The userpriv feature must be enabled to run tests." + eerror "Testsuite will not be run." + fi + if ! use tcl; then + ewarn "You must enable the tcl use flag if you want to run the test" + ewarn "suite." + eerror "Testsuite will not be run." + fi + fi + + unpack ${A} + cd "${S}" + + use hppa && epatch "${FILESDIR}"/${PN}-2.8.15-alignement-fix.patch + + epatch \ + "${FILESDIR}"/${P}-multilib.patch \ + "${FILESDIR}"/${P}-exit.patch + + epunt_cxx + + if use nls ; then + ENCODING=${ENCODING-"UTF8"} + else + ENCODING="ISO8859" + fi + + sed -i -e "s:@@S@@:${S}:g" \ + -e "s:@@CC@@:$(tc-getCC):g" \ + -e "s:@@CFLAGS@@:${CFLAGS}:g" \ + -e "s:@@AR@@:$(tc-getAR):g" \ + -e "s:@@RANLIB@@:$(tc-getRANLIB):g" \ + -e "s:@@ENCODING@@:${ENCODING}:g" \ + "${S}"/Makefile.linux-gcc + + sed -i \ + -e '/^LTLINK/s:$(TCC):& $(LDFLAGS):' \ + -e '/lemon/s:-o:$(LDFLAGS) &:' \ + "${S}"/{main.mk,Makefile.in} +} + +src_compile() { + local myconf="--enable-incore-db --enable-tempdb-in-ram" + + if ! use tcl ; then + myconf="${myconf} --without-tcl" + fi + + econf ${myconf} \ + --disable-static \ + $(use_enable nls utf8) + + emake all || die "emake all failed" + + if use doc ; then + emake doc || die "emake doc failed" + fi + + if use tcl ; then + cp -P "${FILESDIR}"/maketcllib.sh "${S}" + chmod +x ./maketcllib.sh + ./maketcllib.sh + fi +} + +src_test() { + if use tcl ; then + if has userpriv ${FEATURES} ; then + elog "SQLite 2.x is known to have problems on 64 bit architectures." + elog "If you observe segmentation faults please use 3.x instead!" + + cd "${S}" + emake test || die "some test failed" + fi + fi +} + +src_install () { + dodir /usr/{bin,include,$(get_libdir)} + + make DESTDIR="${D}" install || die "make install failed" + + find "${D}" -name '*.la' -exec rm -f {} + + + newbin lemon lemon-${SLOT} + + dodoc README VERSION + doman sqlite.1 + + use doc && dohtml doc/*.html doc/*.txt doc/*.png + + if use tcl ; then + mkdir "${D}"/usr/$(get_libdir)/tclsqlite${PV} + cp "${S}"/tclsqlite.so "${D}"/usr/$(get_libdir)/tclsqlite${PV}/ + cp "${S}"/pkgIndex.tcl "${D}"/usr/$(get_libdir)/tclsqlite${PV}/ + fi +} |