-# Copyright (C) 2007-2008 CEA/DEN, EDF R&D, OPEN CASCADE
+# Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE
#
-# Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-# CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+# This library is free software; you can redistribute it and/or
+# modify it under the terms of the GNU Lesser General Public
+# License as published by the Free Software Foundation; either
+# version 2.1 of the License.
#
-# This library is free software; you can redistribute it and/or
-# modify it under the terms of the GNU Lesser General Public
-# License as published by the Free Software Foundation; either
-# version 2.1 of the License.
+# This library is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# Lesser General Public License for more details.
#
-# This library is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-# Lesser General Public License for more details.
+# You should have received a copy of the GNU Lesser General Public
+# License along with this library; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
#
-# You should have received a copy of the GNU Lesser General Public
-# License along with this library; if not, write to the Free Software
-# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
-#
-# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
+# See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
#
+
# This Makefile is responsible of generating the client and server
# implementation of IDL interfaces for both C++ and python usage.
# The building process of the C++ files is in charge of each source
#
include $(top_srcdir)/adm_local/unix/make_common_starter.am
-BASEIDL_FILES= MED.idl MED_Gen.idl Compo1Py.idl
+BASEIDL_FILES = \
+ MEDCouplingCorbaServant.idl \
+ MEDCouplingCorbaServantTest.idl \
+ ParaMEDCouplingCorbaServant.idl
+
+MEDOPIDL_FILES = \
+ MEDDataManager.idl \
+ MEDCalculator.idl \
+ MEDEventListener.idl \
+ MEDOPFactory.idl
+
+MPIIDL_FILES = ParaMEDMEMComponent.idl
+
+IDL_FILES = $(BASEIDL_FILES)
+if MPI_IS_OK
+IDL_FILES += $(MPIIDL_FILES)
+endif
+IDL_FILES += $(MEDOPIDL_FILES)
+
+IDL_FILES_PY=$(IDL_FILES:%.idl=%_idl.py)
# This variable defines the files to be installed
-dist_salomeidl_DATA = $(BASEIDL_FILES)
+dist_salomeidl_DATA = $(IDL_FILES)
# GUI idl common library
-lib_LTLIBRARIES = libSalomeIDLMED.la
+lib_LTLIBRARIES = libSalomeIDLMED.la libSalomeIDLMEDTests.la
# Sources built from idl files
-nodist_libSalomeIDLMED_la_SOURCES = MEDSK.cc MED_GenSK.cc Compo1PySK.cc
+BASEIDL_SOURCES = \
+ MEDCouplingCorbaServantSK.cc \
+ ParaMEDCouplingCorbaServantSK.cc
+
+MEDOPIDL_SOURCES = \
+ MEDDataManagerSK.cc \
+ MEDCalculatorSK.cc \
+ MEDEventListenerSK.cc \
+ MEDOPFactorySK.cc
+
+MPIIDL_SOURCES = ParaMEDMEMComponentSK.cc
+
+IDL_SOURCES = $(BASEIDL_SOURCES)
+if MPI_IS_OK
+ IDL_SOURCES += $(MPIIDL_SOURCES)
+endif
+IDL_SOURCES += $(MEDOPIDL_SOURCES)
+
+nodist_libSalomeIDLMED_la_SOURCES = $(IDL_SOURCES)
# header files must be exported: other modules have to use this library
-nodist_salomeinclude_HEADERS = $(BASEIDL_FILES:%.idl=%.hh)
+nodist_salomeinclude_HEADERS = \
+ MEDCouplingCorbaServant.hh \
+ MEDCouplingCorbaServantTest.hh \
+ ParaMEDCouplingCorbaServant.hh
+
+if MPI_IS_OK
+ nodist_salomeinclude_HEADERS += ParaMEDMEMComponent.hh
+endif
+
+nodist_salomeinclude_HEADERS += \
+ MEDDataManager.hh \
+ MEDCalculator.hh \
+ MEDEventListener.hh \
+ MEDOPFactory.hh
libSalomeIDLMED_la_CPPFLAGS = \
- -I$(top_builddir)/salome_adm/unix \
-I$(top_builddir)/idl \
@CORBA_CXXFLAGS@ @CORBA_INCLUDES@ @KERNEL_CXXFLAGS@
libSalomeIDLMED_la_LDFLAGS = -no-undefined -version-info=0:0:0
libSalomeIDLMED_la_LIBADD = @CORBA_LIBS@ $(KERNEL_LDFLAGS) -lSalomeIDLKernel
+nodist_libSalomeIDLMEDTests_la_SOURCES = MEDCouplingCorbaServantTestSK.cc
+libSalomeIDLMEDTests_la_CPPFLAGS = $(libSalomeIDLMED_la_CPPFLAGS)
+libSalomeIDLMEDTests_la_LIBADD = libSalomeIDLMED.la
+
# These variables defines the building process of CORBA files
OMNIORB_IDL = @OMNIORB_IDL@
OMNIORB_IDLCXXFLAGS = @OMNIORB_IDLCXXFLAGS@
OMNIORB_IDLPYFLAGS = @OMNIORB_IDLPYFLAGS@ -I$(top_builddir)/idl/salome -I$(KERNEL_ROOT_DIR)/idl/salome
-IDLCXXFLAGS = -bcxx @IDLCXXFLAGS@ -I$(top_builddir)/idl/salome -I$(KERNEL_ROOT_DIR)/idl/salome -I$(top_builddir)/salome_adm/unix
+IDLCXXFLAGS = -bcxx @IDLCXXFLAGS@ -I$(top_builddir)/idl/salome -I$(KERNEL_ROOT_DIR)/idl/salome
IDLPYFLAGS = @IDLPYFLAGS@ -I$(KERNEL_ROOT_DIR)/idl/salome
-# potential problem on parallel make on the following - multiple outputs
SUFFIXES = .idl .hh SK.cc
-.idlSK.cc:
- $(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) $<
-.idl.hh:
+
+%SK.cc %.hh : %.idl
$(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) $<
-install-exec-local: $(BASEIDL_FILES:%=$(top_srcdir)/idl/%)
+# MEDSK.cc : MED.idl
+# $(OMNIORB_IDL) $(IDLCXXFLAGS) $(OMNIORB_IDLCXXFLAGS) $<
+# MED.hh : MEDSK.cc
+
+install-exec-local: $(IDL_FILES:%=$(top_srcdir)/idl/%)
$(INSTALL) -d $(DESTDIR)$(salomepythondir)
ls $^ | while read file; do \
$(OMNIORB_IDL) $(IDLPYFLAGS) -C$(DESTDIR)$(salomepythondir) $$file ; \
done
-# uninstall-local removes too much, but it works in distcheck
+# we want to remove only staff generated for IDL files and nothing more
uninstall-local:
- rm -rf $(DESTDIR)$(salomepythondir)/*
+ @for modulen in SALOME_MED SALOME_TEST Compo1Py_ORB MEDOP ; do \
+ test -d $(DESTDIR)$(salomepythondir)/$${modulen} && echo "Removing $(DESTDIR)$(salomepythondir)/$${modulen}" && rm -rf $(DESTDIR)$(salomepythondir)/$${modulen} ; \
+ test -d $(DESTDIR)$(salomepythondir)/$${modulen}__POA && echo "Removing $(DESTDIR)$(salomepythondir)/$${modulen}__POA" && rm -rf $(DESTDIR)$(salomepythondir)/$${modulen}__POA ; \
+ done ; \
+ for filen in $(IDL_FILES_PY) ; do \
+ echo "Removing $(DESTDIR)$(salomepythondir)/$${filen}" && rm -f $(DESTDIR)$(salomepythondir)/$${filen}* ; \
+ done
mostlyclean-local: clean-idls