Salome HOME
Merge from V6_main 01/04/2013
[modules/yacs.git] / src / engine_swig / Makefile.am
1 # Copyright (C) 2006-2013  CEA/DEN, EDF R&D
2 #
3 # This library is free software; you can redistribute it and/or
4 # modify it under the terms of the GNU Lesser General Public
5 # License as published by the Free Software Foundation; either
6 # version 2.1 of the License.
7 #
8 # This library is distributed in the hope that it will be useful,
9 # but WITHOUT ANY WARRANTY; without even the implied warranty of
10 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
11 # Lesser General Public License for more details.
12 #
13 # You should have received a copy of the GNU Lesser General Public
14 # License along with this library; if not, write to the Free Software
15 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
16 #
17 # See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
18 #
19
20 include $(top_srcdir)/adm/unix/make_begin.am
21
22 BUILT_SOURCES = pilotWRAP.cxx pypilotWRAP.cxx pypilotWRAP.h pilotWRAP.h
23
24 MYSWIG_FLAGS = -noexcept -DYACS_PTHREAD -I$(srcdir)/../bases -I$(srcdir)/../engine
25 if DOXYGEN_IS_OK
26 MYSWIG_FLAGS += -DDOXYGEN_IS_OK
27 endif
28
29 salomepython_PYTHON = pilot.py pypilot.py
30 salomepyexec_LTLIBRARIES = _pilot.la _pypilot.la
31
32 ENGINEINCLUDES=Any.hxx     DeploymentTree.hxx  InputDataStreamPort.hxx         OutPort.hxx               SharedPtr.hxx \
33 AnyInputPort.hxx         Dispatcher.hxx      InputPort.hxx                   OutputDataStreamPort.hxx  StaticDefinedComposedNode.hxx \
34 Bloc.hxx                 DynParaLoop.hxx     InvalidExtractionException.hxx  OutputPort.hxx            Switch.hxx \
35 ComponentInstance.hxx    ElementaryNode.hxx  LinkInfo.hxx                    Pool.hxx                  Task.hxx \
36 ComposedNode.hxx         Executor.hxx        Logger.hxx                      Port.hxx                  TypeCode.hxx \
37 ConditionInputPort.hxx   LogRecord.hxx                   Proc.hxx                  Visitor.hxx \
38 Container.hxx            ForEachLoop.hxx     Loop.hxx                        RefCounter.hxx            VisitorSaveSchema.hxx \
39 ConversionException.hxx  ForLoop.hxx         Node.hxx                        Runtime.hxx               VisitorSaveState.hxx \
40 DataFlowPort.hxx         InGate.hxx          OptimizerAlg.hxx                Scheduler.hxx             WhileLoop.hxx \
41 DataPort.hxx             InlineNode.hxx      OptimizerLoop.hxx               ServiceInlineNode.hxx     ComponentDefinition.hxx \
42 DataStreamPort.hxx       InPort.hxx          OutGate.hxx                     ServiceNode.hxx           Catalog.hxx  \
43 PropertyInterface.hxx    AnyOutputPort.hxx   Pool.hxx                        InPropertyPort.hxx
44
45 SWIGINCLUDES = $(ENGINEINCLUDES:%=$(top_srcdir)/src/engine/%) $(top_srcdir)/src/bases/yacsconfig.h ExecutorSwig.hxx
46
47 pilotWRAP.cxx:pilot.i $(SWIGINCLUDES) engtypemaps.i docengine.i
48         $(SWIG) $(SWIG_PYTHON_OPT) $(SWIG_PYTHON_INCLUDES) $(MYSWIG_FLAGS) -o pilotWRAP.cxx $(srcdir)/pilot.i
49
50 pilot.py : pilotWRAP.cxx
51
52 _pilot_la_SOURCES =   \
53         pilotWRAP.cxx \
54         ExecutorSwig.cxx
55
56
57 _pilot_la_CXXFLAGS = \
58         $(THREAD_DEF) \
59         $(PYTHON_CPPFLAGS) \
60         $(OMNIORB_INCLUDES) \
61   $(OMNIORB_CXXFLAGS) \
62         -I$(srcdir) \
63         -I$(srcdir)/../engine \
64         -I$(srcdir)/../bases
65
66 _pilot_la_LDFLAGS  = -module
67
68 _pilot_la_LIBADD = ../engine/libYACSlibEngine.la $(OMNIORB_LIBS) $(PYTHON_LIBS)
69
70
71 pypilotWRAP.cxx: pypilot.i pilot.i $(SWIGINCLUDES) engtypemaps.i pilotWRAP.cxx
72         $(SWIG) $(SWIG_PYTHON_OPT) $(SWIG_PYTHON_INCLUDES) $(MYSWIG_FLAGS) -o pypilotWRAP.cxx $(srcdir)/pypilot.i
73
74 pypilotWRAP.h: pypilotWRAP.cxx
75 pilotWRAP.h: pilotWRAP.cxx
76
77 pypilot.py : pypilotWRAP.cxx 
78
79 _pypilot_la_SOURCES =  pypilotWRAP.cxx
80 _pypilot_la_CXXFLAGS =  $(THREAD_DEF) $(PYTHON_CPPFLAGS) $(OMNIORB_INCLUDES) $(OMNIORB_CXXFLAGS) -I$(srcdir)/../engine -I$(srcdir)/../bases
81 _pypilot_la_LDFLAGS  = -module
82 _pypilot_la_LIBADD = ../engine/libYACSlibEngine.la $(OMNIORB_LIBS) $(PYTHON_LIBS)
83
84 docengine.i:$(SWIGINCLUDES)
85         DOXSRCDIR=$(top_srcdir)/src/engine doxygen $(top_srcdir)/Misc/Doxyfile
86         $(PYTHON) $(top_srcdir)/Misc/doxy2swig.py -n xml/index.xml docengine.i
87
88 EXTRA_DIST = ExecutorSwig.hxx pilot.i pypilot.i engtypemaps.i pypilotWRAP.h
89
90 clean-local:
91         rm -f pypilot.py* pypilotWRAP.* pilot.py* pilotWRAP.* docengine.i
92         rm -rf xml
93
94 include $(top_srcdir)/adm/unix/make_end.am