00001 #include <mmxlight/base_evaluator.hpp>
00002 #include <basix/glue.hpp>
00003 #include <basix/system.hpp>
00004
00005 namespace mmx {
00006 void glue_automagix ();
00007 void glue_basix ();
00008 void glue_borderbasix ();
00009 void glue_mmancient ();
00010 void glue_mmcompileregg ();
00011 void glue_mmcompiler ();
00012 void glue_mcoq ();
00013 void glue_mmail ();
00014 void glue_mmdoc ();
00015 void glue_mmxtools ();
00016 void glue_numerix ();
00017 void glue_algebramix ();
00018 void glue_analyziz ();
00019 void glue_caas ();
00020 void glue_finitefieldz ();
00021 void glue_graphix ();
00022 void glue_holonomix ();
00023 void glue_lattiz ();
00024 void glue_linalg ();
00025 void glue_mgf2x ();
00026 void glue_mmaple ();
00027 void glue_mpari ();
00028 void glue_multimix ();
00029 void glue_continewz ();
00030 void glue_factorix ();
00031 void glue_geomsolvex ();
00032 void glue_gregorix ();
00033 void glue_mblad ();
00034 void glue_mfgb ();
00035 void glue_quintix ();
00036 void glue_realroot ();
00037 void glue_mmps ();
00038 void glue_polytopix ();
00039 void glue_shape ();
00040 void glue_symbolix ();
00041 void glue_asymptotix ();
00042 void glue_columbus ();
00043 void glue_jorix ();
00044 void glue_mmxlight ();
00045
00046 #ifdef BASIX_ENABLE_EMBEDDED
00047 void
00048 embedded_link_impl (const string& name) {
00049
00050 ERROR ("library " * name * " has not been embedded");
00051 }
00052 #endif
00053
00054 evaluator
00055 mmxlight_evaluator () {
00056 evaluator ev= base_evaluator ();
00057 select_evaluator (ev);
00058 define_prerequisites ();
00059 #ifdef BASIX_ENABLE_EMBEDDED
00060 embedded_link= embedded_link_impl;
00061 dl_link ("mmxlight");
00062 dl_link ("basix");
00063 #else
00064 if (dl_exists ("mmxlight")) dl_link ("mmxlight");
00065 else mmerr << "WARNING: mmxlight library could not be loaded\n";
00066 if (dl_exists ("basix")) dl_link ("basix");
00067 else mmerr << "WARNING: basix library could not be loaded\n";
00068 #endif
00069 restore_evaluator ();
00070 return ev;
00071 }
00072
00073 }