X-Git-Url: http://git.indexdata.com/?p=yaz-moved-to-github.git;a=blobdiff_plain;f=win%2Fmakefile;h=3b9cf542abec88497d5166bf56b57e9401a0f4ca;hp=d4418f161faecf2f2bcf662389d689d858b8e3bb;hb=41fffe7a22f77d15b5d0214079e11ad62fdb2ca9;hpb=74f55d91dabcfa4f82e481e1a49ac57937d82d2f diff --git a/win/makefile b/win/makefile index d4418f1..3b9cf54 100644 --- a/win/makefile +++ b/win/makefile @@ -1,5 +1,5 @@ # This file is part of the YAZ toolkit. -# Copyright (C) 1995-2010 Index Data +# Copyright (C) 1995-2013 Index Data # Parameters @@ -42,24 +42,34 @@ BISON=bison default: all -all: dirs generate dll sc_test client ztest yazicu zoomsh utilprog testprog iconv icu libxml2 libxslt +all: dirs generate dll sc_test client ztest yazicu zoomsh utilprog \ + testprog iconv icu libxml2 libxslt yaz_url NSIS="c:\program files\nsis\makensis.exe" HHC="c:\program files\html help workshop\hhc.exe" +YAZ4J_DIR="..\..\yaz4j" + +YAZPATH="$(MAKEDIR)\.." + + dist: yaz.win32.nsi yaz.nsi distclean - nmake DEBUG=0 + nmake DEBUG=0 all yaz4j $(NSIS) yaz.win32.nsi dist64: yaz.win64.nsi yaz.nsi distclean - nmake DEBUG=0 HAVE_LIBXSLT=1 HAVE_LIBXML2=1 HAVE_ICONV=0 HAVE_ICU=1 LIBXML2_DIR=c:\libxml2-2.7.8.win64 LIBXSLT_DIR=c:\libxslt-1.1.26.win64 ICU_LIB=\icu64\lib64 ICU_INCLUDE=\icu64\include ICU_BIN=\icu64\bin64 + nmake make64 $(NSIS) yaz.win64.nsi +make64: + nmake DEBUG=0 HAVE_LIBXSLT=1 HAVE_LIBXML2=1 HAVE_ICONV=0 HAVE_ICU=1 LIBXML2_DIR=c:\libxml2-2.7.8.win64 LIBXSLT_DIR=c:\libxslt-1.1.26.win64 ICU_LIB=\icu64\lib64 ICU_INCLUDE=\icu64\include ICU_BIN=\icu64\bin64 YAZ4J_DIR=..\..\..\yaz4j all yaz4j + + distclean: nmake DEBUG=1 clean nmake DEBUG=0 clean -nsis: all yaz32.nsi +nsis: all yaz.win32.nsi $(NSIS) yaz.win32.nsi nsis64: yaz.win64.nsi @@ -79,6 +89,7 @@ BINDIR=$(ROOTDIR)\bin # We produce exes and dlls there WINDIR=$(ROOTDIR)\win # all these Win make things SRCDIR=$(ROOTDIR)\src # for the case we move them under src DOCDIR=$(ROOTDIR)\doc # where the doc is +JAVADIR=$(ROOTDIR)\java # where we store intermediate files !if $(DEBUG) @@ -93,29 +104,30 @@ ZOOMDIR=$(ROOTDIR)\ZOOM UTILDIR=$(ROOTDIR)\UTIL TESTDIR=$(ROOTDIR)\TEST -TMPDIR=$(ROOTDIR)\win\tmp -TMP=$(TMPDIR) +# TMPDIR=$(ROOTDIR)\win\tmp +# TMP=$(TMPDIR) # Targets - what to make !if $(DEBUG) -YAZ_DLL=$(BINDIR)\yaz4d.dll -YAZ_IMPLIB=$(LIBDIR)\yaz4d.lib -YAZ_ICU_DLL=$(BINDIR)\yaz_icu4d.dll -YAZ_ICU_IMPLIB=$(LIBDIR)\yaz_icu4d.lib -YAZ_COND_DLL=$(BINDIR)\yaz_cond4d.dll -YAZ_COND_IMPLIB=$(LIBDIR)\yaz_cond4d.lib +YAZ_DLL=$(BINDIR)\yaz5d.dll +YAZ_IMPLIB=$(LIBDIR)\yaz5d.lib +YAZ_ICU_DLL=$(BINDIR)\yaz_icu5d.dll +YAZ_ICU_IMPLIB=$(LIBDIR)\yaz_icu5d.lib +YAZ_COND_DLL=$(BINDIR)\yaz_cond5d.dll +YAZ_COND_IMPLIB=$(LIBDIR)\yaz_cond5d.lib !else -YAZ_DLL=$(BINDIR)\yaz4.dll -YAZ_IMPLIB=$(LIBDIR)\yaz4.lib -YAZ_ICU_DLL=$(BINDIR)\yaz_icu4.dll -YAZ_ICU_IMPLIB=$(LIBDIR)\yaz_icu4.lib -YAZ_COND_DLL=$(BINDIR)\yaz_cond4.dll -YAZ_COND_IMPLIB=$(LIBDIR)\yaz_cond4.lib +YAZ_DLL=$(BINDIR)\yaz5.dll +YAZ_IMPLIB=$(LIBDIR)\yaz5.lib +YAZ_ICU_DLL=$(BINDIR)\yaz_icu5.dll +YAZ_ICU_IMPLIB=$(LIBDIR)\yaz_icu5.lib +YAZ_COND_DLL=$(BINDIR)\yaz_cond5.dll +YAZ_COND_IMPLIB=$(LIBDIR)\yaz_cond5.lib !endif CLIENT=$(BINDIR)\yaz-client.exe YAZ_ICU=$(BINDIR)\yaz-icu.exe +YAZ_URL=$(BINDIR)\yaz-url.exe ZOOMSH=$(BINDIR)\zoomsh.exe ZTEST=$(BINDIR)\yaz-ztest.exe SC_TEST=$(BINDIR)\sc_test.exe @@ -150,6 +162,8 @@ zoomsh: $(ZOOMSH) $(ZOOMTST1) $(ZOOMTST2) $(ZOOMTST3) \ $(ZOOMTST4) $(ZOOMTST5) $(ZOOMTST6) $(ZOOMTST7) $(ZOOMTST8) $(ZOOMTST9) \ $(ZOOMTST10) +yaz_url: $(YAZ_URL) + utilprog: $(CQL2PQF) $(CQL2XCQL) $(YAZ_MARCDUMP) testprog: $(TSTLOG) $(TST_TIMING) $(TEST_MUTEX) @@ -258,7 +272,8 @@ COMMON_C_OPTIONS= \ /Fd"$(OBJDIR)\\" COMMON_C_INCLUDES= \ - /I"$(ROOTDIR)\include" + /I"$(ROOTDIR)\include" \ + /I"$(ROOTDIR)\libstemmer_c\include" DEBUG_C_OPTIONS= \ /D "_DEBUG" \ @@ -268,21 +283,14 @@ RELEASE_C_OPTIONS= \ /D "NDEBUG" \ /MD /O2 -# /W3 = warning level -# /GX = Enable exception handling -# /FD = Generate file dependencies (what ever they are) -# /c = compile without linking -# /FR = Generate browse info (.sbr file that gets combined into .bsc) -# /Fo = object file name (or at least path) -# /Fd = debug database name (or path) -# /MD = Runtime library: Multithread DLL -# /MDd = Runtime library: Multithread DLL (debug) -# /Od = Disable optimising (debug) -# /O2 = Optimize for speed -# /Gm = Minimal rebuild (some cpp class stuff) -# /Zi = Program database for debuggers -# /ZI = Pgm database with special "edit&continue" stuff - not available in C5 - +MVN_ARGS=-Dyaz.path=$(YAZPATH) +# without >log below, mvn install does NOT work +yaz4j: $(JAVADIR) + cd $(YAZ4J_DIR) + mvn clean + mvn $(MVN_ARGS) -DskipTests install >log + copy /Y win32\target\yaz4j.dll "$(MAKEDIR)\..\bin" + copy /Y any\target\yaz4j.jar "$(MAKEDIR)\..\java" ### Linker options LINK=link.exe @@ -338,6 +346,7 @@ YAZ_CLIENT_OBJS= \ $(OBJDIR)\fhistory.obj YAZ_ICU_OBJS= $(OBJDIR)\yaz-icu.obj +YAZ_URL_OBJS= $(OBJDIR)\yaz-url.obj COND_DLL_OBJS= $(OBJDIR)\condvar.obj ZTEST_OBJS= \ @@ -391,6 +400,8 @@ TEST_MUTEX_OBJS = \ $(OBJDIR)\test_mutex.obj MISC_OBJS= \ + $(OBJDIR)\diag_map.obj \ + $(OBJDIR)\base64.obj \ $(OBJDIR)\version.obj \ $(OBJDIR)\oid_std.obj \ $(OBJDIR)\eventl.obj \ @@ -405,10 +416,10 @@ MISC_OBJS= \ $(OBJDIR)\cclqual.obj \ $(OBJDIR)\cclstr.obj \ $(OBJDIR)\ccltoken.obj \ + $(OBJDIR)\cclxmlconfig.obj \ $(OBJDIR)\ccl_stop_words.obj \ $(OBJDIR)\comstack.obj \ $(OBJDIR)\tcpip.obj \ - $(OBJDIR)\waislen.obj \ $(OBJDIR)\ber_any.obj \ $(OBJDIR)\ber_bit.obj \ $(OBJDIR)\ber_bool.obj \ @@ -477,10 +488,15 @@ MISC_OBJS= \ $(OBJDIR)\sortspec.obj \ $(OBJDIR)\charneg.obj \ $(OBJDIR)\grs1disp.obj \ - $(OBJDIR)\opacdisp.obj \ + $(OBJDIR)\opac_to_xml.obj \ + $(OBJDIR)\xml_add.obj \ + $(OBJDIR)\xml_match.obj \ + $(OBJDIR)\xml_to_opac.obj \ $(OBJDIR)\zgdu.obj \ $(OBJDIR)\soap.obj \ $(OBJDIR)\solr.obj \ + $(OBJDIR)\solrtransform.obj \ + $(OBJDIR)\sru_facet.obj \ $(OBJDIR)\srw.obj \ $(OBJDIR)\srwutil.obj \ $(OBJDIR)\zoom-c.obj \ @@ -494,16 +510,20 @@ MISC_OBJS= \ $(OBJDIR)\zoom-opt.obj \ $(OBJDIR)\zoom-socket.obj \ $(OBJDIR)\initopt.obj \ + $(OBJDIR)\init_diag.obj \ $(OBJDIR)\xmlquery.obj \ $(OBJDIR)\xmlerror.obj \ $(OBJDIR)\mime.obj \ $(OBJDIR)\cql.obj \ + $(OBJDIR)\cql2ccl.obj \ + $(OBJDIR)\cql_sortkeys.obj \ $(OBJDIR)\cqlstdio.obj \ $(OBJDIR)\cqlstring.obj \ $(OBJDIR)\cqltransform.obj \ $(OBJDIR)\cqlutil.obj \ $(OBJDIR)\cqlstrer.obj \ $(OBJDIR)\rpn2cql.obj \ + $(OBJDIR)\rpn2solr.obj \ $(OBJDIR)\xcqlutil.obj \ $(OBJDIR)\elementset.obj \ $(OBJDIR)\timing.obj \ @@ -530,7 +550,8 @@ MISC_OBJS= \ $(OBJDIR)\xml_include.obj \ $(OBJDIR)\file_glob.obj \ $(OBJDIR)\thread_id.obj \ - $(OBJDIR)\dirent.obj + $(OBJDIR)\dirent.obj \ + $(OBJDIR)\url.obj Z3950_OBJS= \ $(OBJDIR)\z-date.obj\ @@ -570,10 +591,17 @@ ILL_OBJS= \ $(OBJDIR)\ill-core.obj\ $(OBJDIR)\item-req.obj +STEMMER_OBJS = \ + $(OBJDIR)\libstemmer.obj \ + $(OBJDIR)\api.obj \ + $(OBJDIR)\utilities.obj \ + $(OBJDIR)\stem_UTF_8_porter.obj \ + $(OBJDIR)\stem_UTF_8_english.obj + DLL_OBJS =\ $(MISC_OBJS) \ $(Z3950_OBJS) \ - $(ILL_OBJS) \ + $(ILL_OBJS) ICU_DLL_OBJS =\ $(OBJDIR)\icu_chain.obj \ @@ -582,7 +610,9 @@ ICU_DLL_OBJS =\ $(OBJDIR)\icu_transform.obj \ $(OBJDIR)\icu_casemap.obj \ $(OBJDIR)\icu_tokenizer.obj \ - $(OBJDIR)\icu_sortkey.obj + $(OBJDIR)\icu_sortkey.obj \ + $(OBJDIR)\stemmer.obj \ + $(STEMMER_OBJS) # Generated C and H files @@ -742,6 +772,15 @@ generate: \ {$(TESTDIR)}.c{$(OBJDIR)}.obj: $(CPP) $(COPT) $< +{$(ROOTDIR)\libstemmer_c\libstemmer}.c{$(OBJDIR)}.obj: + $(CPP) $(COPT) $< + +{$(ROOTDIR)\libstemmer_c\runtime}.c{$(OBJDIR)}.obj: + $(CPP) $(COPT) $< + +{$(ROOTDIR)\libstemmer_c\src_c}.c{$(OBJDIR)}.obj: + $(CPP) $(COPT) $< + # ASN-generated files !if $(HAVE_TCL) @@ -829,9 +868,9 @@ $(SRCDIR)\diagsru_update.c: $(SRCDIR)\sru_update.csv @cd $(SRCDIR) $(TCL) csvtosru_update.tcl $(SRCDIR) -$(INCLDIR)\yaz\yaz-version.h: $(ROOTDIR)/configure.ac +$(INCLDIR)\yaz\yaz-version.h: $(ROOTDIR)/IDMETA @cd $(SRCDIR) - $(TCL) mk_version.tcl $(ROOTDIR)/configure.ac $(INCLDIR)\yaz\yaz-version.h + $(TCL) mk_version.tcl $(ROOTDIR)/IDMETA $(INCLDIR)\yaz\yaz-version.h !endif @@ -897,6 +936,9 @@ $(YAZ_ICU) : "$(BINDIR)" $(YAZ_ICU_OBJS) $(YAZ_ICU_DLL) $(LINK_PROGRAM) $(ICU_LIBS) $(YAZ_ICU_IMPLIB) $(YAZ_ICU_OBJS) /out:$@ $(MT) -manifest $@.manifest -outputresource:$@;1 +$(YAZ_URL) : "$(BINDIR)" $(YAZ_URL_OBJS) $(YAZ_DLL) + $(LINK_PROGRAM) $(YAZ_URL_OBJS) /out:$@ + $(MT) -manifest $@.manifest -outputresource:$@;1 $(SC_TEST) : "$(BINDIR)" $(SC_TEST_OBJS) $(YAZ_DLL) $(LINK_PROGRAM) $(SC_TEST_OBJS) /out:$@ @@ -1011,7 +1053,7 @@ realclean: clean # check directories and create if needed dirs: $(OBJDIR) $(WINDIR) $(LIBDIR) $(BINDIR) $(TMPDIR) -$(OBJDIR) $(WINDIR) $(LIBDIR) $(BINDIR) $(TMPDIR): +$(OBJDIR) $(WINDIR) $(LIBDIR) $(BINDIR) $(TMPDIR) $(JAVADIR): if not exist "$@/$(NUL)" mkdir "$@"