[MOAB-dev] r1170 - in MOAB/trunk: . tools/iMesh tools/iMesh/SIDL tools/iMesh/SIDL/Cclient tools/iMesh/SIDL/Fclient tools/iMesh/SIDL/mserver

kraftche at mcs.anl.gov kraftche at mcs.anl.gov
Thu Jun 28 18:34:58 CDT 2007


Author: kraftche
Date: 2007-06-28 18:34:58 -0500 (Thu, 28 Jun 2007)
New Revision: 1170

Added:
   MOAB/trunk/tools/iMesh/SIDL/Cclient/
   MOAB/trunk/tools/iMesh/SIDL/Cclient/Makefile.am
   MOAB/trunk/tools/iMesh/SIDL/Fclient/
   MOAB/trunk/tools/iMesh/SIDL/Fclient/Makefile.am
   MOAB/trunk/tools/iMesh/SIDL/mserver/Makefile.am
Modified:
   MOAB/trunk/configure.in
   MOAB/trunk/tools/iMesh/Makefile.am
   MOAB/trunk/tools/iMesh/SIDL/Makefile.am
   MOAB/trunk/tools/iMesh/SIDL/iMesh-SIDL-Defs.inc.in
Log:
rework build system for SIDL bindings

Modified: MOAB/trunk/configure.in
===================================================================
--- MOAB/trunk/configure.in	2007-06-28 23:32:09 UTC (rev 1169)
+++ MOAB/trunk/configure.in	2007-06-28 23:34:58 UTC (rev 1170)
@@ -720,6 +720,9 @@
 		 tools/iMesh/iMesh-Defs.inc
 		 tools/iMesh/SIDL/iMesh-SIDL-Defs.inc
 		 tools/iMesh/SIDL/Makefile
+                 tools/iMesh/SIDL/mserver/Makefile
+                 tools/iMesh/SIDL/Cclient/Makefile
+                 tools/iMesh/SIDL/Fclient/Makefile
                  tools/mbperf/Makefile
                  tools/mbchaco/Makefile
 		 tools/mbzoltan/Config.moab

Modified: MOAB/trunk/tools/iMesh/Makefile.am
===================================================================
--- MOAB/trunk/tools/iMesh/Makefile.am	2007-06-28 23:32:09 UTC (rev 1169)
+++ MOAB/trunk/tools/iMesh/Makefile.am	2007-06-28 23:34:58 UTC (rev 1170)
@@ -22,7 +22,7 @@
 libiMesh_la_SOURCES = \
 	iMesh_MOAB.cpp
                    
-libMOAB_la_include_HEADERS = iMesh.h \
+libiMesh_la_include_HEADERS = iMesh.h \
                              iMesh_f.h \
                              iMesh_protos.h \
                              iBase.h \
@@ -31,10 +31,11 @@
 
 lib_LTLIBRARIES = libiMesh.la
 
-libMOAB_la_includedir = $(includedir)
+libiMesh_la_includedir = $(includedir)
 
 libiMesh_la_LIBADD = $(top_builddir)/libMOAB.la
 
+
 # Automake doesn't seem to have a directory defined for
 # platform-dependent data (or include) files. So put 
 # in $(libdir).  Define a $(cfgdir) to get around automake's

Added: MOAB/trunk/tools/iMesh/SIDL/Cclient/Makefile.am
===================================================================
--- MOAB/trunk/tools/iMesh/SIDL/Cclient/Makefile.am	                        (rev 0)
+++ MOAB/trunk/tools/iMesh/SIDL/Cclient/Makefile.am	2007-06-28 23:34:58 UTC (rev 1170)
@@ -0,0 +1,59 @@
+INCLUDES += -I at BABEL_DIR@/include
+
+BUILT_SOURCES =  $(libiMeshCclient_la_SOURCES) $(libiMeshCclient_la_include_HEADERS)
+
+if USE_BABEL
+  BABEL_CMD=@BABEL_DIR@/bin/babel -sC++ $(SIDL_FILES)
+else
+  BABEL_CMD=touch $(BUILT_SOURCES)
+endif
+
+BABEL=@BABEL_DIR@/bin/babel
+SIDL_FILES = @srcdir@/../iBase.sidl \
+             @srcdir@/../iMesh.sidl \
+	     @srcdir@/../iMesh_SIDL.sidl
+
+$(BUILT_SOURCES) : .timestamp
+
+.timestamp: $(SIDL_FILES)
+	$(BABEL_CMD)
+	touch $@
+
+lib_LTLIBRARIES = libiMeshCclient.la
+
+libiMeshCClient_la_LIBADD = ../../libiMesh.la
+
+libiMeshCclient_la_includedir = $(includedir)/SIDL
+
+libiMeshCclient_la_SOURCES = \
+  iBase_ArrTag_IOR.h iBase_CreationStatus_IOR.h iBase_EntSet_IOR.h    \
+  iBase_EntTag_IOR.h iBase_EntityType_IOR.h iBase_ErrorActions_IOR.h          \
+  iBase_ErrorType_IOR.h iBase_Error_IOR.h iBase_IOR.h iBase_SetBoolOps_IOR.h  \
+  iBase_SetRelation_IOR.h iBase_SetTag_IOR.h iBase_StorageOrder_IOR.h         \
+  iBase_TagValueType_IOR.h iBase_Tag_IOR.h iMesh_AdjacencyInfo_IOR.h          \
+  iMesh_ArrMod_IOR.h iMesh_Arr_IOR.h iMesh_EntityTopology_IOR.h               \
+  iMesh_Entity_IOR.h iMesh_IOR.h iMesh_Mesh_IOR.h iMesh_Modify_IOR.h          \
+  iMesh_SIDL_IOR.h iMesh_SIDL_MeshSidl_IOR.h \
+  iBase_ArrTag_Stub.c iBase_CreationStatus_Stub.c                    \
+  iBase_EntSet_Stub.c iBase_EntTag_Stub.c iBase_EntityType_Stub.c             \
+  iBase_ErrorActions_Stub.c iBase_ErrorType_Stub.c iBase_Error_Stub.c         \
+  iBase_SetBoolOps_Stub.c iBase_SetRelation_Stub.c iBase_SetTag_Stub.c        \
+  iBase_StorageOrder_Stub.c iBase_TagValueType_Stub.c iBase_Tag_Stub.c        \
+  iMesh_AdjacencyInfo_Stub.c iMesh_ArrMod_Stub.c iMesh_Arr_Stub.c             \
+  iMesh_EntityTopology_Stub.c iMesh_Entity_Stub.c iMesh_Mesh_Stub.c           \
+  iMesh_Modify_Stub.c iMesh_SIDL_MeshSidl_Stub.c
+
+
+libiMeshCclient_la_include_HEADERS = \
+  iBase.h iBase_ArrTag.h iBase_CreationStatus.h iBase_EntSet.h       \
+  iBase_EntTag.h iBase_EntityType.h iBase_Error.h iBase_ErrorActions.h        \
+  iBase_ErrorType.h iBase_SetBoolOps.h iBase_SetRelation.h iBase_SetTag.h     \
+  iBase_StorageOrder.h iBase_Tag.h iBase_TagValueType.h iMesh.h               \
+  iMesh_AdjacencyInfo.h iMesh_Arr.h iMesh_ArrMod.h iMesh_Entity.h             \
+  iMesh_EntityTopology.h iMesh_Mesh.h iMesh_Modify.h iMesh_SIDL.h             \
+  iMesh_SIDL_MeshSidl.h
+
+
+dist-hook:
+	for i in $(BUILT_SOURCES); do $(RM) $(distdir)/$$i; done
+

Added: MOAB/trunk/tools/iMesh/SIDL/Fclient/Makefile.am
===================================================================
--- MOAB/trunk/tools/iMesh/SIDL/Fclient/Makefile.am	                        (rev 0)
+++ MOAB/trunk/tools/iMesh/SIDL/Fclient/Makefile.am	2007-06-28 23:34:58 UTC (rev 1170)
@@ -0,0 +1,68 @@
+INCLUDES += -I at BABEL_DIR@/include
+
+BUILT_SOURCES = $(libiMeshF77client_la_SOURCES) $(libiMeshF77client_la_include_HEADERS)
+
+if USE_BABEL
+  BABEL_CMD=@BABEL_DIR@/bin/babel -sC++ $(SIDL_FILES)
+else
+  BABEL_CMD=touch $(BUILT_SOURCES)
+endif
+
+BABEL=@BABEL_DIR@/bin/babel
+SIDL_FILES = @srcdir@/../iBase.sidl \
+             @srcdir@/../iMesh.sidl \
+	     @srcdir@/../iMesh_SIDL.sidl
+
+$(BUILT_SOURCES) : .timestamp
+
+.timestamp: $(SIDL_FILES)
+	$(BABEL_CMD)
+	touch $@
+
+lib_LTLIBRARIES = libiMeshF77client.la
+
+libiMeshF77Client_la_LIBADD = ../../libiMesh.la
+
+libiMeshF77client_la_includedir = $(includedir)/SIDL
+
+libiMeshF77client_la_SOURCES = \
+  iBase_ArrTag_IOR.h iBase_CreationStatus_IOR.h iBase_EntSet_IOR.h    \
+  iBase_EntTag_IOR.h iBase_EntityType_IOR.h iBase_ErrorActions_IOR.h          \
+  iBase_ErrorType_IOR.h iBase_Error_IOR.h iBase_IOR.h iBase_SetBoolOps_IOR.h  \
+  iBase_SetRelation_IOR.h iBase_SetTag_IOR.h iBase_StorageOrder_IOR.h         \
+  iBase_TagValueType_IOR.h iBase_Tag_IOR.h iMesh_AdjacencyInfo_IOR.h          \
+  iMesh_ArrMod_IOR.h iMesh_Arr_IOR.h iMesh_EntityTopology_IOR.h               \
+  iMesh_Entity_IOR.h iMesh_IOR.h iMesh_Mesh_IOR.h iMesh_Modify_IOR.h          \
+  iMesh_SIDL_IOR.h iMesh_SIDL_MeshSidl_IOR.h \
+  iBase_ArrTag_fStub.c iBase_CreationStatus_fStub.c                  \
+  iBase_EntSet_fStub.c iBase_EntTag_fStub.c iBase_EntityType_fStub.c          \
+  iBase_ErrorActions_fStub.c iBase_ErrorType_fStub.c iBase_Error_fStub.c      \
+  iBase_SetBoolOps_fStub.c iBase_SetRelation_fStub.c iBase_SetTag_fStub.c     \
+  iBase_StorageOrder_fStub.c iBase_TagValueType_fStub.c iBase_Tag_fStub.c     \
+  iMesh_AdjacencyInfo_fStub.c iMesh_ArrMod_fStub.c iMesh_Arr_fStub.c          \
+  iMesh_EntityTopology_fStub.c iMesh_Entity_fStub.c iMesh_Mesh_fStub.c        \
+  iMesh_Modify_fStub.c iMesh_SIDL_MeshSidl_fStub.c sidl_BaseClass_fStub.c     \
+  sidl_BaseException_fStub.c sidl_BaseInterface_fStub.c                       \
+  sidl_ClassInfoI_fStub.c sidl_ClassInfo_fStub.c sidl_DFinder_fStub.c         \
+  sidl_DLL_fStub.c sidl_Finder_fStub.c sidl_InvViolation_fStub.c              \
+  sidl_Loader_fStub.c sidl_PostViolation_fStub.c sidl_PreViolation_fStub.c    \
+  sidl_Resolve_fStub.c sidl_SIDLException_fStub.c sidl_Scope_fStub.c          \
+  sidl_array_fStub.c sidl_bool_fStub.c sidl_char_fStub.c                      \
+  sidl_dcomplex_fStub.c sidl_double_fStub.c sidl_fcomplex_fStub.c             \
+  sidl_float_fStub.c sidl_int_fStub.c sidl_io_Deserializer_fStub.c            \
+  sidl_io_IOException_fStub.c sidl_io_Serializeable_fStub.c                   \
+  sidl_io_Serializer_fStub.c sidl_long_fStub.c sidl_opaque_fStub.c            \
+  sidl_rmi_ConnectRegistry_fStub.c sidl_rmi_InstanceHandle_fStub.c            \
+  sidl_rmi_InstanceRegistry_fStub.c sidl_rmi_Invocation_fStub.c               \
+  sidl_rmi_NetworkException_fStub.c sidl_rmi_ProtocolFactory_fStub.c          \
+  sidl_rmi_Response_fStub.c sidl_string_fStub.c
+
+
+libiMeshF77client_la_include_HEADERS = \
+  iBase_CreationStatus.inc iBase_EntityType.inc                \
+  iBase_ErrorActions.inc iBase_ErrorType.inc iBase_StorageOrder.inc           \
+  iBase_TagValueType.inc iMesh_AdjacencyInfo.inc iMesh_EntityTopology.inc     \
+  sidl_Resolve.inc sidl_Scope.inc 
+
+dist-hook:
+	for i in $(BUILT_SOURCES); do $(RM) $(distdir)/$$i; done

Modified: MOAB/trunk/tools/iMesh/SIDL/Makefile.am
===================================================================
--- MOAB/trunk/tools/iMesh/SIDL/Makefile.am	2007-06-28 23:32:09 UTC (rev 1169)
+++ MOAB/trunk/tools/iMesh/SIDL/Makefile.am	2007-06-28 23:34:58 UTC (rev 1170)
@@ -1,144 +1,29 @@
-include @abs_srcdir@/iMesh-SIDL-Defs.inc
+SUBDIRS = . mserver Cclient Fclient
 
-vpath = mserver bserver 
-VPATH = mserver bserver 
+# $(RECURSIVE_TARGETS): mserver/babel.make Cclient/babel.make Fclient/babel.make
+# 
+# BABEL = @BABEL_DIR@/bin/babel
+# if USE_BABEL
+#   SIDL_FILES = $(srcdir)/iBase.sidl $(srcdir)/iMesh.sidl $(srcdir)/iMesh_SIDL.sidl
+#   server_babel_cmd = $(BABEL) -sC++ -omserver 
+#   cclient_babel_cmd = $(BABEL) -cC -oCclient
+#   fclient_babel_cmd = $(BABEL) -cF77 -oFclient
+# else
+#   SIDL_FILES=
+#   server_babel_cmd = touch mserver/babel.make
+#   cclient_babel_cmd = touch Cclient/babel.make
+#   fclient_babel_cmd = touch Fclient/babel.make
+# endif
+# 
+# mserver/babel.make: $(SIDL_FILES)
+# 	$(server_babel_cmd) $(SIDL_FILES)
+# 
+# Cclient/babel.make: $(SIDL_FILES)
+# 	$(cclient_babel_cmd) $(SIDL_FILES)
+# 
+# Fclient/babel.make: $(SIDL_FILES)
+# 	$(fclient_babel_cmd) $(SIDL_FILES)
 
-LD_FLAGS_PIC = -fpic -shared
-SERVER_HDRS := iBase_ArrTag_IOR.h iBase_CreationStatus_IOR.h iBase_EntSet_IOR.h    \
-  iBase_EntTag_IOR.h iBase_EntityType_IOR.h iBase_ErrorActions_IOR.h          \
-  iBase_ErrorType_IOR.h iBase_IOR.h iBase_SetBoolOps_IOR.h  \
-  iBase_SetRelation_IOR.h iBase_SetTag_IOR.h iBase_StorageOrder_IOR.h         \
-  iBase_TagValueType_IOR.h iBase_Tag_IOR.h iMesh_AdjacencyInfo_IOR.h          \
-  iMesh_ArrMod_IOR.h iMesh_Arr_IOR.h iMesh_EntityTopology_IOR.h               \
-  iMesh_Entity_IOR.h iMesh_IOR.h iMesh_Mesh_IOR.h iMesh_Modify_IOR.h          \
-  iMesh_SIDL_IOR.h iMesh_SIDL_MeshSidl_IOR.h                                  \
-  iBase.hh iBase_ArrTag.hh iBase_CreationStatus.hh iBase_EntSet.hh   \
-  iBase_EntTag.hh iBase_EntityType.hh iBase_ErrorActions.hh    \
-  iBase_ErrorType.hh iBase_SetBoolOps.hh iBase_SetRelation.hh iBase_SetTag.hh \
-  iBase_StorageOrder.hh iBase_Tag.hh iBase_TagValueType.hh iMesh.hh           \
-  iMesh_AdjacencyInfo.hh iMesh_Arr.hh iMesh_ArrMod.hh iMesh_Entity.hh         \
-  iMesh_EntityTopology.hh iMesh_Mesh.hh iMesh_Modify.hh iMesh_SIDL.hh         \
-  iMesh_SIDL_MeshSidl.hh sidl.hh sidl_BaseClass.hh sidl_BaseException.hh      \
-  sidl_BaseInterface.hh sidl_ClassInfo.hh sidl_ClassInfoI.hh sidl_DFinder.hh  \
-  sidl_DLL.hh sidl_Finder.hh sidl_InvViolation.hh sidl_Loader.hh              \
-  sidl_PostViolation.hh sidl_PreViolation.hh sidl_Resolve.hh                  \
-  sidl_SIDLException.hh sidl_Scope.hh sidl_io.hh sidl_io_Deserializer.hh      \
-  sidl_io_IOException.hh sidl_io_Serializeable.hh sidl_io_Serializer.hh       \
-  sidl_rmi.hh sidl_rmi_ConnectRegistry.hh sidl_rmi_InstanceHandle.hh          \
-  sidl_rmi_InstanceRegistry.hh sidl_rmi_Invocation.hh                         \
-  sidl_rmi_NetworkException.hh sidl_rmi_ProtocolFactory.hh                    \
-  sidl_rmi_Response.hh iMesh_SIDL_MeshSidl_Impl.hh iBase_Error_Impl.hh        \
-  iBase_Error_IOR.h iBase_Error.hh 
-SERVER_SRCS = iMesh_SIDL_MeshSidl_IOR.c                                   \
-  iBase_ArrTag.cc iBase_EntSet.cc iBase_EntTag.cc                             \
-  iBase_SetBoolOps.cc iBase_SetRelation.cc iBase_SetTag.cc iBase_Tag.cc       \
-  iMesh_Arr.cc iMesh_ArrMod.cc iMesh_Entity.cc iMesh_Mesh.cc iMesh_Modify.cc  \
-  iMesh_SIDL_MeshSidl.cc sidl_BaseClass.cc sidl_BaseException.cc              \
-  sidl_BaseInterface.cc sidl_ClassInfo.cc sidl_ClassInfoI.cc sidl_DFinder.cc  \
-  sidl_DLL.cc sidl_Finder.cc sidl_InvViolation.cc sidl_Loader.cc              \
-  sidl_PostViolation.cc sidl_PreViolation.cc sidl_SIDLException.cc            \
-  sidl_io_Deserializer.cc sidl_io_IOException.cc sidl_io_Serializeable.cc     \
-  sidl_io_Serializer.cc sidl_rmi_ConnectRegistry.cc                           \
-  sidl_rmi_InstanceHandle.cc sidl_rmi_InstanceRegistry.cc                     \
-  sidl_rmi_Invocation.cc sidl_rmi_NetworkException.cc                         \
-  sidl_rmi_ProtocolFactory.cc sidl_rmi_Response.cc iMesh_SIDL_MeshSidl_Skel.cc \
-  iMesh_SIDL_MeshSidl_Impl.cc iBase_Error_Impl.cc iBase_Error_IOR.c           \
-  iBase_Error_Skel.cc iBase_Error.cc
-SERVER_OFILES = iMesh_SIDL_MeshSidl_IOR.o                                   \
-  iBase_ArrTag.o iBase_EntSet.o iBase_EntTag.o                             \
-  iBase_SetBoolOps.o iBase_SetRelation.o iBase_SetTag.o iBase_Tag.o       \
-  iMesh_Arr.o iMesh_ArrMod.o iMesh_Entity.o iMesh_Mesh.o iMesh_Modify.o  \
-  iMesh_SIDL_MeshSidl.o sidl_BaseClass.o sidl_BaseException.o              \
-  sidl_BaseInterface.o sidl_ClassInfo.o sidl_ClassInfoI.o sidl_DFinder.o  \
-  sidl_DLL.o sidl_Finder.o sidl_InvViolation.o sidl_Loader.o              \
-  sidl_PostViolation.o sidl_PreViolation.o sidl_SIDLException.o            \
-  sidl_io_Deserializer.o sidl_io_IOException.o sidl_io_Serializeable.o     \
-  sidl_io_Serializer.o sidl_rmi_ConnectRegistry.o                           \
-  sidl_rmi_InstanceHandle.o sidl_rmi_InstanceRegistry.o                     \
-  sidl_rmi_Invocation.o sidl_rmi_NetworkException.o                         \
-  sidl_rmi_ProtocolFactory.o sidl_rmi_Response.o iMesh_SIDL_MeshSidl_Skel.o \
-  iMesh_SIDL_MeshSidl_Impl.o iBase_Error_Impl.o iBase_Error_IOR.o           \
-  iBase_Error_Skel.o iBase_Error.o
-
-#testcxx: ${iMesh_SIDL_FILES} testcxx.o 
-#	$(CXX)  ${LD_FLAGS} -o $@ testcxx.o -Wl,-rpath,. -L. ${iMesh_SIDL_LIBS}
-
-bin_PROGRAMS = testcxx
-testcxx_SOURCES = testcxx.cpp
-
-testcxx.o: bserver/babel.make mserver/babel.make
-
-LDADD = @top_srcdir@/tools/iMesh/libiMesh.la $(top_builddir)/libMOAB.la @abs_srcdir@/libiMeshserver.so ${BABEL_DIR}/lib/libsidl.la
-
-testcxx_DEPENDENCIES = bserver/babel.make @top_srcdir@/tools/iMesh/libiMesh.la $(top_builddir)/libMOAB.la @abs_srcdir@/libiMeshserver.so ${BABEL_DIR}/lib/libsidl.la ${SERVER_OFILES} bserver/babel.make mserver/babel.make
-
-settings:
-	@echo "FACTORY_OFILES = $(FACTORY_OFILES)"
-	@echo "SERVER_OFILES  = $(SERVER_OFILES)"
-
-#============= iBase =============
-repo/.btimestamp: iBase.sidl
-	-rm -rf repo
-	@BABEL_DIR@/bin/babel -tXML -o repo iBase.sidl 
-	touch $@ 
-
-bserver/babel.make: repo/.btimestamp iBase.sidl
-	-rm -f $@
-	@BABEL_DIR@/bin/babel -sC++ -o bserver iBase.sidl
-
-#============= iBase =============
-
-repo/.mtimestamp: iMesh.sidl 
-	@BABEL_DIR@/bin/babel -tXML -o repo -Rrepo iMesh.sidl
-	touch $@ 
-
-mserver/babel.make: repo/.mtimestamp repo/.btimestamp iMesh_SIDL.sidl iMesh.sidl 
-	-rm -f $@
-	@BABEL_DIR@/bin/babel -R"repo" -sC++ -o mserver iMesh_SIDL.sidl
-
-Cclient: repo/.mtimestamp repo/.mtimestamp iMesh_SIDL.sidl
-	-rm -rf Cclient
-	@BABEL_DIR@/bin/babel -R"repo" -cC -o Cclient iMesh_SIDL.sidl
-
-F77client: repo/.mtimestamp repo/.btimestamp iMesh_SIDL.sidl
-	-rm -rf F77client
-	@BABEL_DIR@/bin/babel -R"repo" -cF77 -o F77client iMesh_SIDL.sidl
-
-${iMesh_SIDLLIBDIR}/libiMeshserver.so: bserver/babel.make mserver/babel.make ${SERVER_OFILES}
-	$(CXX) $(LD_FLAGS) $(LD_FLAGS_PIC) -o $@ ${SERVER_OFILES}
-
-libiMeshCclient.so: Cclient ${CCLIENT_OFILES}
-	$(LD) $(LD_FLAGS) $(LD_FLAGS_PIC) -o $@ ${CCLIENT_OFILES}
-
-libiMeshF77client.so: F77client ${F77CLIENT_OFILES}
-	$(LD) $(LD_FLAGS) $(LD_FLAGS_PIC) -o $@ ${F77CLIENT_OFILES}
-
-Cclient/babel.make: Cclient
-
-F77client/babel.make: F77client
-
-clean:
-	-rm -f *.o *.so testc testcxx *~ core.*
-
-clean_all: clean
-	-rm -rf F77client Cclient repo
-	cd mserver; rm -f ${SERVER_HDRS} ${SERVER_SRCS}
-
-%.o : %.cxx
-	$(CXX) $(CXX_FLAGS) ${iMesh_SIDL_INCLUDES} -o $@ -c $<
-
-%.o : %.cpp
-	$(CXX) $(CXX_FLAGS) ${iMesh_SIDL_INCLUDES} -o $@ -c $<
-
-%.o : %.cc
-	$(CXX) $(CXX_FLAGS) ${iMesh_SIDL_INCLUDES} -o $@ -c $<
-
-%.o : %.c
-	$(CC) $(CC_FLAGS) ${iMesh_SIDL_INCLUDES} -o $@ -c $<
-
-%.o : %.f
-	$(FC) $(FC_FLAGS) ${iMesh_SIDL_INCLUDES} -o $@ -c $<
-
 # Automake doesn't seem to have a directory defined for
 # platform-dependent data (or include) files. So put 
 # in $(libdir).  Define a $(cfgdir) to get around automake's
@@ -146,59 +31,13 @@
 cfgdir = $(libdir)
 cfg_DATA = iMesh-SIDL-Defs.inc
 
+EXTRA_DIST = iBase.sidl iMesh.sidl iMesh_SIDL.sidl
+
 # By default, iMesh-SIDL-Defs.inc will define these to $(srcdir).  We
 # want to override that during the INSTALL of the file so
 # that the correct values are set (e.g. if someone does 
 # 'make prefix=/foo install', we don't know the correct install
 # directory until we're doing the install.
 install-data-hook:
-	echo "iMesh_DIR=${DESTDIR}${cfgdir}/.." >> $(DESTDIR)$(cfgdir)/iMesh-SIDL-Defs.inc
-	echo "iMesh_SIDLLIBDIR=${libdir}" >> $(DESTDIR)$(cfgdir)/iMesh-SIDL-Defs.inc
-	echo "iMesh_SIDLINCLUDEDIR=${includedir}/SIDL" >> $(DESTDIR)$(cfgdir)/iMesh-SIDL-Defs.inc
-	(cd mserver; install -d ${includedir}/SIDL; install -t ${includedir}/SIDL ${SERVER_HDRS})
-
-#include make.dependencies
-iMesh_SIDL_MeshSidl_IOR.o: mserver/iMesh_SIDL_MeshSidl_IOR.c
-iBase_ArrTag.o: mserver/iBase_ArrTag.cc
-iBase_EntSet.o: mserver/iBase_EntSet.cc
-iBase_EntTag.o: mserver/iBase_EntTag.cc
-iBase_SetBoolOps.o: mserver/iBase_SetBoolOps.cc
-iBase_SetRelation.o: mserver/iBase_SetRelation.cc
-iBase_SetTag.o: mserver/iBase_SetTag.cc
-iBase_Tag.o: mserver/iBase_Tag.cc
-iMesh_Arr.o: mserver/iMesh_Arr.cc
-iMesh_ArrMod.o: mserver/iMesh_ArrMod.cc
-iMesh_Entity.o: mserver/iMesh_Entity.cc
-iMesh_Mesh.o: mserver/iMesh_Mesh.cc
-iMesh_Modify.o: mserver/iMesh_Modify.cc
-iMesh_SIDL_MeshSidl.o: mserver/iMesh_SIDL_MeshSidl.cc
-sidl_BaseClass.o: mserver/sidl_BaseClass.cc
-sidl_BaseException.o: mserver/sidl_BaseException.cc
-sidl_BaseInterface.o: mserver/sidl_BaseInterface.cc
-sidl_ClassInfo.o: mserver/sidl_ClassInfo.cc
-sidl_ClassInfoI.o: mserver/sidl_ClassInfoI.cc
-sidl_DFinder.o: mserver/sidl_DFinder.cc
-sidl_DLL.o: mserver/sidl_DLL.cc
-sidl_Finder.o: mserver/sidl_Finder.cc
-sidl_InvViolation.o: mserver/sidl_InvViolation.cc
-sidl_Loader.o: mserver/sidl_Loader.cc
-sidl_PostViolation.o: mserver/sidl_PostViolation.cc
-sidl_PreViolation.o: mserver/sidl_PreViolation.cc
-sidl_SIDLException.o: mserver/sidl_SIDLException.cc
-sidl_io_Deserializer.o: mserver/sidl_io_Deserializer.cc
-sidl_io_IOException.o: mserver/sidl_io_IOException.cc
-sidl_io_Serializeable.o: mserver/sidl_io_Serializeable.cc
-sidl_io_Serializer.o: mserver/sidl_io_Serializer.cc
-sidl_rmi_ConnectRegistry.o: mserver/sidl_rmi_ConnectRegistry.cc
-sidl_rmi_InstanceHandle.o: mserver/sidl_rmi_InstanceHandle.cc
-sidl_rmi_InstanceRegistry.o: mserver/sidl_rmi_InstanceRegistry.cc
-sidl_rmi_Invocation.o: mserver/sidl_rmi_Invocation.cc
-sidl_rmi_NetworkException.o: mserver/sidl_rmi_NetworkException.cc
-sidl_rmi_ProtocolFactory.o: mserver/sidl_rmi_ProtocolFactory.cc
-sidl_rmi_Response.o: mserver/sidl_rmi_Response.cc
-iMesh_SIDL_MeshSidl_Skel.o: mserver/iMesh_SIDL_MeshSidl_Skel.cc
-iMesh_SIDL_MeshSidl_Impl.o: mserver/iMesh_SIDL_MeshSidl_Impl.cc
-iBase_Error_Impl.o: mserver/iBase_Error_Impl.cc
-iBase_Error_IOR.o: mserver/iBase_Error_IOR.c
-iBase_Error_Skel.o: mserver/iBase_Error_Skel.cc
-iBase_Error.o: mserver/iBase_Error.cc
+	echo "iMesh_SIDL_includes=-I$(includedir) -I$(includedir)/SIDL" >> $(DESTDIR)$(cfgdir)/iMesh-SIDL-Defs.inc
+	echo "iMesh_SIDL_LFDFLAGS=-L${libdir}" >> $(DESTDIR)$(cfgdir)/iMesh-SIDL-Defs.inc

Modified: MOAB/trunk/tools/iMesh/SIDL/iMesh-SIDL-Defs.inc.in
===================================================================
--- MOAB/trunk/tools/iMesh/SIDL/iMesh-SIDL-Defs.inc.in	2007-06-28 23:32:09 UTC (rev 1169)
+++ MOAB/trunk/tools/iMesh/SIDL/iMesh-SIDL-Defs.inc.in	2007-06-28 23:34:58 UTC (rev 1170)
@@ -1,18 +1,23 @@
-iMesh_DIR = @abs_srcdir@/..
 
-include ${iMesh_DIR}/iMesh-Defs.inc
-
-iMesh_SIDLINCLUDEDIR = @abs_srcdir@
-iMesh_SIDLLIBDIR = @abs_builddir@
-
+iMesh_SIDL_includes = \
+  -I at abs_srcdir@ \
+  -I at abs_builddir@/mserver \
+  -I at abs_builddir@/Cclient \
+  -I at abs_builddir@/Fclient \
+  -I at abs_builddir@/.. 
+  
 iMesh_SIDL_INCLUDES = \
-      -I${iMesh_SIDLINCLUDEDIR} -I${iMesh_SIDLINCLUDEDIR} -I${iMesh_SIDLINCLUDEDIR}/bserver \
-       -I${iMesh_SIDLINCLUDEDIR}/mserver -I at BABEL_DIR@/include ${iMesh_INCLUDES} 
+  $(iMesh_SIDL_includes) \
+  -I at BABEL_DIR@/include
+  
+iMesh_SIDL_LDFLAGS = \
+  -L at abs_builddir@/../.libs \
+  -L at abs_builddir@/../../../.libs \
+  -L at abs_builddir@/mserver/.libs \
+  -L at abs_builddir@/Cclient/.libs \
+  -L at abs_builddir@/Fclient/.libs
+  
+iMesh_SIDL_LIBS = -L at BABEL_DIR@/lib $(iMesh_SIDL_LDFLAGS) $(iMesh_SIDL_libs) \
+                  -liMesh -liMeshserver -lsidl -lMOAB @LIBS@
 
-iMesh_SIDL_LIBS = \
-      -L${iMesh_SIDLLIBDIR} -liMeshserver -L at BABEL_DIR@/lib -lsidl \
-      -Wl,-rpath,${iMesh_SIDLLIBDIR} -Wl,-rpath,${iMesh_SIDLLIBDIR} -Wl,-rpath, at BABEL_DIR@/lib ${iMesh_LIBS}
-
-iMesh_SIDL_FILES = \
-      ${iMesh_SIDLLIBDIR}/libiMeshserver.so
-
+iMesh_SIDL_FILES = @abs_builddir@/libiMeshserver.la

Added: MOAB/trunk/tools/iMesh/SIDL/mserver/Makefile.am
===================================================================
--- MOAB/trunk/tools/iMesh/SIDL/mserver/Makefile.am	                        (rev 0)
+++ MOAB/trunk/tools/iMesh/SIDL/mserver/Makefile.am	2007-06-28 23:34:58 UTC (rev 1170)
@@ -0,0 +1,87 @@
+INCLUDES += -I at BABEL_DIR@/include
+
+BUILT_SOURCES = $(libiMeshserver_la_SOURCES) $(libiMeshserver_la_include_HEADERS)
+
+if USE_BABEL
+  BABEL_CMD=@BABEL_DIR@/bin/babel -sC++ $(SIDL_FILES)
+else
+  BABEL_CMD=touch $(BUILT_SOURCES)
+endif
+
+SIDL_FILES = @srcdir@/../iBase.sidl \
+             @srcdir@/../iMesh.sidl \
+	     @srcdir@/../iMesh_SIDL.sidl
+
+$(BUILT_SOURCES) : .timestamp
+
+.timestamp: $(SIDL_FILES)
+	$(BABEL_CMD)
+	touch $@
+
+lib_LTLIBRARIES = libiMeshserver.la
+
+libiMeshserver_la_LIBADD = ../../libiMesh.la
+
+libiMeshserver_la_includedir = $(includedir)/SIDL
+ 
+libiMeshserver_la_SOURCES = \
+  iBase_Error_Impl.hh iMesh_SIDL_MeshSidl_Impl.hh \
+  iBase_Error_Impl.cc iMesh_SIDL_MeshSidl_Impl.cc \
+  iBase_ArrTag_IOR.h iBase_CreationStatus_IOR.h iBase_EntSet_IOR.h    \
+  iBase_EntTag_IOR.h iBase_EntityType_IOR.h iBase_ErrorActions_IOR.h          \
+  iBase_ErrorType_IOR.h iBase_Error_IOR.h iBase_IOR.h iBase_SetBoolOps_IOR.h  \
+  iBase_SetRelation_IOR.h iBase_SetTag_IOR.h iBase_StorageOrder_IOR.h         \
+  iBase_TagValueType_IOR.h iBase_Tag_IOR.h iMesh_AdjacencyInfo_IOR.h          \
+  iMesh_ArrMod_IOR.h iMesh_Arr_IOR.h iMesh_EntityTopology_IOR.h               \
+  iMesh_Entity_IOR.h iMesh_IOR.h iMesh_Mesh_IOR.h iMesh_Modify_IOR.h          \
+  iMesh_SIDL_IOR.h iMesh_SIDL_MeshSidl_IOR.h \
+  iBase_Error_IOR.c iMesh_SIDL_MeshSidl_IOR.c \
+  iBase_Error_Skel.cc iMesh_SIDL_MeshSidl_Skel.cc \
+  iBase_ArrTag.cc iBase_EntSet.cc iBase_EntTag.cc iBase_Error.cc     \
+  iBase_SetBoolOps.cc iBase_SetRelation.cc iBase_SetTag.cc iBase_Tag.cc       \
+  iMesh_Arr.cc iMesh_ArrMod.cc iMesh_Entity.cc iMesh_Mesh.cc iMesh_Modify.cc  \
+  iMesh_SIDL_MeshSidl.cc sidl_BaseClass.cc sidl_BaseException.cc              \
+  sidl_BaseInterface.cc sidl_ClassInfo.cc sidl_ClassInfoI.cc sidl_DFinder.cc  \
+  sidl_DLL.cc sidl_Finder.cc sidl_InvViolation.cc sidl_Loader.cc              \
+  sidl_PostViolation.cc sidl_PreViolation.cc sidl_SIDLException.cc            \
+  sidl_io_Deserializer.cc sidl_io_IOException.cc sidl_io_Serializeable.cc     \
+  sidl_io_Serializer.cc sidl_rmi_ConnectRegistry.cc                           \
+  sidl_rmi_InstanceHandle.cc sidl_rmi_InstanceRegistry.cc                     \
+  sidl_rmi_Invocation.cc sidl_rmi_NetworkException.cc                         \
+  sidl_rmi_ProtocolFactory.cc sidl_rmi_Response.cc
+
+libiMeshserver_la_include_HEADERS = \
+  iBase.hh iBase_ArrTag.hh iBase_CreationStatus.hh iBase_EntSet.hh   \
+  iBase_EntTag.hh iBase_EntityType.hh iBase_Error.hh iBase_ErrorActions.hh    \
+  iBase_ErrorType.hh iBase_SetBoolOps.hh iBase_SetRelation.hh iBase_SetTag.hh \
+  iBase_StorageOrder.hh iBase_Tag.hh iBase_TagValueType.hh iMesh.hh           \
+  iMesh_AdjacencyInfo.hh iMesh_Arr.hh iMesh_ArrMod.hh iMesh_Entity.hh         \
+  iMesh_EntityTopology.hh iMesh_Mesh.hh iMesh_Modify.hh iMesh_SIDL.hh         \
+  iMesh_SIDL_MeshSidl.hh sidl.hh sidl_BaseClass.hh sidl_BaseException.hh      \
+  sidl_BaseInterface.hh sidl_ClassInfo.hh sidl_ClassInfoI.hh sidl_DFinder.hh  \
+  sidl_DLL.hh sidl_Finder.hh sidl_InvViolation.hh sidl_Loader.hh              \
+  sidl_PostViolation.hh sidl_PreViolation.hh sidl_Resolve.hh                  \
+  sidl_SIDLException.hh sidl_Scope.hh sidl_io.hh sidl_io_Deserializer.hh      \
+  sidl_io_IOException.hh sidl_io_Serializeable.hh sidl_io_Serializer.hh       \
+  sidl_rmi.hh sidl_rmi_ConnectRegistry.hh sidl_rmi_InstanceHandle.hh          \
+  sidl_rmi_InstanceRegistry.hh sidl_rmi_Invocation.hh                         \
+  sidl_rmi_NetworkException.hh sidl_rmi_ProtocolFactory.hh                    \
+  sidl_rmi_Response.hh
+
+my_dist_sources = \
+  iBase_Error_Impl.hh iMesh_SIDL_MeshSidl_Impl.hh \
+  iBase_Error_Impl.cc iMesh_SIDL_MeshSidl_Impl.cc
+
+
+dist-hook:
+	for i in $(BUILT_SOURCES); do \
+	  found=0; \
+          for j in $(my_dist_sources); do \
+	    if test "x$$i" = "x$$j"; then \
+		found=1; \
+	    fi; \
+	  done; \
+	  if test "$$found" = "0"; then \
+	    $(RM) $(distdir)/$$i; \
+	  fi; \
+	done




More information about the moab-dev mailing list