Use dynamic lib for shared recoll code

This commit is contained in:
Jean-Francois Dockes 2012-12-29 14:27:01 +01:00
parent 5725194a00
commit d2f7f11715
28 changed files with 173 additions and 196 deletions

View File

@ -75,10 +75,12 @@ src/index/alldeps.stamp
src/index/recollindex
src/kde/kioslave/kio_recoll/builddir
src/lib/alldeps
src/lib/librcl.a
src/lib/librecoll.a
src/lib/librecoll.so*
src/mk/localdefs
src/mk/sysconf
src/python/recoll/build
src/python/recoll/recoll/__init__.pyc
src/python/recoll/setup.py
src/python/samples/recollgui/rclmain.py
src/python/samples/recollgui/rclmain.pyc

View File

@ -17,7 +17,7 @@ all: mk/sysconf
@NOQTMAKE@(cd $(QTGUI); ${QMAKE} recoll.pro)
@NOQTMAKE@${MAKE} -C $(QTGUI) depth=..
@NOPYTHON@${MAKE} -C python/recoll
${MAKE} -C query recollq
${MAKE} -C query recollq xadump
mk/sysconf:
@echo "You need to run configure first" ; exit 1

View File

@ -4,28 +4,16 @@ include $(depth)/mk/sysconf
PROGS = rclaspell
SRCS = rclaspell.cpp
all: depend $(BIGLIB) $(PROGS)
all: depend $(PROGS) librecoll
RCLASPELL_OBJS= trrclaspell.o $(BIGLIB)
RCLASPELL_OBJS= trrclaspell.o
rclaspell : $(RCLASPELL_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o rclaspell $(RCLASPELL_OBJS) \
$(LIBXAPIAN) $(LIBICONV)
$(LIBRECOLL) $(LIBXAPIAN) $(LIBICONV)
trrclaspell.o : rclaspell.cpp
$(CXX) $(ALL_CXXFLAGS) -DTEST_RCLASPELL -c -o trrclaspell.o \
rclaspell.cpp
$(BIGLIB): force
cd $(depth)/lib;$(MAKE)
force:
depend: alldeps.stamp
alldeps.stamp : $(SRCS)
$(CXX) -M $(ALL_CXXFLAGS) $(SRCS) > alldeps
touch alldeps.stamp
clean:
cp /dev/null alldeps
rm -f alldeps.stamp
rm -f *.o $(PROGS)
include $(depth)/mk/commontargets
include alldeps

View File

@ -26,14 +26,6 @@ TRBINCOBJS = trbinc.o
trbinc: trbinc.o
$(CXX) -o trbinc trbinc.o libmime.a
depend: alldeps.stamp
alldeps.stamp : $(SRCS)
$(CXX) -M $(ALL_CXXFLAGS) $(SRCS) > alldeps
touch alldeps.stamp
clean:
cp /dev/null alldeps
rm -f alldeps.stamp
rm -f ${LIBS} ${PROGS} ${OBJS}
include $(depth)/mk/commontargets
include alldeps

View File

@ -1,38 +1,33 @@
# @(#$Id: Makefile,v 1.16 2008-12-17 14:26:49 dockes Exp $ (C) 2005 J.F.Dockes
depth = ..
include $(depth)/mk/sysconf
# Only test executables get build in here
PROGS = unacpp textsplit rclconfig
all: $(BIGLIB) $(PROGS)
all: librecoll $(PROGS)
$(BIGLIB): force
cd $(depth)/lib;$(MAKE)
force:
UNACPP_OBJS= trunacpp.o $(BIGLIB)
UNACPP_OBJS= trunacpp.o
unacpp : $(UNACPP_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o unacpp $(UNACPP_OBJS) \
$(LIBICONV)
$(LIBRECOLL) $(LIBICONV)
trunacpp.o : unacpp.cpp unacpp.h
$(CXX) $(ALL_CXXFLAGS) -DTEST_UNACPP -c -o trunacpp.o unacpp.cpp
TEXTSPLIT_OBJS= trtextsplit.o $(BIGLIB)
TEXTSPLIT_OBJS= trtextsplit.o
textsplit : $(TEXTSPLIT_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o textsplit $(TEXTSPLIT_OBJS) $(LIBICONV)
$(CXX) $(ALL_CXXFLAGS) -o textsplit $(TEXTSPLIT_OBJS) \
$(LIBRECOLL) $(LIBICONV)
trtextsplit.o : textsplit.cpp
$(CXX) $(ALL_CXXFLAGS) -DTEST_TEXTSPLIT -c -o trtextsplit.o \
textsplit.cpp
RCLCONFIG_OBJS= trrclconfig.o $(BIGLIB)
RCLCONFIG_OBJS= trrclconfig.o
rclconfig : $(RCLCONFIG_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o rclconfig $(RCLCONFIG_OBJS) \
$(LIBICONV) $(LIBSYS)
$(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trrclconfig.o : rclconfig.cpp
$(CXX) $(ALL_CXXFLAGS) -DTEST_RCLCONFIG -c -o trrclconfig.o \
rclconfig.cpp
clean:
rm -f *.o $(PROGS)
include $(depth)/mk/commontargets

View File

@ -1383,7 +1383,7 @@ int main(int argc, char **argv)
// List mime types not in mimeview
for (vector<string>::const_iterator it = mtypes.begin();
it != mtypes.end(); it++) {
if (config->getMimeViewerDef(*it, "").empty()) {
if (config->getMimeViewerDef(*it, "", false).empty()) {
cout << "No viewer: [" << *it << "]" << endl;
}
}
@ -1399,7 +1399,7 @@ int main(int argc, char **argv)
// Check that each mime type has a defined icon
for (vector<string>::const_iterator it = mtypes.begin();
it != mtypes.end(); it++) {
if (config->getMimeIconName(*it) == "document") {
if (config->getMimeIconPath(*it, "") == "document") {
cout << "No or generic icon: [" << *it << "]" << endl;
}
}

View File

@ -837,10 +837,12 @@ bool TextSplit::stringToStrings(const string &s, vector<string> &tokens)
#else // TEST driver ->
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <errno.h>
#include <fcntl.h>
#include <stdio.h>
#include <string.h>
#include <iostream>

View File

@ -121,6 +121,8 @@ bool unachasaccents(const string& in)
#else // not testing
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
#include <errno.h>

5
src/configure vendored
View File

@ -621,6 +621,7 @@ ac_includes_default="\
ac_subst_vars='LTLIBOBJS
LIBOBJS
RCLLIBVERSION
RCLVERSION
NOPYTHON
NOTHREADS
@ -5719,6 +5720,8 @@ m_datadir=${m_prefix}/share
QTRECOLL_DATADIR=${m_datadir}/recoll
RCLVERSION=`cat VERSION`
RCLLIBVERSION=$RCLVERSION
@ -5769,7 +5772,7 @@ do
cp -f /dev/null $d/alldeps
done
(cd lib;test -f Makefile && chmod +w Makefile;sh mkMake)
(cd lib;RCLLIBVERSION=$RCLLIBVERSION sh mkMake)
cat >confcache <<\_ACEOF
# This file is a shell script that caches the results of configure

View File

@ -533,6 +533,7 @@ m_datadir=${m_prefix}/share
QTRECOLL_DATADIR=${m_datadir}/recoll
RCLVERSION=`cat VERSION`
RCLLIBVERSION=$RCLVERSION
AC_SUBST(X_CFLAGS)
AC_SUBST(X_PRE_LIBS)
@ -561,6 +562,7 @@ AC_SUBST(NOPIC)
AC_SUBST(NOTHREADS)
AC_SUBST(NOPYTHON)
AC_SUBST(RCLVERSION)
AC_SUBST(RCLLIBVERSION)
# All object files depend on localdefs which has the cc flags. Avoid
# changing it unless necessary
@ -577,7 +579,7 @@ do
cp -f /dev/null $d/alldeps
done
(cd lib;test -f Makefile && chmod +w Makefile;sh mkMake)
(cd lib;RCLLIBVERSION=$RCLLIBVERSION sh mkMake)
AC_OUTPUT

View File

@ -2542,7 +2542,7 @@ text/html [file:///Users/uncrypted-dockes/projets/bateaux/ilur/factEtCie/r
<replaceable>dc:title:grandet</replaceable> </para>
<para>The colon, if present, means "contains". Xesam defines other
relations, which are mostly supported for now (except in special
relations, which are mostly unsupported for now (except in special
cases, described further down).</para>
<para>All elements in the search entry are normally combined

View File

@ -4,12 +4,13 @@ include $(depth)/mk/sysconf
PROGS = recollindex
SRCS = recollindex.cpp rclmonrcv.cpp rclmonprc.cpp
all: depend $(PROGS) $(BIGLIB)
all: depend $(PROGS) librecoll
RECOLLINDEX_OBJS= recollindex.o rclmonrcv.o rclmonprc.o $(BIGLIB)
recollindex : $(RECOLLINDEX_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o recollindex $(RECOLLINDEX_OBJS) \
$(BSTATIC) $(LIBXAPIAN) $(LIBXAPIANSTATICEXTRA) \
RECOLLINDEX_OBJS= recollindex.o rclmonrcv.o rclmonprc.o
recollindex : $(RECOLLINDEX_OBJS) librecoll
$(CXX) $(ALL_CXXFLAGS) $(RECOLL_LDFLAGS) -o recollindex \
$(RECOLLINDEX_OBJS) \
$(BSTATIC) $(LIBRECOLL) $(LIBXAPIAN) $(LIBXAPIANSTATICEXTRA) \
$(LIBICONV) $(BDYNAMIC) \
$(LIBFAM) \
$(X_LIBS) $(X_PRE_LIBS) $(X_LIBX11) $(X_EXTRA_LIBS) \
@ -21,33 +22,21 @@ rclmonrcv.o : rclmonrcv.cpp
rclmonprc.o : rclmonprc.cpp
$(CXX) $(ALL_CXXFLAGS) -c -o rclmonprc.o $<
SUBTREELIST_OBJS= subtreelist.o $(BIGLIB)
SUBTREELIST_OBJS= subtreelist.o
subtreelist : $(SUBTREELIST_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o subtreelist $(SUBTREELIST_OBJS) \
$(LIBICONV) $(LIBXAPIAN) $(LIBSYS)
$(LIBRECOLL) $(LIBICONV) $(LIBXAPIAN) $(LIBSYS)
subtreelist.o : subtreelist.cpp
$(CXX) $(ALL_CXXFLAGS) -DTEST_SUBTREELIST -c subtreelist.cpp
MIMETYPE_OBJS= trmimetype.o $(BIGLIB)
mimetype : $(MIMETYPE_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o mimetype $(MIMETYPE_OBJS) \
$(LIBICONV) $(LIBSYS)
$(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trmimetype.o : mimetype.cpp
$(CXX) $(ALL_CXXFLAGS) -DTEST_MIMETYPE -c -o trmimetype.o \
mimetype.cpp
$(BIGLIB): force
cd $(depth)/lib;$(MAKE)
force:
depend: alldeps.stamp
alldeps.stamp : $(SRCS)
$(CXX) -M $(ALL_CXXFLAGS) $(SRCS) > alldeps
touch alldeps.stamp
clean:
cp /dev/null alldeps
rm -f alldeps.stamp
rm -f *.o $(PROGS)
include $(depth)/mk/commontargets
include alldeps

View File

@ -1,20 +1,15 @@
# @(#$Id: Makefile,v 1.4 2008-11-24 15:47:40 dockes Exp $ (C) 2005 J.F.Dockes
depth = ..
include $(depth)/mk/sysconf
# Only test executables get build in here
PROGS = mh_mbox internfile
all: $(BIGLIB) $(PROGS)
$(BIGLIB): force
cd $(depth)/lib;$(MAKE)
force:
all: librecoll $(PROGS)
INTERNFILE_OBJS= trinternfile.o $(BIGLIB)
internfile : $(INTERNFILE_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o internfile $(INTERNFILE_OBJS) \
$(LIBICONV) $(LIBSYS)
$(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trinternfile.o : internfile.cpp
$(CXX) $(ALL_CXXFLAGS) -DTEST_INTERNFILE -c -o trinternfile.o \
internfile.cpp
@ -22,12 +17,9 @@ trinternfile.o : internfile.cpp
MH_MBOX_OBJS= trmh_mbox.o $(BIGLIB)
mh_mbox : $(MH_MBOX_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o mh_mbox $(MH_MBOX_OBJS) \
$(LIBICONV) $(LIBSYS)
$(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trmh_mbox.o : mh_mbox.cpp
$(CXX) $(ALL_CXXFLAGS) -DTEST_MH_MBOX -c -o trmh_mbox.o \
mh_mbox.cpp
clean:
rm -f *.o $(PROGS)
include $(depth)/mk/commontargets

View File

@ -1216,7 +1216,8 @@ int main(int argc, char **argv)
perror("stat");
exit(1);
}
FileInterner interner(fn, &st, config, "/tmp", 0);
TempDir tmp;
FileInterner interner(fn, &st, config, tmp, 0);
Rcl::Doc doc;
FileInterner::Status status = interner.internfile(doc, ipath);
switch (status) {

View File

@ -54,7 +54,7 @@ add_custom_target(rcllib
)
add_dependencies(kio_recoll rcllib)
target_link_libraries(kio_recoll rcl xapian z ${EXTRA_LIBS} ${KDE4_KIO_LIBS})
target_link_libraries(kio_recoll recoll xapian z ${EXTRA_LIBS} ${KDE4_KIO_LIBS})
install(TARGETS kio_recoll DESTINATION ${PLUGIN_INSTALL_DIR})

View File

@ -2,21 +2,25 @@
depth = ..
include $(depth)/mk/sysconf
LIBS = librcl.a
LIBRECOLL=librecoll.so.$(RCLLIBVERSION)
LIBS = librecoll.a $(LIBRECOLL)
all: $(LIBS)
OBJS = rclaspell.o beaglequeuecache.o cstr.o rclconfig.o rclinit.o textsplit.o unacpp.o beaglequeue.o bglfetcher.o fetcher.o fsfetcher.o fsindexer.o indexer.o mimetype.o subtreelist.o htmlparse.o internfile.o mh_exec.o mh_execm.o mh_html.o mh_mail.o mh_mbox.o mh_text.o mimehandler.o myhtmlparse.o txtdcode.o docseq.o docseqdb.o docseqhist.o filtseq.o dynconf.o plaintorich.o recollq.o reslistpager.o sortseq.o wasastringtoquery.o wasatorcl.o daterange.o expansiondbs.o rclabstract.o rcldb.o rcldoc.o rclquery.o searchdata.o searchdataxml.o stemdb.o stoplist.o synfamily.o unac.o base64.o circache.o closefrom.o conftree.o copyfile.o debuglog.o ecrontab.o execmd.o fstreewalk.o idfile.o fileudi.o md5.o mimeparse.o netcon.o pathut.o pxattr.o rclionice.o readfile.o smallut.o transcode.o wipedir.o x11mon.o mime-parsefull.o mime-parseonlyheader.o mime-printbody.o mime.o convert.o iodevice.o iofactory.o
DEPS = rclaspell.dep.stamp beaglequeuecache.dep.stamp cstr.dep.stamp rclconfig.dep.stamp rclinit.dep.stamp textsplit.dep.stamp unacpp.dep.stamp beaglequeue.dep.stamp bglfetcher.dep.stamp fetcher.dep.stamp fsfetcher.dep.stamp fsindexer.dep.stamp indexer.dep.stamp mimetype.dep.stamp subtreelist.dep.stamp htmlparse.dep.stamp internfile.dep.stamp mh_exec.dep.stamp mh_execm.dep.stamp mh_html.dep.stamp mh_mail.dep.stamp mh_mbox.dep.stamp mh_text.dep.stamp mimehandler.dep.stamp myhtmlparse.dep.stamp txtdcode.dep.stamp docseq.dep.stamp docseqdb.dep.stamp docseqhist.dep.stamp filtseq.dep.stamp dynconf.dep.stamp plaintorich.dep.stamp recollq.dep.stamp reslistpager.dep.stamp sortseq.dep.stamp wasastringtoquery.dep.stamp wasatorcl.dep.stamp daterange.dep.stamp expansiondbs.dep.stamp rclabstract.dep.stamp rcldb.dep.stamp rcldoc.dep.stamp rclquery.dep.stamp searchdata.dep.stamp searchdataxml.dep.stamp stemdb.dep.stamp stoplist.dep.stamp synfamily.dep.stamp unac.dep.stamp base64.dep.stamp circache.dep.stamp closefrom.dep.stamp conftree.dep.stamp copyfile.dep.stamp debuglog.dep.stamp ecrontab.dep.stamp execmd.dep.stamp fstreewalk.dep.stamp idfile.dep.stamp fileudi.dep.stamp md5.dep.stamp mimeparse.dep.stamp netcon.dep.stamp pathut.dep.stamp pxattr.dep.stamp rclionice.dep.stamp readfile.dep.stamp smallut.dep.stamp transcode.dep.stamp wipedir.dep.stamp x11mon.dep.stamp mime-parsefull.dep.stamp mime-parseonlyheader.dep.stamp mime-printbody.dep.stamp mime.dep.stamp convert.dep.stamp iodevice.dep.stamp iofactory.dep.stamp
librcl.a : $(DEPS) $(OBJS)
ar ru librcl.a $(OBJS)
$(RANLIB) librcl.a
librecoll.a : $(DEPS) $(OBJS)
ar ru librecoll.a $(OBJS)
$(RANLIB) librecoll.a
# Future
#all: librecoll.so
#librecoll.so : $(DEPS) $(OBJS)
# g++ -shared -Wl,--no-undefined # -Wl,-soname=librecoll.so.1 -o librecoll.so $(OBJS) # -lxapian -lz -lX11 -lpthread -ldl
# Note that we are using the Recoll release number in the soname. There is
# no effort whatsoever to maintain any kind of ABI compat in this lib. Only
# programs or modules from the same Recoll release can be compatible.
$(LIBRECOLL): $(DEPS) $(OBJS)
g++ -shared -Wl,--no-undefined -Wl,-rpath=$(libdir) -Wl,-soname=$(LIBRECOLL) -o $(LIBRECOLL) $(OBJS) -lxapian -lz -lX11 -lpthread -ldl
rm -f librecoll.so
ln -s $(LIBRECOLL) librecoll.so
rclaspell.o : ../aspell/rclaspell.cpp $(depth)/mk/localdefs
$(CXX) $(ALL_CXXFLAGS) -c ../aspell/rclaspell.cpp

View File

@ -115,23 +115,27 @@ cat > $mk <<EOF
depth = ${depth}
include \$(depth)/mk/sysconf
LIBS = librcl.a
LIBRECOLL=librecoll.so.\$(RCLLIBVERSION)
LIBS = librecoll.a \$(LIBRECOLL)
all: \$(LIBS)
OBJS = $OBJS
DEPS = $DEPS
librcl.a : \$(DEPS) \$(OBJS)
ar ru librcl.a \$(OBJS)
\$(RANLIB) librcl.a
librecoll.a : \$(DEPS) \$(OBJS)
ar ru librecoll.a \$(OBJS)
\$(RANLIB) librecoll.a
# Future
#all: librecoll.so
#librecoll.so : \$(DEPS) \$(OBJS)
# g++ -shared -Wl,--no-undefined \
# -Wl,-soname=librecoll.so.1 -o librecoll.so \$(OBJS) \
# -lxapian -lz -lX11 -lpthread -ldl
# Note that we are using the Recoll release number in the soname. There is
# no effort whatsoever to maintain any kind of ABI compat in this lib. Only
# programs or modules from the same Recoll release can be compatible.
\$(LIBRECOLL): \$(DEPS) \$(OBJS)
g++ -shared -Wl,--no-undefined -Wl,-rpath=\$(libdir) \
-Wl,-soname=\$(LIBRECOLL) -o \$(LIBRECOLL) \$(OBJS) \
-lxapian -lz -lX11 -lpthread -ldl
rm -f librecoll.so
ln -s \$(LIBRECOLL) librecoll.so
EOF

View File

@ -15,8 +15,7 @@ COMMONCXXFLAGS = -I. \
# the sys file or localdefs
SYSPICFLAGS = -fPIC -DPIC
BIGLIB = $(depth)/lib/librcl.a
LIBRECOLL = -L $(depth)/lib -lrecoll -Wl,-rpath=$(libdir)
RANLIB = test -f
AR=ar

14
src/mk/commontargets Normal file
View File

@ -0,0 +1,14 @@
librecoll:
make -C $(depth)/lib
depend: alldeps.stamp
alldeps.stamp : $(SRCS)
$(CXX) -M $(ALL_CXXFLAGS) $(SRCS) > alldeps
touch alldeps.stamp
clean:
cp /dev/null alldeps
rm -f alldeps.stamp
rm -f *.o ${LIBS} ${PROGS} ${OBJS}

View File

@ -10,6 +10,8 @@ INCICONV=@INCICONV@
LIBFAM = @LIBFAM@
RCLLIBVERSION=@RCLLIBVERSION@
X_CFLAGS=@X_CFLAGS@
X_PRE_LIBS=@X_PRE_LIBS@
X_LIBS=@X_LIBS@

View File

@ -11,7 +11,7 @@ if test $PHP_RECOLL != "no"; then
PHP_ADD_INCLUDE(../../query)
PHP_ADD_INCLUDE(../../unac)
PHP_ADD_INCLUDE(../../internfile)
PHP_ADD_LIBRARY_WITH_PATH(rcl, ../../lib, RECOLL_SHARED_LIBADD)
PHP_ADD_LIBRARY_WITH_PATH(recoll, ../../lib, RECOLL_SHARED_LIBADD)
PHP_ADD_LIBRARY(xapian, , RECOLL_SHARED_LIBADD)
PHP_ADD_LIBRARY(stdc++, 1, RECOLL_SHARED_LIBADD)
PHP_NEW_EXTENSION(recoll, recoll.cpp, $ext_shared)

View File

@ -4,5 +4,6 @@ install:
sudo python setup.py install
clean:
rm -rf build
rm -f recoll/__init__.pyc
distclean: clean
rm -f setup.py

View File

@ -8,9 +8,9 @@ top = os.path.join('..', '..')
libiconv = "@LIBICONV@"
if libiconv.find("-liconv") != -1:
libs = ['rcl', 'xapian', 'iconv']
libs = ['recoll', 'xapian', 'iconv']
else:
libs = ['rcl', 'xapian']
libs = ['recoll', 'xapian']
libxapiandir="@LIBXAPIANDIR@"
if libxapiandir != "":
@ -50,6 +50,7 @@ module1 = Extension('recoll',
],
libraries = libs,
library_dirs = libdirs,
runtime_library_dirs = libdirs,
sources = ['pyrecoll.cpp'])
module2 = Extension('rclextract',
@ -66,6 +67,7 @@ module2 = Extension('rclextract',
],
libraries = libs,
library_dirs = libdirs,
runtime_library_dirs = libdirs,
sources = ['pyrclextract.cpp'])
setup (name = 'Recoll',

View File

@ -80,16 +80,17 @@ unix {
UI_DIR = .ui
MOC_DIR = .moc
OBJECTS_DIR = .obj
LIBS += ../lib/librcl.a \
$(BSTATIC) @LIBXAPIAN@ $(LIBXAPIANSTATICEXTRA) @LIBICONV@ $(BDYNAMIC) \
@LIBQZEITGEIST@ -lz
# Expanding prefix here is not good as it means that it can't be
# redefined at make time.
LIBS += $(BSTATIC) -L../lib -lrecoll -Wl,-rpath=@prefix@/lib \
@LIBXAPIAN@ $(LIBXAPIANSTATICEXTRA) \
@LIBICONV@ $(BDYNAMIC) @LIBQZEITGEIST@ -lz
INCLUDEPATH += ../common ../index ../internfile ../query ../unac \
../utils ../aspell ../rcldb ../qtgui \
confgui
DEPENDPATH += $$INCLUDEPATH
POST_TARGETDEPS = ../lib/librcl.a
POST_TARGETDEPS = ../lib/librecoll.a
}
UNAME = $$system(uname -s)

View File

@ -2,22 +2,22 @@ depth = ..
include $(depth)/mk/sysconf
PROGS = xadump recollq #trhist qtry qxtry
SRCS = xadump.cpp
all: $(PROGS)
all: depend $(PROGS) librecoll
SRCS = xadump.cpp rclqlang.cpp
.cpp.o :
$(CXX) -c $(ALL_CXXFLAGS) -o $@ $<
XADUMP_OBJS= xadump.o $(BIGLIB)
XADUMP_OBJS= xadump.o
xadump : $(XADUMP_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o xadump $(XADUMP_OBJS) \
$(LIBICONV) $(LIBXAPIAN) $(LIBSYS)
$(depth)/lib/librecoll.a $(LIBICONV) $(LIBXAPIAN) $(LIBSYS)
xadump.o : xadump.cpp
$(CXX) $(ALL_CXXFLAGS) -c xadump.cpp
RECOLLQ_OBJS= recollq.o $(BIGLIB)
recollq : $(RECOLLQ_OBJS)
RECOLLQ_OBJS= recollq.o
recollq : $(RECOLLQ_OBJS) librecoll
$(CXX) $(ALL_CXXFLAGS) -o recollq $(RECOLLQ_OBJS) \
$(LIBICONV) $(LIBXAPIAN) $(LIBSYS)
$(BSTATIC) $(LIBRECOLL) $(LIBXAPIAN) $(LIBICONV) $(BDYNAMIC) \
$(LIBSYS)
recollq.o : recollq.cpp
$(CXX) $(ALL_CXXFLAGS) -DTEST_RECOLLQ -c recollq.cpp
@ -28,27 +28,14 @@ trhist : $(HISTORY_OBJS)
trhist.o : history.cpp history.h
$(CXX) $(ALL_CXXFLAGS) -DTEST_HISTORY -c -o trhist.o history.cpp
WASASTRINGTOQUERY_OBJS= trwasastrtoq.o $(BIGLIB)
WASASTRINGTOQUERY_OBJS= trwasastrtoq.o
trwasastrtoq : $(WASASTRINGTOQUERY_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o trwasastrtoq $(WASASTRINGTOQUERY_OBJS) \
$(LIBICONV) $(LIBXAPIAN)
$(LIBRECOLL) $(LIBICONV) $(LIBXAPIAN)
trwasastrtoq.o : wasastringtoquery.cpp wasastringtoquery.h
$(CXX) $(ALL_CXXFLAGS) -DTEST_WASASTRINGTOQUERY -c \
-o trwasastrtoq.o wasastringtoquery.cpp
$(BIGLIB): force
cd $(depth)/lib;$(MAKE)
force:
depend: alldeps.stamp
alldeps.stamp : $(SRCS)
$(CXX) -M $(ALL_CXXFLAGS) $(SRCS) > alldeps
touch alldeps.stamp
clean:
cp /dev/null alldeps
rm -f alldeps.stamp
rm -f *.o $(PROGS)
include $(depth)/mk/commontargets
include alldeps

View File

@ -1,32 +1,25 @@
# @(#$Id: Makefile,v 1.1 2007-06-02 08:30:42 dockes Exp $ (C) 2005 J.F.Dockes
depth = ..
include $(depth)/mk/sysconf
# Only test executables get build in here
PROGS = synfamily stoplist
all: $(BIGLIB) $(PROGS)
all: librecoll $(PROGS)
$(BIGLIB): force
cd $(depth)/lib;$(MAKE)
force:
STOPLIST_OBJS= trstoplist.o $(BIGLIB)
STOPLIST_OBJS= trstoplist.o
stoplist : $(STOPLIST_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o stoplist $(STOPLIST_OBJS) \
$(LIBICONV) $(LIBSYS)
$(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trstoplist.o : stoplist.cpp
$(CXX) $(ALL_CXXFLAGS) -DTEST_STOPLIST -c -o trstoplist.o \
stoplist.cpp
SYNFAMILY_OBJS= trsynfamily.o $(BIGLIB)
SYNFAMILY_OBJS= trsynfamily.o
synfamily : $(SYNFAMILY_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o synfamily $(SYNFAMILY_OBJS) \
$(BIGLIB) $(LIBICONV) $(LIBXAPIAN) $(LIBSYS)
$(LIBRECOLL) $(LIBICONV) $(LIBXAPIAN) $(LIBSYS)
trsynfamily.o : synfamily.cpp
$(CXX) $(ALL_CXXFLAGS) -DTEST_SYNFAMILY -c -o trsynfamily.o \
synfamily.cpp
clean:
rm -f *.o $(PROGS)
include $(depth)/mk/commontargets

View File

@ -22,7 +22,10 @@ QTGUI=@QTGUI@
# The .qm files are in qtgui/i18n even if qt4 is used
I18N=qtgui/i18n
RCLLIBVERSION=@RCLLIBVERSION@
test -n "$bindir" || bindir=${PREFIX}/bin
test -n "$libdir" || libdir=${PREFIX}/lib
test -n "$datadir" || datadir=${PREFIX}/share
if test -z "$mandir" ; then
if test -d ${PREFIX}/man ; then
@ -111,6 +114,8 @@ ${INSTALL} -m 0444 doc/man/recoll.conf.5 ${mandir}/man5/
${INSTALL} -m 0755 index/recollindex ${bindir} || exit 1
${STRIP} ${bindir}/recollindex
${INSTALL} -m 0644 lib/librecoll.so.${RCLLIBVERSION} ${libdir} || exit 1
${INSTALL} -m 0755 filters/rcl* ${datadir}/recoll/filters/ || exit 1
for f in rclexecm.py rcllatinstops.zip;do
chmod 644 ${datadir}/recoll/filters/$f

View File

@ -6,113 +6,112 @@ PROGS = trecrontab
#trconftree wipedir smallut trfstreewalk trpathut transcode trbase64 \
#trmimeparse trexecmd utf8iter idfile
all: $(PROGS) $(BIGLIB)
all: librecoll $(PROGS)
$(BIGLIB): force
cd $(depth)/lib;$(MAKE)
force:
ECRONTAB_OBJS= trecrontab.o $(BIGLIB)
ECRONTAB_OBJS= trecrontab.o
trecrontab : $(ECRONTAB_OBJS)
$(CXX) -o trecrontab $(ECRONTAB_OBJS) $(LIBICONV) \
$(LIBSYS)
$(CXX) -o trecrontab $(ECRONTAB_OBJS) \
$(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trecrontab.o : ecrontab.cpp ecrontab.h
$(CXX) -o trecrontab.o -c $(ALL_CXXFLAGS) \
-DTEST_ECRONTAB ecrontab.cpp
FSTREEWALK_OBJS= trfstreewalk.o $(BIGLIB)
FSTREEWALK_OBJS= trfstreewalk.o
trfstreewalk : $(FSTREEWALK_OBJS)
$(CXX) -o trfstreewalk $(FSTREEWALK_OBJS) $(LIBICONV) \
$(LIBSYS)
$(CXX) -o trfstreewalk $(FSTREEWALK_OBJS) \
$(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trfstreewalk.o : fstreewalk.cpp fstreewalk.h
$(CXX) -o trfstreewalk.o -c $(ALL_CXXFLAGS) \
-DTEST_FSTREEWALK fstreewalk.cpp
READFILE_OBJS= trreadfile.o $(BIGLIB)
READFILE_OBJS= trreadfile.o
trreadfile : $(READFILE_OBJS)
$(CXX) -o trreadfile $(READFILE_OBJS) $(LIBICONV) $(LIBSYS)
$(CXX) -o trreadfile $(READFILE_OBJS) $(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trreadfile.o : readfile.cpp readfile.h
$(CXX) -o trreadfile.o -c $(ALL_CXXFLAGS) \
-DTEST_READFILE readfile.cpp
CIRCACHE_OBJS= trcircache.o $(BIGLIB)
CIRCACHE_OBJS= trcircache.o
trcircache : $(CIRCACHE_OBJS)
$(CXX) -o trcircache $(CIRCACHE_OBJS) $(LIBICONV) $(LIBSYS) -lz
$(CXX) -o trcircache $(CIRCACHE_OBJS) \
$(LIBRECOLL) $(LIBICONV) $(LIBSYS) -lz
trcircache.o : circache.cpp circache.h
$(CXX) -o trcircache.o -c $(ALL_CXXFLAGS) \
-DTEST_CIRCACHE circache.cpp
COPYFILE_OBJS= trcopyfile.o $(BIGLIB)
COPYFILE_OBJS= trcopyfile.o
trcopyfile : $(COPYFILE_OBJS)
$(CXX) -o trcopyfile $(COPYFILE_OBJS) $(LIBICONV) $(LIBSYS)
$(CXX) -o trcopyfile $(COPYFILE_OBJS) $(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trcopyfile.o : copyfile.cpp copyfile.h
$(CXX) -o trcopyfile.o -c $(ALL_CXXFLAGS) \
-DTEST_COPYFILE copyfile.cpp
MD5_OBJS= trmd5.o $(BIGLIB)
MD5_OBJS= trmd5.o
trmd5 : $(MD5_OBJS)
$(CXX) -o trmd5 $(MD5_OBJS) $(LIBICONV) $(LIBSYS)
$(CXX) -o trmd5 $(MD5_OBJS) $(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trmd5.o : md5.cpp md5.h
$(CXX) -o trmd5.o -c $(ALL_CXXFLAGS) -DTEST_MD5 md5.cpp
PATHUT_OBJS= trpathut.o $(BIGLIB)
PATHUT_OBJS= trpathut.o
trpathut : $(PATHUT_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o trpathut $(PATHUT_OBJS) $(LIBICONV) $(LIBSYS)
$(CXX) $(ALL_CXXFLAGS) -o trpathut $(PATHUT_OBJS) \
$(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trpathut.o : pathut.cpp pathut.h
$(CXX) -o trpathut.o -c $(ALL_CXXFLAGS) -DTEST_PATHUT pathut.cpp
NETCON_OBJS= trnetcon.o $(BIGLIB)
NETCON_OBJS= trnetcon.o
trnetcon : $(NETCON_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o trnetcon $(NETCON_OBJS) $(LIBICONV) $(LIBSYS)
$(CXX) $(ALL_CXXFLAGS) -o trnetcon $(NETCON_OBJS) \
$(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trnetcon.o : netcon.cpp netcon.h
$(CXX) -o trnetcon.o -c $(ALL_CXXFLAGS) -DTEST_NETCON netcon.cpp
FILEUDI_OBJS= trfileudi.o $(BIGLIB)
FILEUDI_OBJS= trfileudi.o
trfileudi : $(FILEUDI_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o trfileudi $(FILEUDI_OBJS)
trfileudi.o : fileudi.cpp fileudi.h
$(CXX) -o trfileudi.o -c $(ALL_CXXFLAGS) -DTEST_FILEUDI fileudi.cpp
EXECMD_OBJS= trexecmd.o $(BIGLIB)
EXECMD_OBJS= trexecmd.o
trexecmd : $(EXECMD_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o trexecmd $(EXECMD_OBJS) $(LIBICONV) $(LIBSYS)
$(CXX) $(ALL_CXXFLAGS) -o trexecmd $(EXECMD_OBJS) \
$(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trexecmd.o : execmd.cpp execmd.h
$(CXX) -o trexecmd.o -c $(ALL_CXXFLAGS) -DTEST_EXECMD execmd.cpp
TRANSCODE_OBJS= trtranscode.o $(BIGLIB)
TRANSCODE_OBJS= trtranscode.o
transcode : $(TRANSCODE_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o transcode $(TRANSCODE_OBJS) \
$(LIBICONV) $(LIBSYS)
$(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trtranscode.o : transcode.cpp
$(CXX) $(ALL_CXXFLAGS) -DTEST_TRANSCODE -c -o trtranscode.o \
transcode.cpp
IDFILE_OBJS= tridfile.o $(BIGLIB)
IDFILE_OBJS= tridfile.o
idfile : $(IDFILE_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o idfile $(IDFILE_OBJS) \
$(LIBICONV) $(LIBSYS)
$(LIBRECOLL) $(LIBICONV) $(LIBSYS)
tridfile.o : idfile.cpp
$(CXX) $(ALL_CXXFLAGS) -DTEST_IDFILE -c -o tridfile.o \
idfile.cpp
$(CXX) $(ALL_CXXFLAGS) -DTEST_IDFILE -c -o tridfile.o idfile.cpp
MIMEPARSE_OBJS= trmimeparse.o $(BIGLIB)
MIMEPARSE_OBJS= trmimeparse.o
trmimeparse : $(MIMEPARSE_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o trmimeparse $(MIMEPARSE_OBJS) \
$(LIBICONV) $(LIBSYS)
$(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trmimeparse.o : mimeparse.cpp
$(CXX) $(ALL_CXXFLAGS) -DTEST_MIMEPARSE -c -o trmimeparse.o \
mimeparse.cpp
mimeparse.cpp
SMALLUT_OBJS= trsmallut.o ../lib/smallut.o
smallut : $(SMALLUT_OBJS) smallut.h
$(CXX) $(ALL_CXXFLAGS) -o smallut $(SMALLUT_OBJS) $(LIBICONV)
$(CXX) $(ALL_CXXFLAGS) -o smallut $(SMALLUT_OBJS) \
$(LIBRECOLL) $(LIBICONV)
trsmallut.o : smallut.cpp smallut.h
$(CXX) $(ALL_CXXFLAGS) -DTEST_SMALLUT -c -o trsmallut.o \
smallut.cpp
$(CXX) $(ALL_CXXFLAGS) -DTEST_SMALLUT -c -o trsmallut.o smallut.cpp
../lib/smallut.o: smallut.cpp smallut.h
cd ../lib;make smallut.o
WIPEDIR_OBJS= trwipedir.o $(BIGLIB)
WIPEDIR_OBJS= trwipedir.o
wipedir : $(WIPEDIR_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o wipedir $(WIPEDIR_OBJS) $(LIBICONV) $(LIBSYS)
trwipedir.o : wipedir.cpp
@ -120,19 +119,19 @@ trwipedir.o : wipedir.cpp
UTF8ITER_OBJS= trutf8iter.o
utf8iter : $(UTF8ITER_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o utf8iter $(UTF8ITER_OBJS) $(BIGLIB) \
$(LIBICONV) $(LIBSYS)
$(CXX) $(ALL_CXXFLAGS) -o utf8iter $(UTF8ITER_OBJS) \
$(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trutf8iter.o : utf8iter.cpp utf8iter.h
$(CXX) $(ALL_CXXFLAGS) -DTEST_UTF8ITER -c -o trutf8iter.o utf8iter.cpp
CONFTREE_OBJS= trconftree.o $(BIGLIB)
CONFTREE_OBJS= trconftree.o
trconftree : $(CONFTREE_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o trconftree $(CONFTREE_OBJS) \
$(LIBICONV) $(LIBSYS)
$(LIBRECOLL) $(LIBICONV) $(LIBSYS)
trconftree.o : conftree.cpp
$(CXX) $(ALL_CXXFLAGS) -DTEST_CONFTREE -c -o trconftree.o conftree.cpp
BASE64_OBJS= trbase64.o $(BIGLIB)
BASE64_OBJS= trbase64.o
trbase64 : $(BASE64_OBJS)
$(CXX) $(ALL_CXXFLAGS) -o trbase64 $(BASE64_OBJS)
trbase64.o : base64.cpp
@ -146,6 +145,4 @@ trx11mon.o : x11mon.cpp x11mon.h
x11mon.o: x11mon.cpp
$(CXX) -c -I/usr/X11R6/include $(ALL_CXXFLAGS) x11mon.cpp
clean:
rm -f *.o $(PROGS)
include $(depth)/mk/commontargets