ports/168404: [NEW PORT] databases/dev-sqlite3: This is a development SQLite version
Pavel I Volkov
pavelivolkov at googlemail.com
Mon May 28 10:30:02 UTC 2012
>Number: 168404
>Category: ports
>Synopsis: [NEW PORT] databases/dev-sqlite3: This is a development SQLite version
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: change-request
>Submitter-Id: current-users
>Arrival-Date: Mon May 28 10:30:01 UTC 2012
>Closed-Date:
>Last-Modified:
>Originator: Pavel I Volkov
>Release: FreeBSD 9.0-STABLE amd64
>Organization:
>Environment:
System: FreeBSD pol.adm.ru 9.0-STABLE FreeBSD 9.0-STABLE #5: Wed May 23 14:30:27 MSK 2012
>Description:
SQLite is an SQL database engine in a C library. Programs that link the SQLite
library can have SQL database access without running a separate RDBMS process.
The distribution comes with a standalone command-line access program (sqlite)
that can be used to administer an SQLite database and which serves as an
example of how to use the SQLite library.
WWW: http://www.sqlite.org/
Generated with FreeBSD Port Tools 0.99_6 (mode: new)
>How-To-Repeat:
>Fix:
--- .shar begins here ---
# This is a shell archive. Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file". Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
#
# This archive contains:
#
# sqlite3-dev
# sqlite3-dev/files
# sqlite3-dev/files/patch-test-backup2.test
# sqlite3-dev/files/example.tcl.in
# sqlite3-dev/files/patch-Makefile.in
# sqlite3-dev/Makefile
# sqlite3-dev/distinfo
# sqlite3-dev/pkg-descr
#
echo c - sqlite3-dev
mkdir -p sqlite3-dev > /dev/null 2>&1
echo c - sqlite3-dev/files
mkdir -p sqlite3-dev/files > /dev/null 2>&1
echo x - sqlite3-dev/files/patch-test-backup2.test
sed 's/^X//' >sqlite3-dev/files/patch-test-backup2.test << '94609cd189f2de98019a9a31ae6ef5ed'
X--- test/backup2.test.orig 2012-01-22 16:15:22.000000000 +0400
X+++ test/backup2.test 2012-01-22 16:30:38.000000000 +0400
X@@ -143,7 +143,7 @@
X #
X if {$tcl_platform(platform)=="windows"} {
X set msg {cannot open source database: unable to open database file}
X-} elseif {$tcl_platform(os)=="OpenBSD"} {
X+} elseif {$tcl_platform(os)=="OpenBSD" || $tcl_platform(os)=="FreeBSD"} {
X set msg {restore failed: file is encrypted or is not a database}
X } else {
X set msg {cannot open source database: disk I/O error}
94609cd189f2de98019a9a31ae6ef5ed
echo x - sqlite3-dev/files/example.tcl.in
sed 's/^X//' >sqlite3-dev/files/example.tcl.in << '1aedaab40a9b97a5039ddd880c7ebfc0'
X#!%%TCLSH%%
X
Xpackage require sqlite3
X
Xif {$argc!=2} {
X puts stderr "Usage: $argv0 DATABASE SQL-STATEMENT"
X exit 1
X}
Xsqlite db [lindex $argv 0]
Xdb eval [lindex $argv 1] x {
X foreach v $x(*) {
X puts "$v = $x($v)"
X }
X puts ""
X}
Xdb close
1aedaab40a9b97a5039ddd880c7ebfc0
echo x - sqlite3-dev/files/patch-Makefile.in
sed 's/^X//' >sqlite3-dev/files/patch-Makefile.in << 'd7857cbb555272b50498995d1c94caeb'
X--- ./Makefile.in.orig 2012-05-27 15:23:55.000000000 +0400
X+++ ./Makefile.in 2012-05-27 15:28:17.000000000 +0400
X@@ -139,7 +139,7 @@
X prefix = @prefix@
X exec_prefix = @exec_prefix@
X libdir = @libdir@
X-pkgconfigdir = $(libdir)/pkgconfig
X+pkgconfigdir = ${prefix}/libdata/pkgconfig
X bindir = @bindir@
X includedir = @includedir@
X INSTALL = @INSTALL@
d7857cbb555272b50498995d1c94caeb
echo x - sqlite3-dev/Makefile
sed 's/^X//' >sqlite3-dev/Makefile << '2121c72ac837bcdc0233628ee7f3f572'
X# New ports collection makefile for: sqlite3-dev
X# Date created: 2012-04-18
X# Whom: Pavel I Volkov <pavelivolkov at googlemail.com>
X#
X# $FreeBSD$
X#
X
XPORTNAME= sqlite3
XPORTVERSION= 0 # this is will be defined later
XCATEGORIES= databases
XMASTER_SITES= http://www.sqlite.org/cgi/ http://www2.sqlite.org/cgi/ http://www3.sqlite.org/cgi/
XPKGNAMEPREFIX= dev-
XDISTNAME= src
XEXTRACT_SUFX=
XDIST_SUBDIR= sqlite
X
XMAINTAINER= pavelivolkov at googlemail.com
XCOMMENT= An SQL database engine in a C library
X
XLICENSE= public
XLICENSE_NAME= Public Domain
XLICENSE_TEXT= Description of the license can be obtained from the following URL: http://www.sqlite.org/copyright.html
XLICENSE_PERMS= ${_LICENSE_PERMS_DEFAULT}
X
XFETCH_DEPENDS= fossil:${PORTSDIR}/devel/fossil
XEXTRACT_DEPENDS= ${FETCH_DEPENDS}
X
XCONFLICTS= sqlite34-[0-9]* sqlite3-[0-9.]* tcl-sqlite3-[0-9.]*
X
XUSE_GNOME= pkgconfig
XUSE_LDCONFIG= YES
XGNU_CONFIGURE= YES
X
XUSE_TCL_BUILD= 84+
XCONFIGURE_ENV+= TCLSH_CMD="${TCLSH}" \
X TCLLIBDIR="${PREFIX}/lib/${PORTNAME}" \
X ac_cv_search_pthread_create=""
XCPPFLAGS+= -I. -I./src
X
XMAKE_JOBS_UNSAFE= YES
X
X# Because the repository is changed often
XIGNOREFILES= ${DISTFILES}
X
XMASTER_SITE_BACKUP=
X
X# --- for fetch target
X# Name of cookie used to skip pulling
XFETCH_COOKIE?= ${DISTDIR}/${DIST_SUBDIR}/.fetch_done.${PKGNAMEPREFIX}${PORTNAME}
XFOSSIL_CMD= fossil
XFETCH_BINARY= ${FOSSIL_CMD}
XFETCH_ARGS= pull
XFETCH_AFTER_ARGS= -R ${DISTDIR}/${DIST_SUBDIR}/$${file}
X.if !exists(${FETCH_COOKIE})
XFORCE_FETCH= ${DISTNAME}
X.endif
X.for name in ${DISTNAME}
X.if !exists(${DISTDIR}/${DIST_SUBDIR}/${name})
XFETCH_ARGS= clone
XFETCH_AFTER_ARGS= ${DISTDIR}/${DIST_SUBDIR}/$${file}
XFORCE_FETCH=
X.endif
X.endfor
X
X# --- for extract target
XEXTRACT_CMD= ${RM} -rf ${WRKSRC} && ${MKDIR} ${WRKSRC} && cd ${WRKSRC} && ${FOSSIL_CMD}
XEXTRACT_BEFORE_ARGS= open
XEXTRACT_AFTER_ARGS= ${TAG} >/dev/null
X
X# --- for variable PORTVERSION
X# I'm using ".../work/" instead "${WRKDIR}" because he's not defined here.
XDYN_MAKEFILE?= ${WRKDIRPREFIX}${.CURDIR}/work/Makefile.inc
X.if exists(${DYN_MAKEFILE})
X.include "${DYN_MAKEFILE}"
XUSE_SUBMAKE= yes
X.endif
X
XTEMP_STORE?= 2
X# Compilation Options For SQLite http://www.sqlite.org/compile.html
XOPTIONS= \
X RELEASE "Use last release" on \
X URI "Enable use the URI filename" on \
X FTS3 "Enable FTS3/4 (Full Text Search) module" on \
X ICU "Enable built with ICU" off \
X RTREE "Enable R*Tree module" off \
X RTREEINT "R*Tree use integers instead of floating" off \
X RAMTABLE "Store temporary tables in RAM = ${TEMP_STORE}" off \
X UPD_DEL_LIMIT "ORDER BY and LIMIT on UPDATE and DELETE" on \
X SOUNDEX "Enables the soundex() SQL function" on \
X METADATA "Enable column metadata" on \
X STAT3 "Help SQLite to chose a better query plan" off \
X DIRECT_READ "File is read directly from disk" off \
X MEMMAN "Allows it to release unused memory" off \
X SECURE_DELETE "Overwrite deleted information with zeros" on \
X UNLOCK_NOTIFY "Enable notification on unlocking" on \
X THREADSAFE "Build thread-safe (SQLITE_THREADSAFE=1)" on \
X EXTENSION "Allow loadable extensions" on \
X TCLWRAPPER "Enable TCL wrapper" on \
X DEBUG "Enable debugging & verbose explain" off \
X
X.include <bsd.port.options.mk>
X
XPLIST_FILES= bin/sqlite3 include/sqlite3.h include/sqlite3ext.h \
X lib/libsqlite3.a lib/libsqlite3.la lib/libsqlite3.so \
X lib/libsqlite3.so.8 libdata/pkgconfig/sqlite3.pc
XPORTDOCS= *
X
X.if !defined(NO_INSTALL_MANPAGES)
XMAN1= sqlite3.1
X.endif
X
X# --- RELEASE
X.if !defined(TAG)
X.if defined(WITH_RELEASE)
X# Last release exist in to repositaries.
XTAG= release
X.else
X# The latest source from repositaries.
XTAG=
X.endif
X.endif
X# Or you may same define TAG.
X# Execute: make TAG=trunk:2012-05-15T14:30 extract
X
X# The default numeric file permissions for newly created database files under unix.
X# If not specified, the default is 0644 which means that the files is globally
X# readable but only writable by the creator.
X.ifdef DEFAULT_FILE_PERMISSIONS
XCPPFLAGS+= -DSQLITE_DEFAULT_FILE_PERMISSIONS=${DEFAULT_FILE_PERMISSIONS}
X.endif
X
X# GCOV "Enable coverage testing using gcov/gprof" off \
X# These options are only used for debugging, profiling the application.
X# And can cause errors when using the application or its libraries in other
X# products (for example build security/nss is BROKEN).
X# This options can be specified on the command line.
X# Execute: make -D WITH_GCOV ...
X.if defined(WITH_GCOV)
XCONFIGURE_ARGS+= --enable-gcov
XLDFLAGS+= -fstack-protector
X.endif
X
X.if defined(WITH_DEBUG)
XCONFIGURE_ARGS+= --enable-debug
XCPPFLAGS+= -Wall
X.endif
X
X.if defined(WITH_MEMMAN)
XCPPFLAGS+= -DSQLITE_ENABLE_MEMORY_MANAGEMENT=1
X.endif
X
X.if defined(WITH_UPD_DEL_LIMIT)
XCPPFLAGS+= -DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1
X.endif
X
X.if defined(WITH_URI)
XCPPFLAGS+= -DSQLITE_USE_URI=1
X.endif
X
X.if defined(WITH_SOUNDEX)
XCPPFLAGS+= -DSQLITE_SOUNDEX=1
X.endif
X
X.if defined(WITH_STAT3)
XCPPFLAGS+= -DSQLITE_ENABLE_STAT3=1
X.endif
X
X.if defined(WITH_DIRECT_READ)
XCPPFLAGS+= -DSQLITE_DIRECT_OVERFLOW_READ=1
X.endif
X
X.if defined(WITH_FTS3)
XCPPFLAGS+= -DSQLITE_ENABLE_FTS3=1 -DSQLITE_ENABLE_FTS3_PARENTHESIS=1 -DSQLITE_ENABLE_FTS4=1
X.endif
X
X.if defined(WITH_RTREE)
XCPPFLAGS+= -DSQLITE_ENABLE_RTREE=1
X.if defined(WITH_RTREEINT)
XCPPFLAGS+= -DSQLITE_RTREE_INT_ONLY=1
X.endif
X.endif
X
X.if defined(WITH_ICU)
XBUILD_DEPENDS+= ${LOCALBASE}/bin/icu-config:${PORTSDIR}/devel/icu
XLIB_DEPENDS+= icudata:${PORTSDIR}/devel/icu
XCPPFLAGS+= -DSQLITE_ENABLE_ICU=1
XCPPFLAGS+= `${LOCALBASE}/bin/icu-config --cppflags`
XLDFLAGS+= `${LOCALBASE}/bin/icu-config --ldflags`
X.endif
X
X# Use an in-ram database for temporary tables (never,no,yes,always),
X# which is equivalent of TEMP_STORE=[0,1,2,3], default = 1.
X.if defined(WITH_RAMTABLE)
XCPPFLAGS+= -DSQLITE_TEMP_STORE=${TEMP_STORE}
X.endif
X
X.if defined(WITH_SECURE_DELETE)
XCPPFLAGS+= -DSQLITE_SECURE_DELETE=1
X.endif
X
X.if defined(WITH_UNLOCK_NOTIFY)
XCPPFLAGS+= -DSQLITE_ENABLE_UNLOCK_NOTIFY=1
X.endif
X
X.if !defined(WITHOUT_METADATA)
XCPPFLAGS+= -DSQLITE_ENABLE_COLUMN_METADATA=1
X.endif
X
X.if !defined(WITHOUT_THREADSAFE)
XCONFIGURE_ARGS+= --enable-threadsafe
XLDFLAGS+= ${PTHREAD_LIBS}
X.else
XCONFIGURE_ARGS+= --disable-threadsafe
X.endif
X
X.if !defined(WITHOUT_EXTENSION)
XCONFIGURE_ARGS+= --enable-load-extension
X.else
XCONFIGURE_ARGS+= --disable-load-extension
X.endif
X
X.if defined(WITH_TCLWRAPPER)
XCATEGORIES+= lang tcl
XCOMMENT+= with TCL Wrapper
XUSE_TCL_RUN= yes
XINSTALL_TARGET= install tcl_install
XCPPFLAGS+= `pkg-config --cflags --libs sqlite3`
XCONFIGURE_ARGS+= --with-tcl=${TCL_LIBDIR}
XPORTEXAMPLES+= example.tcl
XPLIST_DIRS+= lib/sqlite3
XPLIST_FILES+= lib/sqlite3/libtclsqlite3.so lib/sqlite3/pkgIndex.tcl
XSUB_FILES= example.tcl
XSUB_LIST= "TCLSH=${TCLSH}"
X.else
XCONFIGURE_ARGS+= --disable-tcl
X.endif
X
X.include <bsd.port.pre.mk>
X
X.if defined(TCL_VER) && ${TCL_VER} > 8.4
XBUILD_DEPENDS+= ${LOCALBASE}/lib/tcl8/${TCL_VER}:${PORTSDIR}/lang/tcl-modules
X.if defined(WITH_TCLWRAPPER)
XRUN_DEPENDS+= ${LOCALBASE}/lib/tcl8/${TCL_VER}:${PORTSDIR}/lang/tcl-modules
X.endif
X.endif
X
X.ifmake test
X# To test you must specify the value of TESTUSER variable.
X# It must correspond to a normal (not root) user, from which it will be tested.
X# Execute: make TESTUSER=ordinary_user_login_name test
X.ifndef TESTUSER
XIGNORE= set the value of the variable TESTUSER corresponding normal (not root) user, from which will be tested
X.endif
X.ifndef WITH_TCLWRAPPER
XIGNORE= for the purpose of test you want to include TCL wrapper
X.endif
X.ifdef WITH_NAME83
XIGNORE= use 8.3 file name limit is violated during testing
X# ${WRKSRC} contains the names of "databases" and "sqlite-src-3070700" violation of the agreement 8.3 file names and directories.
X# You can test by running mount in the place where the restriction of 8.3 is observed.
X# mount -t nullfs ${WRKSRC} /mnt
X# cd /mnt
X# chown -R ${TESTUSER} /mnt
X# su ${TESTUSER} -c "limits -n 1999 make test"
X# chown -R ${USER} /mnt
X# cd
X# umount /mnt
X.endif
X.endif
X
Xtest: build
X @(cd ${WRKSRC} && ${CHOWN} -R ${TESTUSER} ${WRKSRC} && su ${TESTUSER} -c "limits -n 1999 ${MAKE} test"; ${CHOWN} -R ${USER} ${WRKSRC})
X
Xdistclean: pre-distclean clean
X @${ECHO_MSG} "===> Actually does not remove the repository. Just to allow update them."
X @${ECHO_MSG} "===> To really remove the repositories do it yourself."
X -@${RM} -rf "${FETCH_COOKIE}"
X
Xpre-clean:
X -@( cd ${WRKSRC} && ${FOSSIL_CMD} close || ${TRUE} ) > /dev/null 2>&1
X -@${RM} -rf "${DYN_MAKEFILE}"
X
Xpost-fetch:
X -@${TOUCH} ${TOUCH_FLAGS} "${FETCH_COOKIE}"
X
Xpost-extract:
X @if [ "${TAG}" = "release" ]; then \
X ${ECHO_CMD} "PORTVERSION= "`${CAT} "${WRKSRC}/VERSION"` > "${DYN_MAKEFILE}"; \
X elif [ -z "${TAG}" ]; then \
X date -u +"PORTVERSION= %Y%m%d%H%M" > "${DYN_MAKEFILE}"; \
X else \
X ${ECHO_CMD} -n "PORTVERSION= " > "${DYN_MAKEFILE}"; \
X ${ECHO_CMD} "${TAG}" | ${TR} -d '[:punct:]|[:alpha:]' >> "${DYN_MAKEFILE}"; \
X fi; \
X ${ECHO_CMD} "TAG= ${TAG}" >> "${DYN_MAKEFILE}"
X
Xpost-build:
X @${ECHO_MSG} "===> You can test sqlite using supplied with the him tests."
X @${ECHO_MSG} "===> Execute: make TESTUSER=ordinary_user_login_name test"
X
Xpost-install:
X.if !defined(NOPORTEXAMPLES) & defined(WITH_TCLWRAPPER)
X @${MKDIR} ${EXAMPLESDIR} && ${INSTALL_SCRIPT} ${WRKDIR}/${SUB_FILES} ${EXAMPLESDIR}
X.endif
X.if !defined(NO_INSTALL_MANPAGES)
X @${INSTALL_MAN} ${WRKSRC}/sqlite3.1 ${MANPREFIX}/man/man1
X.endif
X.ifndef NOPORTDOCS
X @${MKDIR} ${DOCSDIR}
X.ifdef WITH_FTS3
X @${INSTALL_DATA} \
X ${WRKSRC}/ext/fts3/README.content \
X ${WRKSRC}/ext/fts3/README.syntax \
X ${WRKSRC}/ext/fts3/README.tokenizers \
X ${DOCSDIR}
X.endif
X.ifdef WITH_RTREE
X @${INSTALL_DATA} ${WRKSRC}/ext/rtree/README ${DOCSDIR}
X.endif
X.ifdef WITH_ICU
X @${INSTALL_DATA} ${WRKSRC}/ext/icu/README.txt ${DOCSDIR}
X.endif
X.endif
X
X.include <bsd.port.post.mk>
2121c72ac837bcdc0233628ee7f3f572
echo x - sqlite3-dev/distinfo
sed 's/^X//' >sqlite3-dev/distinfo << '04d8da0677ff62a51ff857957bf1c510'
XSHA256 (sqlite/src) = IGNORE
04d8da0677ff62a51ff857957bf1c510
echo x - sqlite3-dev/pkg-descr
sed 's/^X//' >sqlite3-dev/pkg-descr << '071ef982cf3ccd6c10aab65458e88fd4'
XSQLite is an SQL database engine in a C library. Programs that link the SQLite
Xlibrary can have SQL database access without running a separate RDBMS process.
XThe distribution comes with a standalone command-line access program (sqlite)
Xthat can be used to administer an SQLite database and which serves as an
Xexample of how to use the SQLite library.
X
XWWW: http://www.sqlite.org/
071ef982cf3ccd6c10aab65458e88fd4
exit
--- .shar ends here ---
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list