commit b28e3305f6d78e2c3dc3c15eb549b05f4455166c
parent 23bcd140d106186c87842cc57bf573cc38e4f27d
Author: Christian Grothoff <christian@grothoff.org>
Date: Tue, 13 Sep 2005 14:39:26 +0000
cvs
Diffstat:
24 files changed, 152 insertions(+), 325 deletions(-)
diff --git a/.cvsignore b/.cvsignore
@@ -1,27 +0,0 @@
-dvi
-config.rpath
-aclocal.m4-cygwin
-mkinstalldirs
-missing
-ltmain.sh
-install-sh
-depcomp
-config.sub
-config.guess
-config.h
-config.h.in
-stamp-h.in
-*.log
-*.scan
-*.cache
-extract
-*.la
-*.lo
-.libs
-.deps
-Makefile
-Makefile.in
-aclocal.m4
-config.status
-configure
-libtool
diff --git a/configure.ac b/configure.ac
@@ -32,27 +32,34 @@ AC_DISABLE_STATIC
case "$host_os" in
linux*)
AC_DEFINE(LINUX,1,[This is a Linux system])
+ AC_DEFINE_UNQUOTED(LINUX,1,[This is a LINUX system])
+ AM_CONDITIONAL(HAVE_GNU_LD, 1)
XTRA_CPPLIBS=-lstdc++
;;
freebsd*)
AC_DEFINE_UNQUOTED(SOMEBSD,1,[This is a BSD system])
AC_CHECK_LIB(c_r, pthread_create)
+ AM_CONDITIONAL(HAVE_GNU_LD, 1)
;;
openbsd*)
AC_DEFINE_UNQUOTED(SOMEBSD,1,[This is a BSD system])
AC_CHECK_LIB(c_r, pthread_create)
+ AM_CONDITIONAL(HAVE_GNU_LD, 1)
;;
netbsd*)
AC_DEFINE_UNQUOTED(SOMEBSD,1,[This is a BSD system])
AC_CHECK_LIB(c_r, pthread_create)
+ AM_CONDITIONAL(HAVE_GNU_LD, 1)
;;
*solaris*)
AC_DEFINE_UNQUOTED(SOLARIS,1,[This is a Solaris system])
AC_CHECK_LIB(resolv, res_init)
XTRA_CPPLIBS=-lstdc++
+ AM_CONDITIONAL(HAVE_GNU_LD, 0)
;;
darwin*)
AC_DEFINE_UNQUOTED(DARWIN,1,[This is a Darwin system])
+ AM_CONDITIONAL(HAVE_GNU_LD, 0)
;;
cygwin*)
AC_DEFINE_UNQUOTED(CYGWIN,1,[This is a CYGWIN system])
@@ -65,11 +72,13 @@ mingw*)
AC_CHECK_LIB(ws2_32, _head_libws2_32_a,,[AC_MSG_ERROR([libextractor requires Winsock2])])
AC_CHECK_LIB(plibc, plibc_init,,[AC_MSG_ERROR([libextractor requires PlibC])])
LDFLAGS="$LDFLAGS -no-undefined -Wl,--export-all-symbols"
+ AM_CONDITIONAL(HAVE_GNU_LD, 1)
;;
*)
AC_MSG_RESULT(Unrecognised OS $host_os)
AC_DEFINE_UNQUOTED(OTHEROS,1,[Some strange OS])
AC_MSG_RESULT(otheros)
+ AM_CONDITIONAL(HAVE_GNU_LD, 0)
;;
esac
diff --git a/doc/.cvsignore b/doc/.cvsignore
@@ -1,2 +0,0 @@
-Makefile
-Makefile.in
diff --git a/libltdl/.cvsignore b/libltdl/.cvsignore
@@ -1,25 +0,0 @@
-stamp-h1
-mkinstalldirs
-missing
-ltmain.sh
-install-sh
-depcomp
-config.sub
-config.guess
-config.h
-config.h.in
-stamp-h.in
-*.log
-*.scan
-*.cache
-extract
-*.la
-*.lo
-.libs
-.deps
-Makefile
-Makefile.in
-aclocal.m4
-config.status
-configure
-libtool
diff --git a/m4/.cvsignore b/m4/.cvsignore
@@ -1,3 +0,0 @@
-Makefile
-Makefile.in
-
diff --git a/po/.cvsignore b/po/.cvsignore
@@ -1,13 +0,0 @@
-Makefile
-Makefile.in
-POTFILES
-Makevars.template
-Rules-quot
-boldquot.sed
-*.gmo
-doodle.pot
-en@boldquot.header
-en@quot.header
-quot.sed
-remove-potcdate.sed
-stamp-po
diff --git a/src/.cvsignore b/src/.cvsignore
@@ -1,3 +0,0 @@
-Makefile
-Makefile.in
-include/.cvsignore
diff --git a/src/include/.cvsignore b/src/include/.cvsignore
@@ -1,7 +0,0 @@
-stamp-h1
-Makefile
-Makefile.in
-config.h
-config.h.in
-stamp-h
-stamp-h.in
diff --git a/src/main/.cvsignore b/src/main/.cvsignore
@@ -1,7 +0,0 @@
-extract
-*.lo
-*.la
-.deps
-.libs
-Makefile
-Makefile.in
diff --git a/src/plugins/.cvsignore b/src/plugins/.cvsignore
@@ -1,6 +0,0 @@
-*.lo
-*.la
-.deps
-.libs
-Makefile
-Makefile.in
diff --git a/src/plugins/Makefile-plugins.am b/src/plugins/Makefile-plugins.am
@@ -0,0 +1,19 @@
+INCLUDES = -I$(top_srcdir)/src/include
+
+# install plugins under:
+plugindir = $(libdir)/libextractor
+
+
+LIBS = \
+ @LTLIBINTL@ @LIBS@
+
+if HAVE_GNU_LD
+ makesymbolic="-Wl,-s -Wl,-Bsymbolic"
+ retaincommand="\#"
+else
+ retaincommand="-Wl,--retain-symbols-file -Wl,"
+endif
+
+PLUGINFLAGS = $(makesymbolic) -avoid-version -module -no-undefined
+
+
diff --git a/src/plugins/Makefile.am b/src/plugins/Makefile.am
@@ -1,7 +1,4 @@
-INCLUDES = -I$(top_srcdir)/src/include
-
-# install plugins under:
-plugindir = $(libdir)/libextractor
+include Makefile-plugins.am
EXTRA_DIST = \
ASF_SYMBOLS \
@@ -33,9 +30,6 @@ EXTRA_DIST = \
WAV_SYMBOLS \
ZIP_SYMBOLS
-LIBS = \
- @LTLIBINTL@ @LIBS@
-
if HAVE_GLIB
oledir=ole2
if HAVE_GTK
@@ -53,9 +47,6 @@ endif
SUBDIRS = . oo $(printdir) hash $(oledir) rpm pdf $(thumbdir) $(exiv2dir)
-PLUGINFLAGS = -Wl,-s -Wl,-Bsymbolic -avoid-version -module -no-undefined
-
-
if HAVE_VORBISFILE
extraogg = libextractor_ogg.la
endif
@@ -102,7 +93,7 @@ if HAVE_VORBISFILE
libextractor_ogg_la_SOURCES = \
oggextractor.c
libextractor_ogg_la_LDFLAGS = \
- -lvorbisfile $(vorbisflag) $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,OGG_SYMBOLS
+ -lvorbisfile $(vorbisflag) $(PLUGINFLAGS) $(retaincommand)OGG_SYMBOLS
endif
noinst_LTLIBRARIES = \
@@ -112,7 +103,7 @@ noinst_LTLIBRARIES = \
if HAVE_ZLIB
libextractor_qt_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,QT_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)QT_SYMBOLS
libextractor_qt_la_LIBADD = \
-lz
libextractor_qt_la_SOURCES = \
@@ -123,81 +114,81 @@ libextractor_ps_la_SOURCES = \
psextractor.c
libextractor_ps_la_LDFLAGS = \
$(top_builddir)/src/main/libextractor.la \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,PS_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)PS_SYMBOLS
libextractor_wav_la_SOURCES = \
wavextractor.c
libextractor_wav_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,WAV_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)WAV_SYMBOLS
libextractor_mp3_la_SOURCES = \
mp3extractor.c
libextractor_mp3_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,MP3_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)MP3_SYMBOLS
libextractor_mp3_la_LIBADD = \
libconvert.la
libextractor_id3v2_la_SOURCES = \
id3v2extractor.c
libextractor_id3v2_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,ID3V2_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)ID3V2_SYMBOLS
libextractor_id3v2_la_LIBADD = \
libconvert.la
libextractor_id3v23_la_SOURCES = \
id3v23extractor.c
libextractor_id3v23_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,ID3V23_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)ID3V23_SYMBOLS
libextractor_id3v23_la_LIBADD = \
libconvert.la
libextractor_id3v24_la_SOURCES = \
id3v24extractor.c
libextractor_id3v24_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,ID3V24_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)ID3V24_SYMBOLS
libextractor_id3v24_la_LIBADD = \
libconvert.la
libextractor_dvi_la_SOURCES = \
dviextractor.c
libextractor_dvi_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,DVI_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)DVI_SYMBOLS
libextractor_asf_la_SOURCES = \
asfextractor.c
libextractor_asf_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,ASF_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)ASF_SYMBOLS
libextractor_tar_la_SOURCES = \
tarextractor.c
libextractor_tar_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,TAR_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)TAR_SYMBOLS
libextractor_tar_la_LIBADD = \
$(top_builddir)/src/main/libextractor.la
libextractor_lower_la_SOURCES = \
lowerextractor.c
libextractor_lower_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,LOWER_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)LOWER_SYMBOLS
libextractor_gif_la_SOURCES = \
gifextractor.c
libextractor_gif_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,GIF_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)GIF_SYMBOLS
libextractor_gif_la_LIBADD = \
libpack.la
libextractor_tiff_la_SOURCES = \
tiffextractor.c
libextractor_tiff_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,TIFF_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)TIFF_SYMBOLS
libextractor_tiff_la_LIBADD = \
libpack.la
libextractor_elf_la_SOURCES = \
elfextractor.c
libextractor_elf_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,ELF_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)ELF_SYMBOLS
libextractor_elf_la_LIBADD = \
libpack.la
@@ -215,35 +206,35 @@ libextractor_zip_la_SOURCES = \
zipextractor.c
libextractor_zip_la_LDFLAGS = \
$(top_builddir)/src/main/libextractor.la \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,ZIP_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)ZIP_SYMBOLS
libextractor_jpeg_la_SOURCES = \
jpegextractor.c
libextractor_jpeg_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,JPEG_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)JPEG_SYMBOLS
libextractor_html_la_SOURCES = \
htmlextractor.c
libextractor_html_la_LDFLAGS = \
$(top_builddir)/src/main/libextractor.la \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,HTML_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)HTML_SYMBOLS
libextractor_real_la_SOURCES = \
realextractor.c
libextractor_real_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,REAL_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)REAL_SYMBOLS
libextractor_mime_la_SOURCES = \
mimeextractor.c
libextractor_mime_la_LDFLAGS = \
$(top_builddir)/src/main/libextractor.la \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,MIME_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)MIME_SYMBOLS
libextractor_mpeg_la_SOURCES = \
mpegextractor.c
libextractor_mpeg_la_LDFLAGS = \
$(top_builddir)/src/main/libextractor.la \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,MPEG_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)MPEG_SYMBOLS
libextractor_mpeg_la_LIBADD = \
-lm
@@ -251,13 +242,13 @@ libextractor_man_la_SOURCES = \
manextractor.c
libextractor_man_la_LDFLAGS = \
$(top_builddir)/src/main/libextractor.la \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,MAN_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)MAN_SYMBOLS
libextractor_deb_la_SOURCES = \
debextractor.c
libextractor_deb_la_LDFLAGS = \
$(top_builddir)/src/main/libextractor.la \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,DEB_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)DEB_SYMBOLS
libextractor_deb_la_LIBADD = \
-lz
@@ -265,7 +256,7 @@ libextractor_riff_la_SOURCES = \
riffextractor.c
libextractor_riff_la_LDFLAGS = \
$(top_builddir)/src/main/libextractor.la \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,RIFF_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)RIFF_SYMBOLS
libextractor_riff_la_LIBADD = \
-lm
@@ -273,14 +264,14 @@ libextractor_png_la_SOURCES = \
pngextractor.c
libextractor_png_la_LDFLAGS = \
$(top_builddir)/src/main/libextractor.la \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,PNG_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)PNG_SYMBOLS
libextractor_png_la_LIBADD = \
libconvert.la -lz
libextractor_filename_la_SOURCES = \
filenameextractor.c
libextractor_filename_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,FILENAME_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)FILENAME_SYMBOLS
libextractor_filename_la_LIBADD = \
$(top_builddir)/src/main/libextractor.la \
libconvert.la
@@ -288,10 +279,10 @@ libextractor_filename_la_LIBADD = \
libextractor_split_la_SOURCES = \
splitextractor.c
libextractor_split_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,SPLIT_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)SPLIT_SYMBOLS
libextractor_translit_la_SOURCES = \
translitextractor.c
libextractor_translit_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,TRANSLIT_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)TRANSLIT_SYMBOLS
diff --git a/src/plugins/exiv2/Makefile.am b/src/plugins/exiv2/Makefile.am
@@ -1,73 +1,43 @@
-INCLUDES = -I$(top_srcdir)/src/include
+include ../Makefile-plugins.am
EXTRA_DIST = SYMBOLS
-# install plugins under:
-plugindir = $(libdir)/libextractor
-
SUBDIRS = .
-LIBS = \
- @LTLIBINTL@ @LIBS@
-
plugin_LTLIBRARIES = \
libextractor_exiv2.la
-PLUGINFLAGS = -Wl,-Bsymbolic -avoid-version -module -no-undefined
-
-
libextractor_exiv2_la_LINK = \
/bin/sh ../../../libtool --mode=link $(CXXLD) -o libextractor_exiv2.la
libextractor_exiv2_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,SYMBOLS \
- $(XTRA_CPPLIBS) -lpthread
+ $(XTRA_CPPLIBS) -lpthread \
+ $(PLUGINFLAGS) $(retaincommand)SYMBOLS
libextractor_exiv2_la_LIBADD = \
$(top_builddir)/src/main/libextractor.la -lpthread
libextractor_exiv2_la_SOURCES = \
exiv2extractor.cc exv_conf.h exv_msvc.h \
-basicio.cpp \
-basicio.hpp \
-canonmn.cpp \
-canonmn.hpp \
-datasets.cpp \
-datasets.hpp \
-error.cpp \
-error.hpp \
-exif.cpp \
-exif.hpp \
-fujimn.cpp \
-fujimn.hpp \
-futils.cpp \
-futils.hpp \
-ifd.cpp \
-ifd.hpp \
-image.cpp \
-image.hpp \
-iptc.cpp \
-iptc.hpp \
-jpgimage.cpp \
-jpgimage.hpp \
-makernote.cpp \
-makernote.hpp \
-metadatum.cpp \
-metadatum.hpp \
+basicio.cpp basicio.hpp \
+canonmn.cpp canonmn.hpp \
+datasets.cpp datasets.hpp \
+error.cpp error.hpp \
+exif.cpp exif.hpp \
+fujimn.cpp fujimn.hpp \
+futils.cpp futils.hpp \
+ifd.cpp ifd.hpp \
+image.cpp image.hpp \
+iptc.cpp iptc.hpp \
+jpgimage.cpp jpgimage.hpp \
+makernote.cpp makernote.hpp \
+metadatum.cpp metadatum.hpp \
mn.hpp \
-nikonmn.cpp \
-nikonmn.hpp \
-olympusmn.cpp \
-olympusmn.hpp \
-panasonicmn.cpp \
-panasonicmn.hpp \
+nikonmn.cpp nikonmn.hpp \
+olympusmn.cpp olympusmn.hpp \
+panasonicmn.cpp panasonicmn.hpp \
rcsid.hpp \
-sigmamn.cpp \
-sigmamn.hpp \
-sonymn.cpp \
-sonymn.hpp \
-tags.cpp \
-tags.hpp \
-types.cpp \
-types.hpp \
-value.cpp \
-value.hpp
+sigmamn.cpp sigmamn.hpp \
+sonymn.cpp sonymn.hpp \
+tags.cpp tags.hpp \
+types.cpp types.hpp \
+value.cpp value.hpp
diff --git a/src/plugins/hash/.cvsignore b/src/plugins/hash/.cvsignore
@@ -1,6 +0,0 @@
-*.lo
-*.la
-.deps
-.libs
-Makefile
-Makefile.in
diff --git a/src/plugins/hash/Makefile.am b/src/plugins/hash/Makefile.am
@@ -1,16 +1,10 @@
-INCLUDES = -I$(top_srcdir)/src/include
+include ../Makefile-plugins.am
EXTRA_DIST = \
MD5_SYMBOLS \
SHA1_SYMBOLS \
RMD160_SYMBOLS
-LIBS = \
- @LTLIBINTL@ @LIBS@
-
-# install plugins under:
-plugindir = $(libdir)/libextractor
-
SUBDIRS = .
plugin_LTLIBRARIES = \
@@ -18,19 +12,17 @@ plugin_LTLIBRARIES = \
libextractor_hash_sha1.la \
libextractor_hash_rmd160.la
-PLUGINFLAGS = -Wl,-Bsymbolic -avoid-version -module -no-undefined
-
libextractor_hash_md5_la_SOURCES = \
md5extractor.c
libextractor_hash_md5_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,MD5_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)MD5_SYMBOLS
libextractor_hash_sha1_la_SOURCES = \
sha1extractor.c
libextractor_hash_sha1_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,SHA1_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)SHA1_SYMBOLS
libextractor_hash_rmd160_la_SOURCES = \
rmd160extractor.c
libextractor_hash_rmd160_la_LDFLAGS = \
- $(PLUGINFLAGS) -Wl,--retain-symbols-file -Wl,RMD160_SYMBOLS
+ $(PLUGINFLAGS) $(retaincommand)RMD160_SYMBOLS
diff --git a/src/plugins/ole2/.cvsignore b/src/plugins/ole2/.cvsignore
@@ -1,6 +0,0 @@
-*.lo
-*.la
-.deps
-.libs
-Makefile
-Makefile.in
diff --git a/src/plugins/oo/.cvsignore b/src/plugins/oo/.cvsignore
@@ -1,6 +0,0 @@
-*.lo
-*.la
-.deps
-.libs
-Makefile
-Makefile.in
diff --git a/src/plugins/pdf/.cvsignore b/src/plugins/pdf/.cvsignore
@@ -1,6 +0,0 @@
-*.lo
-*.la
-.deps
-.libs
-Makefile
-Makefile.in
diff --git a/src/plugins/printable/.cvsignore b/src/plugins/printable/.cvsignore
@@ -1,20 +0,0 @@
-de.c
-en.c
-da.c
-es.c
-no.c
-it.c
-pede.c
-peen.c
-peda.c
-pees.c
-peno.c
-peit.c
-.cvsignore
-.deps
-.libs
-Makefile
-Makefile.in
-dictionary-builder
-*.la
-*.lo
diff --git a/src/plugins/printable/bloomfilter.c b/src/plugins/printable/bloomfilter.c
@@ -309,44 +309,6 @@ void static hash(const void * data,
-
-
-
-
-/**
- * Sets a bit active in the bitArray. Increment bit-specific
- * usage counter on disk only if below 4bit max (==15).
- *
- * @param bitArray memory area to set the bit in
- * @param bitIdx which bit to set
- */
-static void setBit(unsigned char * bitArray,
- unsigned int bitIdx) {
- unsigned int arraySlot;
- unsigned int targetBit;
-
- arraySlot = bitIdx / 8;
- targetBit = (1L << (bitIdx % 8));
- bitArray[arraySlot] |= targetBit;
-}
-
-/**
- * Checks if a bit is active in the bitArray
- *
- * @param bitArray memory area to set the bit in
- * @param bitIdx which bit to test
- * @return 1 if the bit is set, 0 if not.
- */
-static int testBit(unsigned char * bitArray,
- unsigned int bitIdx) {
- unsigned int slot;
- unsigned int targetBit;
-
- slot = bitIdx / 8;
- targetBit = (1L << (bitIdx % 8));
- return (bitArray[slot] & targetBit) != 0;
-}
-
/* ************** Bloomfilter hash iterator ********* */
/**
@@ -374,7 +336,7 @@ typedef void (*BitIterator)(Bloomfilter * bf,
static void iterateBits(Bloomfilter * bf,
BitIterator callback,
void * arg,
- HashCode160 * key) {
+ const HashCode160 * key) {
HashCode160 tmp[2];
int bitCount;
int round;
@@ -406,33 +368,5 @@ static void iterateBits(Bloomfilter * bf,
}
}
-/**
- * Callback: increment bit
- *
- * @param bf the filter to manipulate
- * @param bit the bit to increment
- * @param arg not used
- */
-static void setBitCallback(Bloomfilter * bf,
- unsigned int bit,
- void * arg) {
- setBit(bf->bitArray,
- bit);
-}
-
-/**
- * Callback: test if all bits are set
- *
- * @param bf the filter
- * @param bit the bit to test
- * @param arg pointer set to NO if bit is not set
- */
-static void testBitCallback(Bloomfilter * bf,
- unsigned int bit,
- int * arg) {
- if (! testBit(bf->bitArray,
- bit))
- *arg = 0;
-}
/* ******************** end of bloomfilter.c *********** */
diff --git a/src/plugins/printable/dictionary-builder.c b/src/plugins/printable/dictionary-builder.c
@@ -30,6 +30,36 @@
#include "bloomfilter.h"
#include "bloomfilter.c"
+/**
+ * Sets a bit active in the bitArray. Increment bit-specific
+ * usage counter on disk only if below 4bit max (==15).
+ *
+ * @param bitArray memory area to set the bit in
+ * @param bitIdx which bit to set
+ */
+static void setBit(unsigned char * bitArray,
+ unsigned int bitIdx) {
+ unsigned int arraySlot;
+ unsigned int targetBit;
+
+ arraySlot = bitIdx / 8;
+ targetBit = (1L << (bitIdx % 8));
+ bitArray[arraySlot] |= targetBit;
+}
+
+/**
+ * Callback: increment bit
+ *
+ * @param bf the filter to manipulate
+ * @param bit the bit to increment
+ * @param arg not used
+ */
+static void setBitCallback(Bloomfilter * bf,
+ unsigned int bit,
+ void * arg) {
+ setBit(bf->bitArray,
+ bit);
+}
/**
* Add an element to the filter
@@ -38,7 +68,7 @@
* @param e the element
*/
static void addToBloomfilter(Bloomfilter * bf,
- HashCode160 * e) {
+ const HashCode160 * e) {
if (NULL == bf)
return;
diff --git a/src/plugins/printable/printableextractor.c b/src/plugins/printable/printableextractor.c
@@ -33,6 +33,39 @@
#include "bloomfilter.c"
/**
+ * Checks if a bit is active in the bitArray
+ *
+ * @param bitArray memory area to set the bit in
+ * @param bitIdx which bit to test
+ * @return 1 if the bit is set, 0 if not.
+ */
+static int testBit(unsigned char * bitArray,
+ unsigned int bitIdx) {
+ unsigned int slot;
+ unsigned int targetBit;
+
+ slot = bitIdx / 8;
+ targetBit = (1L << (bitIdx % 8));
+ return (bitArray[slot] & targetBit) != 0;
+}
+
+
+/**
+ * Callback: test if all bits are set
+ *
+ * @param bf the filter
+ * @param bit the bit to test
+ * @param arg pointer set to NO if bit is not set
+ */
+static void testBitCallback(Bloomfilter * bf,
+ unsigned int bit,
+ void * cls) {
+ int * arg = cls;
+ if (! testBit(bf->bitArray,
+ bit))
+ *arg = 0;
+}
+/**
* Test if an element is in the filter.
*
* @param e the element
@@ -40,14 +73,14 @@
* @return 1 if the element is in the filter, 0 if not
*/
static int testBloomfilter(Bloomfilter * bf,
- HashCode160 * e) {
+ const HashCode160 * e) {
int res;
if (NULL == bf)
return 1;
res = 1;
iterateBits(bf,
- (BitIterator)&testBitCallback,
+ &testBitCallback,
&res,
e);
return res;
diff --git a/src/plugins/rpm/.cvsignore b/src/plugins/rpm/.cvsignore
@@ -1,6 +0,0 @@
-*.lo
-*.la
-.deps
-.libs
-Makefile
-Makefile.in
diff --git a/src/test/.cvsignore b/src/test/.cvsignore
@@ -1,8 +0,0 @@
-multiload
-plugintest
-Makefile
-Makefile.in
-trivialtest
-keywordlisttest
-.libs
-.deps