X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=recctrl%2Frecctrl.c;h=e1d949b53d55df54f2cef3f9ba402eb3a9500b95;hb=6dfee19bc1cec29ff5ec5e9cd8021d1354a6126e;hp=d4f6f2b9fd46eaad523186eedb398d4e25e3a5c9;hpb=6c9fcd3b5d3108702fa1ffc92dab4ab6060f9a19;p=idzebra-moved-to-github.git diff --git a/recctrl/recctrl.c b/recctrl/recctrl.c index d4f6f2b..e1d949b 100644 --- a/recctrl/recctrl.c +++ b/recctrl/recctrl.c @@ -1,4 +1,4 @@ -/* $Id: recctrl.c,v 1.17 2005-01-15 19:38:32 adam Exp $ +/* $Id: recctrl.c,v 1.22 2005-12-05 12:18:41 marc Exp $ Copyright (C) 1995-2005 Index Data ApS @@ -29,7 +29,7 @@ Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA #endif #include -#include +#include #include struct recTypeClass { @@ -50,61 +50,92 @@ struct recTypes { struct recTypeInstance *entries; }; -#ifdef IDZEBRA_STATIC_GRS_SGML - extern RecType idzebra_filter_grs_sgml[]; -#endif -#ifdef IDZEBRA_STATIC_TEXT - extern RecType idzebra_filter_text[]; -#endif -#ifdef IDZEBRA_STATIC_GRS_XML -#if HAVE_EXPAT_H - extern RecType idzebra_filter_grs_xml[]; -#endif -#endif -#ifdef IDZEBRA_STATIC_GRS_REGX - extern RecType idzebra_filter_grs_regx[]; -#endif -#ifdef IDZEBRA_STATIC_GRS_MARC - extern RecType idzebra_filter_grs_marc[]; -#endif -#ifdef IDZEBRA_STATIC_GRS_DANBIB - extern RecType idzebra_filter_grs_danbib[]; -#endif -#ifdef IDZEBRA_STATIC_SAFARI - extern RecType idzebra_filter_safari[]; -#endif - static void recTypeClass_add (struct recTypeClass **rts, RecType *rt, NMEM nmem, void *module_handle); RecTypeClass recTypeClass_create (Res res, NMEM nmem) { struct recTypeClass *rts = 0; +#if HAVE_DLFCN_H const char *module_path = res_get_def(res, "modulePath", DEFAULT_MODULE_PATH); +#endif #ifdef IDZEBRA_STATIC_GRS_SGML - recTypeClass_add (&rts, idzebra_filter_grs_sgml, nmem, 0); + if (1) + { + extern RecType idzebra_filter_grs_sgml[]; + recTypeClass_add (&rts, idzebra_filter_grs_sgml, nmem, 0); + } #endif #ifdef IDZEBRA_STATIC_TEXT - recTypeClass_add (&rts, idzebra_filter_text, nmem, 0); + if (1) + { + extern RecType idzebra_filter_text[]; + recTypeClass_add (&rts, idzebra_filter_text, nmem, 0); + } #endif #ifdef IDZEBRA_STATIC_GRS_XML #if HAVE_EXPAT_H - recTypeClass_add (&rts, idzebra_filter_grs_xml, nmem, 0); + if (1) + { + extern RecType idzebra_filter_grs_xml[]; + recTypeClass_add (&rts, idzebra_filter_grs_xml, nmem, 0); + } #endif #endif #ifdef IDZEBRA_STATIC_GRS_REGX - recTypeClass_add (&rts, idzebra_filter_grs_regx, nmem, 0); + if (1) + { + extern RecType idzebra_filter_grs_regx[]; + recTypeClass_add (&rts, idzebra_filter_grs_regx, nmem, 0); + } #endif #ifdef IDZEBRA_STATIC_GRS_MARC - recTypeClass_add (&rts, idzebra_filter_grs_marc, nmem, 0); + if (1) + { + extern RecType idzebra_filter_grs_marc[]; + recTypeClass_add (&rts, idzebra_filter_grs_marc, nmem, 0); + } +#endif +#ifdef IDZEBRA_STATIC_GRS_CSV + if (1) + { + extern RecType idzebra_filter_grs_csv[]; + recTypeClass_add (&rts, idzebra_filter_grs_csv, nmem, 0); + } #endif #ifdef IDZEBRA_STATIC_GRS_DANBIB - recTypeClass_add (&rts, idzebra_filter_grs_danbib, nmem, 0); + if (1) + { + extern RecType idzebra_filter_grs_danbib[]; + recTypeClass_add (&rts, idzebra_filter_grs_danbib, nmem, 0); + } #endif #ifdef IDZEBRA_STATIC_SAFARI - recTypeClass_add (&rts, idzebra_filter_safari, nmem, 0); + if (1) + { + extern RecType idzebra_filter_safari[]; + recTypeClass_add (&rts, idzebra_filter_safari, nmem, 0); + } +#endif +#ifdef IDZEBRA_STATIC_ALVIS +#if HAVE_XSLT + if (1) + { + extern RecType idzebra_filter_alvis[]; + recTypeClass_add (&rts, idzebra_filter_alvis, nmem, 0); + } +#endif +#endif +#ifdef IDZEBRA_STATIC_XSLT +#if HAVE_XSLT + if (1) + { + extern RecType idzebra_filter_xslt[]; + recTypeClass_add (&rts, idzebra_filter_xslt, nmem, 0); + } +#endif #endif #if HAVE_DLFCN_H