diff --git a/app-office/mdbtools/files/gmdb.bash-completion b/app-office/mdbtools/files/gmdb.bash-completion new file mode 100644 index 0000000..1e24333 --- /dev/null +++ b/app-office/mdbtools/files/gmdb.bash-completion @@ -0,0 +1,12 @@ +#-*- mode: shell-script;-*- +have gmdb2 && +_gmdb2() +{ + local cur + COMPREPLY=() + cur=${COMP_WORDS[COMP_CWORD]} + + _filedir '@(mdb|mdw|accdb)' + return 0 +} && +complete -F _gmdb2 gmdb2 diff --git a/app-office/mdbtools/files/gmdb.desktop b/app-office/mdbtools/files/gmdb.desktop new file mode 100644 index 0000000..2c4c914 --- /dev/null +++ b/app-office/mdbtools/files/gmdb.desktop @@ -0,0 +1,13 @@ +[Desktop Entry] +Type=Application +Version=1.0 +Name=MDB Viewer +Comment=View and export Microsoft Access databases +Keywords=Microsoft;Access;database;SQL;Jet;schema;query;mdb;accdb; +Icon=gmdb2 +TryExec=gmdb2 +Exec=gmdb2 %f +Terminal=false +MimeType=application/vnd.ms-access;application/x-msaccess;application/msaccess;application/vnd.msaccess;application/mdb;application/x-mdb; +Categories=Office; +StartupNotify=true diff --git a/app-office/mdbtools/files/mdbtools.bash-completion b/app-office/mdbtools/files/mdbtools.bash-completion new file mode 100644 index 0000000..dabc3f7 --- /dev/null +++ b/app-office/mdbtools/files/mdbtools.bash-completion @@ -0,0 +1,170 @@ +#-*- mode: shell-script;-*- +have mdb-export && +_mdb_export() +{ + local cur prev + COMPREPLY=() + cur=${COMP_WORDS[COMP_CWORD]} + prev=${COMP_WORDS[COMP_CWORD-1]} + + if [[ "$prev" == -@(d|R|q|X|D|N) ]] ; then + return 0 + elif [[ "$prev" == -I ]] ; then + COMPREPLY=( $( compgen -W 'access sybase oracle postgres mysql' -- $cur ) ) + elif [[ "$cur" == -* ]]; then + COMPREPLY=( $( compgen -W '-T -H -d -R -Q -q -X -I -D -N' -- $cur ) ) + elif [[ "$prev" == *@(mdb|mdw|accdb) ]] ; then + local dbname + local tablenames + dbname=$prev + __expand_tilde_by_ref dbname + tablenames=$(eval mdb-tables -S -d / "${dbname}" 2>/dev/null) + COMPREPLY=( $( IFS=/ compgen -W "${tablenames}" -- $cur ) ) + else + _filedir '@(mdb|mdw|accdb)' + fi + return 0 +} && +complete -F _mdb_export mdb-export + +have mdb-hexdump && +_mdb_hexdump() +{ + local cur + COMPREPLY=() + cur=${COMP_WORDS[COMP_CWORD]} + + if (( COMP_CWORD == 1 )); then + _filedir '@(mdb|mdw|accdb)' + fi + return 0 +} && +complete -F _mdb_hexdump mdb-hexdump + +have mdb-parsecsv && +_mdb_parsecsv() +{ + local cur + COMPREPLY=() + cur=${COMP_WORDS[COMP_CWORD]} + + if (( COMP_CWORD == 1 )); then + _filedir '@(txt|csv)' + fi + return 0 +} && +complete -F _mdb_parsecsv mdb-parsecsv + +have mdb-prop && +_mdb_prop() +{ + local cur + + COMPREPLY=() + cur=${COMP_WORDS[COMP_CWORD]} + + if (( COMP_CWORD == 1 )); then + _filedir '@(mdb|mdw|accdb)' + elif (( COMP_CWORD == 2 )); then + local dbname + local tablenames + dbname=${COMP_WORDS[1]} + __expand_tilde_by_ref dbname + tablenames=$(eval mdb-tables -S -d / "${dbname}" 2>/dev/null) + COMPREPLY=( $( IFS=/ compgen -W "${tablenames}" -- $cur ) ) + elif (( COMP_CWORD == 3 )); then + COMPREPLY=( $( compgen -W 'Lv LvProp LvModule LvExtra' -- $cur ) ) + fi + return 0 +} && +complete -F _mdb_prop mdb-prop + +have mdb-schema && +_mdb_schema() +{ + local cur prev + + COMPREPLY=() + cur=${COMP_WORDS[COMP_CWORD]} + prev=${COMP_WORDS[COMP_CWORD-1]} + + if [[ "$prev" == -@(T|table|N) ]] ; then + return 0 + elif [[ "$cur" == -* ]]; then + COMPREPLY=( $( compgen -W '-T --table -N \ + --drop-table --no-drop-table \ + --not-null --no-not-null \ + --default-values --no-default-values \ + --not-empty --no-not-empty \ + --indexes --no-indexes \ + --relations --no-relations' -- $cur ) ) + elif [[ "$prev" == @(*mdb|*mdw|*accdb) ]]; then + COMPREPLY=( $( compgen -W 'access sybase oracle postgres mysql' -- $cur ) ) + else + _filedir '@(mdb|mdw|accdb)' + fi + return 0 +} && +complete -F _mdb_schema mdb-schema + +have mdb-sql && +_mdb_sql() +{ + local cur prev + + COMPREPLY=() + cur=${COMP_WORDS[COMP_CWORD]} + prev=${COMP_WORDS[COMP_CWORD-1]} + + if [[ "$prev" == -d ]] ; then + return 0 + elif [[ "$prev" == -@(i|o) ]] ; then + _filedir + elif [[ "$cur" == -* ]]; then + COMPREPLY=( $( compgen -W '-H -f -p -d -i -o' -- $cur ) ) + else + _filedir '@(mdb|mdw|accdb)' + fi + return 0 +} && +complete -F _mdb_sql mdb-sql + +have mdb-tables && +_mdb_tables() +{ + local cur prev + + COMPREPLY=() + cur=${COMP_WORDS[COMP_CWORD]} + prev=${COMP_WORDS[COMP_CWORD-1]} + + if [[ "$prev" == -d ]]; then + return 0 + elif [[ "$prev" == -t ]]; then + COMPREPLY=( $( compgen -W 'form table macro systable report query linkedtable module relationship dbprop any all' -- $cur ) ) + return 0 + elif [[ "$cur" == -* ]]; then + COMPREPLY=( $( compgen -W '-S -1 -d -t' -- $cur ) ) + else + _filedir '@(mdb|mdw|accdb)' + fi + return 0 +} && +complete -F _mdb_tables mdb-tables + +have mdb-ver && +_mdb_ver() +{ + local cur + + COMPREPLY=() + cur=${COMP_WORDS[COMP_CWORD]} + + if [[ "$cur" == -* ]]; then + COMPREPLY=( $( compgen -W '-M' -- $cur ) ) + else + _filedir '@(mdb|mdw|accdb)' + fi + return 0 +} && +complete -F _mdb_ver mdb-ver diff --git a/app-office/mdbtools/mdbtools-0.7.1-r1.ebuild b/app-office/mdbtools/mdbtools-0.7.1-r1.ebuild new file mode 100644 index 0000000..99bc7e06 --- /dev/null +++ b/app-office/mdbtools/mdbtools-0.7.1-r1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2013 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/app-office/mdbtools/mdbtools-0.7.1.ebuild,v 1.1 2013/10/14 13:30:15 pinkbyte Exp $ + +EAPI="5" + +AUTOTOOLS_AUTORECONF=1 +AUTOTOOLS_IN_SOURCE_BUILD=1 # needed for proper man generation +inherit autotools-utils bash-completion-r1 + +DESCRIPTION="A set of libraries and utilities for reading Microsoft Access database (MDB) files" +HOMEPAGE="http://mdbtools.sourceforge.net" +SRC_URI="https://github.com/brianb/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="GPL-2 LGPL-2.1" +SLOT="0" +KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd" + +IUSE="gnome odbc static-libs" + +RDEPEND="dev-libs/glib:2 + sys-libs/ncurses + sys-libs/readline + gnome? ( + gnome-base/libglade:2.0 + gnome-base/libgnomeui + ) + odbc? ( >=dev-db/unixODBC-2.0 )" +DEPEND="${RDEPEND} + app-text/txt2man + sys-devel/flex + virtual/pkgconfig + virtual/yacc" + +DOCS=( AUTHORS ChangeLog HACKING NEWS README TODO ) + +PATCHES=( "${FILESDIR}/${P}-parallel-make.patch" ) + +src_configure() { + local myeconfargs=( + --disable-gtk-doc + $(use_enable gnome gmdb2) + $(use odbc && echo "--with-unixodbc=${EPREFIX}/usr") + ) + autotools-utils_src_configure +} + +src_install() { + autotools-utils_src_install + + use gnome && domenu "${FILESDIR}/gmdb.desktop" + + newbashcomp "${FILESDIR}/${PN}.bash-completion" ${PN} + use gnome && newbashcomp "${FILESDIR}/gmdb.bash-completion" gmdb +}