ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/group/trunk/OOPSE-2.0/make/Makefile.in
(Generate patch)

Comparing trunk/OOPSE-2.0/make/Makefile.in (file contents):
Revision 1530 by tim, Wed Oct 6 18:53:05 2004 UTC vs.
Revision 1553 by tim, Mon Oct 11 18:01:51 2004 UTC

# Line 58 | Line 58 | IncludeDirs = \
58          applications/dump2Xyz \
59          applications/simpleBuilder
60  
61 + Samples = \
62 +        samples/argon \
63 +        samples/water/dimer \
64 +        samples/water/spce \
65 +        samples/water/ssd \
66 +        samples/water/ssde \
67 +        samples/water/tip3p_ice \
68 +        samples/water/tip4p \
69 +        samples/lipid \
70 +        samples/alkane \
71 +        samples/minimizer \
72 +        samples/metals \
73 +        samples/zcons \
74 +
75   IncludeDirs = \
76          @SPRNG_INC_DIR@ \
77          @MPI_INC_DIR@
# Line 72 | Line 86 | ForceParamDir   = @OOPSE_HOME@/share/forceFields/
86          @MPI_F90_LIB@
87  
88   OopseHome       = @OOPSE_HOME@
89 < ForceParamDir   = @OOPSE_HOME@/share/forceFields/
90 < SampleSimDir    = @OOPSE_HOME@/share/samples/
89 > ForceParamDir   = $(OopseHome)/share/forceFields
90 > SampleSimDir    = $(OopseHome)/share/samples
91 > InstallBinDir   = $(OopseHome)/bin
92 > DocDir          = $(OopseHome)/doc
93   FrcDeclare      = -DFRC_PATH="$(ForceParamDir)"
94 + F90Declare      = -D__FORTRAN90
95   ParallelDeclare = -DIS_MPI
96   UseMPI          = @USE_MPI@
97 + ModuleCase      = @F90_MODULE_NAMES@
98 + ModSuffix       = @MOD@
99   LinkOptions = \
100          @F90LIBS@
101  
# Line 94 | Line 113 | ParallelLibDir    = $(DEV_ROOT)/MPIlib
113   TargetDir         = $(DEV_ROOT)/obj
114   ParallelTargetDir = $(DEV_ROOT)/MPIobj
115   LibDir            = $(DEV_ROOT)/lib
97 ParallelLibDir    = $(DEV_ROOT)/MPIlib
116   MakeDir           = $(DEV_ROOT)/make
117   BinDir            = $(DEV_ROOT)/bin
118   DocsDir           = $(DEV_ROOT)/docs
# Line 207 | Line 225 | endif
225      ParallelStaticLibrary  = $(LibDir)/lib$(subst /,,$(patsubst %,oopse_%,$(Package)))_MPI.a
226    endif
227   endif
228 +
229   #
230   # Misc
231   #
# Line 234 | Line 253 | Install                = @INSTALL@
253   CppCompiler            = @CXX@
254   Linker                 = @CXX@
255   MakeDepend             = makedepend
256 < Install                = @INSTALL@
256 > INSTALL                = @INSTALL@
257   InstallProgram         = @INSTALL_PROGRAM@
258   InstallData            = @INSTALL_DATA@
259 < MakeDir                = @MKINSTALLDIRS@
259 > MkDir                = @MKINSTALLDIRS@
260   Delete                 = rm -fr
261   StaticArchiver         = @AR@
262   DynamicArchiver        = @CC@
# Line 256 | Line 275 | Ranlib                 = @RANLIB@
275   Yacc                   = @YACC@
276   Lex                    = @LEX@
277   Ranlib                 = @RANLIB@
278 + Doxygen                = @DOXYGEN@
279  
260
280   MakeOptions            = -k
281   MakeDependOptions      =
282   StaticArchiverOptions  = rc
# Line 298 | Line 317 | Space                  = $(Empty) $(Empty)
317  
318   #---------------------------------------------------------------------------
319   #
320 + #  Install
321 + #
322 + #---------------------------------------------------------------------------
323 +
324 + ifneq "$(words $(SampleFiles))" "0"
325 +  MySample                 = $(subst $(shell cd $(DEV_ROOT)/samples; pwd)/,,$(CurrentDir))
326 +  MyInstallDir             = $(SampleSimDir)/$(MySample)
327 +  InstallFiles             = $(SampleFiles)
328 +  InstallCommand           = $(InstallData)
329 + endif
330 +
331 + ifneq "$(words $(Main))" "0"
332 +  MyInstallDir             = $(InstallBinDir)
333 +  ifeq "$(UseMPI)" "yes"
334 +    InstallFiles             = $(Executable) $(ParallelExecutable)
335 +  else
336 +    InstallFiles             = $(Executable)
337 +  endif
338 +  InstallCommand           = $(InstallProgram)
339 + endif
340 +
341 + ifneq "$(words $(ForcefieldFiles))" "0"
342 +  MyInstallDir             = $(ForceParamDir)
343 +  InstallFiles             = $(ForcefieldFiles)
344 +  InstallCommand           = $(InstallData)
345 + endif
346 +
347 + ifneq "$(words $(InstallFiles))" "0"
348 +  InstallList            =
349 + else
350 +  InstallList            = $(patsubst %,$(DEV_ROOT)/%,$(Samples)) $(DEV_ROOT)/forceFields $(patsubst %, $(SourceDir)/%,$(Applications))
351 + endif
352 +
353 + InstallListLoop          = $(patsubst %,$(SourceDir)/%/.install,$(PackageList))  $(patsubst %,%/.install,$(InstallList))
354 +
355 +
356 +
357 + #---------------------------------------------------------------------------
358 + #
359   # Rules
360   #
361   #---------------------------------------------------------------------------
# Line 363 | Line 421 | $(PackageTargetDir)/%.o : %.F90
421   # .F90 -> .o
422   $(PackageTargetDir)/%.o : %.F90
423          $(F90Compiler) $(F90Options) $(IncludePath) -c $< -o $@
424 +        if test -f *.$(ModSuffix); then \
425 +          $(Move) *.$(ModSuffix) $(PackageTargetDir);\
426 +        fi
427  
428   $(PackageParallelTargetDir)/%.o : %.F90
429          $(F90Compiler) $(F90ParallelOptions) $(IncludePath) -c $< -o $@
430 +        if test -f *.$(ModSuffix); then \
431 +          $(Move) *.$(ModSuffix) $(PackageParallelTargetDir);\
432 +        fi
433  
434   ifeq "$(UseMPI)" "yes"
435   %.o : %.F90
436          $(MAKE) $(MakeOptions) $(PackageTargetDir)/$@
437 +        if test -f *.$(ModSuffix); then \
438 +          $(Move) *.$(ModSuffix) $(PackageTargetDir);\
439 +        fi
440 +
441          $(MAKE) $(MakeOptions) $(PackageParallelTargetDir)/$@
442 +        if test -f *.$(ModSuffix); then \
443 +          $(Move) *.$(ModSuffix) $(PackageParallelTargetDir);\
444 +        fi
445 +
446   else
447   %.o : %.F90
448          $(MAKE) $(MakeOptions) $(PackageTargetDir)/$@
449 +        if test -f *.$(ModSuffix); then \
450 +          $(Move) *.$(ModSuffix) $(PackageTargetDir);\
451 +        fi
452 +
453   endif
454  
455  
# Line 470 | Line 546 | $(PackageTargetDir)/%_Skel.class : $(PackageTargetDir)
546   %_Skel.class : %.class
547          $(MAKE) $(MakeOptions) $(PackageTargetDir)/$@
548  
549 + document :
550 +        $(Print) Generate Documentation for OOPSE-2.0
551 +        @cd $(DEV_ROOT)/src    
552 +        $(Doxygen) $(DEV_ROOT)/make/Doxyfile
553 +
554   #GUN make funtions to merge the libraries
555   find_objs = $(shell $(StaticArchiver) -t $(1))
556   extract_objs = $(shell $(StaticArchiver) -x $(1) $(call find_objs, $(1)))
# Line 505 | Line 586 | ifeq "$(UseMPI)" "yes"
586  
587   _all : _buildall
588  
589 + _buildall :
590   ifeq "$(UseMPI)" "yes"
591   _buildall : \
592          $(DependencyFile) \
# Line 569 | Line 651 | $(DependencyFile) : $(DerivedSource)
651          $(Print) $@
652          @cd $(PackageSourceDir)
653  
572        @touch Make.ctemp
573        @touch Make.ctemp
574
654   ifneq "$(words $(CppFiles))" "0"
655 <        $(CppCompiler) $(IncludePath) -MM $(CppFiles)  > Make.cpptemp
656 <        cat Make.cpptemp | sed 's/^[a-zA-Z0-9]/$$\(DEV_ROOT\)\/obj\/&/g' >> $(DependencyFile)
657 <        cat Make.cpptemp | sed 's/^[a-zA-Z0-9]/$$\(DEV_ROOT\)\/MPIobj\/&/g' >> $(DependencyFile)
655 >        $(CppCompiler) $(CppOptions) $(IncludePath) -MM $(CppFiles) > Make.cpptemp
656 >        @cat Make.cpptemp | sed 's/^[a-zA-Z0-9]/$$\(TargetDir\)\/&/g' >> $(DependencyFile)
657 >        $(Delete) Make.cpptemp
658 >        $(CppCompiler) $(CppParallelOptions) $(IncludePath) -MM $(CppFiles) > Make.cpptemp
659 >        @cat Make.cpptemp | sed 's/^[a-zA-Z0-9]/$$\(ParallelTargetDir\)\/&/g' >> $(DependencyFile)
660 >        @$(Delete) Make.cpptemp
661   endif
662  
663   ifneq "$(words $(CFiles))" "0"
664 <        $(CCompiler)   $(IncludePath) -MM $(CFiles) $(DerivedCFiles)   > Make.ctemp
665 <        cat Make.ctemp | sed 's/^[a-zA-Z0-9]/$$\(DEV_ROOT\)\/obj\/&/g' >> $(DependencyFile)
666 <        cat Make.ctemp | sed 's/^[a-zA-Z0-9]/$$\(DEV_ROOT\)\/MPIobj\/&/g' >> $(DependencyFile)
667 <
664 >        $(CCompiler) $(COptions) $(IncludePath) -MM $(CFiles) $(DerivedCFiles) > Make.ctemp
665 >        @cat Make.ctemp | sed 's/^[a-zA-Z0-9]/$$\(TargetDir\)\/&/g' >> $(DependencyFile)
666 >        $(Delete) Make.ctemp
667 >        $(CCompiler) $(CParallelOptions) $(IncludePath) -MM $(CFiles) $(DerivedCFiles) > Make.ctemp
668 >        @cat Make.ctemp | sed 's/^[a-zA-Z0-9]/$$\(ParallelTargetDir\)\/&/g' >> $(DependencyFile)
669 >        @$(Delete) Make.ctemp
670   endif
671  
672   ifneq "$(words $(F90Files))" "0"
673 <        $(DEV_ROOT)/scripts/filepp  -I $(DEV_ROOT)/src -od '$$(DEV_ROOT)/obj/' -D__FORTRAN90  $(F90Files) > Make.ftemp
674 <        $(DEV_ROOT)/scripts/filepp  -I $(DEV_ROOT)/src -od '$$(DEV_ROOT)/MPIobj/' -DIS_MPI -D__FORTRAN90  $(F90Files) >> Make.ftemp
675 <        cat Make.ftemp >> $(DependencyFile)
673 >        $(DEV_ROOT)/scripts/filepp  -I $(DEV_ROOT)/src -od '$$(TargetDir)/' $(F90Declare) -mc $(ModuleCase) -ms $(ModSuffix) $(F90Files) > Make.ftemp
674 >        $(DEV_ROOT)/scripts/filepp  -I $(DEV_ROOT)/src -od '$$(ParallelTargetDir)/' $(ParallelDeclare) $(F90Declare) -mc $(ModuleCase) -ms $(ModSuffix)  $(F90Files) >> Make.ftemp
675 >        @cat Make.ftemp >> $(DependencyFile)
676 >        @$(Delete) Make.ftemp
677   endif
593        $(Delete) Make.cpptemp Make.ctemp Make.ftemp
678  
679   # make lib
680   lib    : $(PackageListLoop)
# Line 603 | Line 687 | jarsign : $(JarFile)
687   jarsign : $(JarFile)
688          $(JarSigner) -keystore GeoSoftKeystore $(JarFile) myself
689  
690 + #make install
691 + %.install :
692 +        @$(MAKE) $(MakeOptions) -C $(subst .install,,$@) _installall    
693 +
694 + install : $(InstallListLoop)
695 +        $(Print) Done Install
696 +
697 + _installall : _buildall _installdata
698 +
699 + $(MyInstallDir) :
700 +        $(MkDir) $@
701 +
702 + _installdata :  $(MyInstallDir)
703 +        $(Print) $(InstallFiles)
704 + ifneq "$(words $(InstallFiles))" "0"
705 +        $(InstallData) $(InstallFiles) $(MyInstallDir)
706 + endif      
707 +        
708   # make statistics
709   _statisticsall :
710          @$(Print) $(patsubst %,$(CurrentDir)/%,$(SourceFiles)) >> $(DEV_ROOT)/files.tmp

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines