Skip to content

Fiished the multidirectory dependencies #10

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 365 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
365 commits
Select commit Hold shift + click to select a range
53b5d7e
tmp commit
Nov 14, 2016
aaeb869
initial implementation of mpi_write
libm3l Nov 15, 2016
7e31a63
fll_mpi_write seems to be working
libm3l Nov 15, 2016
58e7fd2
additional changes
libm3l Nov 15, 2016
428dd8e
bug in python script
libm3l Nov 15, 2016
784d051
remove barriers
libm3l Nov 15, 2016
abceecf
added prototype of mpi_read
libm3l Nov 15, 2016
b0be727
Add reading binary file from position
libm3l Nov 15, 2016
e91822d
finish mpi_read
libm3l Nov 15, 2016
6682704
tie everything to RANK index
libm3l Nov 16, 2016
d19026d
release memory
libm3l Nov 16, 2016
2ad306f
add missing recursive instruction
Nov 16, 2016
93a3227
add size of data to stdoutput
Nov 16, 2016
ee0c3d7
protect agains NULL communicator
Nov 16, 2016
eaa7691
sync return parameters for MPI_COMM_NULL
Nov 16, 2016
7d8ea52
change output
Nov 16, 2016
aa09b6c
add saving and reading group file
Nov 16, 2016
aa09ed9
add prototyme of NM model for MPI WRITE
Nov 16, 2016
9073db9
example module cleanup
Nov 16, 2016
e34259c
correct STOP ERR MEMORY statements
libm3l Nov 17, 2016
b06473a
correct typo
Nov 17, 2016
fc9ad44
add linking python scripts
Nov 17, 2016
0c9b14a
add accessories and the first utility
Nov 17, 2016
a8c0ec2
add to main Makefile
Nov 17, 2016
56e71ac
tmp commit
Nov 17, 2016
ece3d6c
add option SCAN to read and cat
Nov 17, 2016
6555949
for scanning purposes - read and print scalar values
Nov 17, 2016
9b0e2fc
add additional output info to fll_cat
Nov 17, 2016
fed9669
udpate printout
Nov 17, 2016
5d3bbd6
fix bug in fll_read
Nov 17, 2016
a4bc64e
update example to separate files
Nov 17, 2016
f2b292f
add color output
Nov 17, 2016
8c44988
Merge branch 'Development' of https://github.com/libm3l/fll into Deve…
libm3l Nov 18, 2016
e4a399c
fix for python 3
libm3l Nov 18, 2016
2ca1a8d
add prototype of function
Nov 18, 2016
527fab6
rename function to be consistent with other functions
Nov 18, 2016
7a18a6b
finish IO structure subroutine
Nov 18, 2016
f3cd252
finish MPI-IO in N-M mode
Nov 18, 2016
30a7812
remove *.py from list of default files
Nov 18, 2016
598a479
fix bug
Nov 18, 2016
f43b545
remove loops from readwrite routines
Nov 18, 2016
9b92139
expand example
Nov 18, 2016
913860c
remove forgotten - (dash) from output
Nov 18, 2016
14b6d8c
update fll_py output
libm3l Nov 19, 2016
76a420f
Merge https://github.com/libm3l/fll into Development
libm3l Nov 19, 2016
0d1e129
update README
libm3l Nov 20, 2016
320a86f
add saving individual files to Example
libm3l Nov 21, 2016
50f5350
Merge branch 'Development' of https://github.com/libm3l/fll into Deve…
libm3l Nov 21, 2016
7fa8ed3
add saving individual files
libm3l Nov 21, 2016
912f807
fix bug in writing FFA format files
Nov 21, 2016
ba9499c
add test with writing single merged file
Nov 21, 2016
ca8bf6c
write size of data set
Nov 21, 2016
3e7107f
add ffa format to fll_cat
Nov 21, 2016
46bf805
add scan option to FFA format read
Nov 21, 2016
7386ed5
fix bindir definition
Nov 21, 2016
acc80c8
rename function
Nov 22, 2016
0aee4fa
add S-N-M model
Nov 22, 2016
edf482b
bug fix in fll_mpi_write_nm model
Nov 22, 2016
f6c9a47
correct typo
Nov 22, 2016
2f78b62
change SEND to SSEND
libm3l Nov 23, 2016
5977a4f
add fll_convert
libm3l Nov 23, 2016
9f605f3
add printout
libm3l Nov 23, 2016
545ea92
Merge branch 'Development' of https://github.com/libm3l/fll into Deve…
Nov 28, 2016
580fc72
cleanup colors in fll_convert python script
Dec 2, 2016
cba0040
fix bu reading/writing strings
Dec 2, 2016
af3d844
do not use --convert big endian
Dec 5, 2016
8570e91
get rid of big endian
libm3l Dec 6, 2016
39c4f27
clear comment in fll_locate
Dec 8, 2016
9276b6c
Merge branch 'Development' of https://github.com/libm3l/fll into Deve…
libm3l Dec 9, 2016
4b26c66
add name to diag
libm3l Dec 10, 2016
733143b
remove absolete stdout statement
libm3l Dec 11, 2016
46f20da
add check if ffa-v2 format
Dec 15, 2016
8adc913
Merge branch 'master' of https://github.com/libm3l/fll
Dec 15, 2016
3e7826d
git checkout Merge branch 'Development' of https://github.com/libm3l/…
libm3l Dec 16, 2016
a9d4167
fix problem with FFA files
libm3l Dec 27, 2016
7243aca
some additional fixes
Dec 28, 2016
0672050
add A as a single char
Feb 24, 2017
6f886ec
Adding -i (--ignore) option to list modules which are found in depend…
tsigarid Mar 18, 2017
cc8b001
Check for included files while building depepdencies, not only used m…
tsigarid Mar 18, 2017
b2b7201
remove absolete lines
Apr 24, 2017
9bd074f
correct err statement
Apr 24, 2017
d596f05
add reading old format for pointwise
May 2, 2017
c31b6b6
Add link to fll
libm3l May 17, 2017
9a4e67c
adding paragraph to README.md
libm3l May 17, 2017
348a675
Update README.md
libm3l May 17, 2017
4ea47bb
add type of verbose
May 19, 2017
0bde161
update verbosity of output during depend phase
May 19, 2017
957eb58
update output verbosity details
May 19, 2017
ed03a62
fix readme file
May 19, 2017
0623210
update fort_depend
May 22, 2017
19c20b9
implement latest changes from tsigarid/fort_depend.py branch
May 22, 2017
204664c
Merge branch 'master' of https://github.com/libm3l/fll
May 22, 2017
fc37d8b
Merge branch 'Development'
May 22, 2017
ef4fb60
update dependency files
May 23, 2017
5c5248c
fix makefile
May 23, 2017
08e5015
updated stdout
May 23, 2017
37016d0
tmp commit
May 23, 2017
1d93991
Merge branch 'master' of https://github.com/gkenway/fort_depend.py in…
May 23, 2017
c81011f
fix in dep script
May 23, 2017
c161451
remove mpif90
May 23, 2017
da62ed0
fix intel config files
May 23, 2017
58c4907
Merge branch 'environment' of https://github.com/bprichar/fort_depend…
May 25, 2017
fba8400
cpecify for intel debug and add comments to configure.py
May 25, 2017
6fdfc79
remove absolete file
May 25, 2017
48d0a92
rename project.dep to depend.mk
May 25, 2017
4f0bedd
fix Makefiles for new depend.mk name
May 25, 2017
bfde822
fix some additional errors
May 25, 2017
d90ef21
Fix err lines, sync with current implementation
May 25, 2017
a7b7c3e
add notice about installation to INSTALL file
May 25, 2017
6ee34ef
specify lenght of file name at rading
May 26, 2017
a001c14
tmp commit
libm3l May 27, 2017
6b83bd5
Merge https://github.com/libm3l/fort_depend.py
libm3l May 27, 2017
36bb8c1
commit latest changes
libm3l May 27, 2017
ed4ec0a
fix bug with inconsisten use of tab and spaces
libm3l May 27, 2017
ab7db50
fix utf-8 file reading problem
libm3l May 30, 2017
1e97890
fix fort depend for utf-8 files
libm3l May 30, 2017
3ade0c5
disable stdio, distracting
May 30, 2017
d3afa72
update MIP-IO example
May 30, 2017
8a8e7cf
tweak with number of files
May 30, 2017
f1242c0
add --dir -d option to fll_cat
May 30, 2017
73f8b76
update dep script for pyhton2.x
Jun 2, 2017
4d4c1ba
update for python2.x
Jun 2, 2017
60f0f21
Merge branch 'master' of https://github.com/libm3l/fort_depend.py
Jun 2, 2017
a585038
fix declarations for older version of fortran
Jun 2, 2017
a81b458
updated depend files
libm3l Jun 3, 2017
679d7f3
Merge branch 'master' of https://github.com/libm3l/fll into Development
libm3l Jun 3, 2017
ce86328
fix locate bug
Jun 16, 2017
9b5ba56
add read record function
Jun 16, 2017
a5f95d6
cleanup
Jun 16, 2017
9a7e243
Merge branch 'Development' of https://github.com/libm3l/fll into Deve…
libm3l Jun 17, 2017
50e4b50
add scan file function
Jun 19, 2017
a8719ff
update fll_read_record
Jun 19, 2017
a27cc1c
use standard function to get size of data set
Jun 20, 2017
78c9a29
replace partition with process
Jun 20, 2017
3f06cb8
update documentation
Jun 20, 2017
985fbcf
fix dependency script
Jul 3, 2017
16fce51
add break to for loop
Jul 3, 2017
b20ced8
fix Makefile in examples
Jul 13, 2017
f37fd36
fix two thigs - module names and fitler files
libm3l Jul 26, 2017
6899cf5
add fixed depend script
libm3l Jul 26, 2017
8ab0f9a
Merge branch 'Development' of https://github.com/libm3l/fll into Deve…
libm3l Jul 26, 2017
6f3c5d7
Merge branch 'master' of https://github.com/libm3l/fll
libm3l Jul 26, 2017
92be0d3
fix module replacement for v2
Jul 27, 2017
86b0f3d
update to new dependency script
Jul 27, 2017
07c92a5
Merge branch 'Development'
Jul 27, 2017
c92a820
modify dep list
Jul 28, 2017
d94488e
add improved dependency script
Jul 28, 2017
0d26780
udated dependency script
libm3l Jul 28, 2017
44fad34
updated dependency files
libm3l Jul 28, 2017
9a18fc4
Merge branch 'Development'
libm3l Jul 28, 2017
2d71bb5
Merge branch 'Development' of https://github.com/libm3l/fll into Deve…
libm3l Jul 28, 2017
0383fbc
Merge branch 'Development'
libm3l Jul 28, 2017
f610e12
all files should have relatie path
libm3l Jul 28, 2017
e213095
Merge branch 'Development'
libm3l Jul 28, 2017
22a3309
Merge branch 'Development' of https://github.com/libm3l/fort_depend.p…
libm3l Jul 28, 2017
2c5befb
Merge branch 'master' into Development
libm3l Jul 28, 2017
8024865
update to different search algoritm
libm3l Jul 29, 2017
8d7d21b
Update to improved dependency script
libm3l Jul 29, 2017
4b79c9e
add some comments to the script
libm3l Jul 29, 2017
782a3e2
use updated version of fort_depend script
Jul 31, 2017
8da1f5d
update to recovered dependency script
Jul 31, 2017
8d0f789
bug in loop, terminated prematurely
Jul 31, 2017
1ab5266
add - to include
Jul 31, 2017
0f68b59
fix dep /
Jul 31, 2017
a4b3ef6
fix current path slashes
Jul 31, 2017
f089d2f
fix bug in stitch rutine
Aug 1, 2017
cd1b956
add current directory to list of specified directories with dependencies
Aug 1, 2017
b73285b
add updated dep script
Aug 1, 2017
06a1638
treat if -d contains external libraries
Aug 1, 2017
b1420bc
updated dep script
Aug 1, 2017
240f16a
set istat = 0 if retval == 0
Aug 2, 2017
c0055d3
new fix
Aug 2, 2017
8eb16f2
updted version of dependency script
Aug 2, 2017
466eafa
if path not specified, use cwd
libm3l Aug 3, 2017
530aeb0
update depend script
libm3l Aug 3, 2017
d19d638
expand err statements in Cp, Mv
Aug 4, 2017
66cd064
if data set not found, nullify pointer
Aug 4, 2017
e20e712
correct parameter err message
Aug 10, 2017
bd64d11
add fll_rename function
Aug 10, 2017
7d06120
fix length of character in declaration
Aug 10, 2017
619d524
got to big endian in FLL format
Aug 10, 2017
0ebb3fe
fix err statement
Aug 10, 2017
f9b0075
fix error in fll_duplicate
libm3l Aug 12, 2017
40746d1
Merge branch 'Development' of https://github.com/libm3l/fll into Deve…
Aug 14, 2017
9bec704
extend ffa_convert
Aug 17, 2017
c29fe44
add check for input parameters to python wrappers
Aug 17, 2017
d0549da
add reading of ucd surface mesh files
Aug 21, 2017
17b7b53
cleanup
Aug 21, 2017
99b590b
add miscalenuous
libm3l Aug 22, 2017
30cc83a
Merge branch 'Development' of https://github.com/libm3l/fll into Deve…
libm3l Aug 22, 2017
6e6d5f6
add type of integer
Aug 22, 2017
0bd5b17
Merge branch 'Development' of https://github.com/libm3l/fll into Deve…
Aug 22, 2017
305dd3a
fix bug in python wrapper
Sep 6, 2017
aab2bf5
Update fort_depend.py
libm3l Sep 7, 2017
e738069
add option for building static library
Sep 7, 2017
29d24df
replace INSTALL by mv
Sep 7, 2017
306b8c6
add date and time to output
Sep 8, 2017
df6986d
add date and time to dependency script
Sep 8, 2017
4d26e4c
fix bug causing SIGSEGV in printout
Sep 8, 2017
68b6954
fix bug
Sep 27, 2017
76b8017
fix Makefile, make .a library at install too
Sep 28, 2017
4e124d2
print name of header node
Sep 28, 2017
7a488e1
fix L and S type for long and short text when exporting to external f…
Nov 6, 2017
cd15592
fix compillation error
Nov 6, 2017
1399157
fix error in fll_mv
Nov 8, 2017
16890e4
fix error when incrementing list count
libm3l Nov 12, 2017
dc93ef5
take care of situation where list is moved to its predeccesor or succ…
libm3l Nov 12, 2017
18efece
avoid cp and mv to itself
libm3l Nov 12, 2017
8dff25f
fix bugs
Nov 13, 2017
c8c8086
fix logical bug
Nov 13, 2017
84cc33d
add optional ACTION to locate and getndata
Nov 13, 2017
2a510ed
define optional ACTION
Nov 13, 2017
cb584f5
add optional ACTION to deattach
Nov 13, 2017
8944851
another functions with optional ACTION
Nov 13, 2017
f5d8a40
add optional ACTION to fll_getnbytes
Nov 13, 2017
b2a5336
add optional ACTION to fll_funct_prt
Nov 13, 2017
5c91439
add optional ACTION to fll_cp and fll_rm
Nov 13, 2017
7ba50cb
add optional ACTION
Nov 13, 2017
42bc796
add optional ACTION to fll_read
Nov 13, 2017
53b7ec0
add optional ACTION
Nov 13, 2017
d16ea71
add optional ACTION to fll_read_record
Nov 13, 2017
7ddbb1b
sync ERR statements
Nov 13, 2017
fa3775d
add PLIST description
Nov 13, 2017
256a946
rename LOC_ACT variable
Nov 14, 2017
0a4c9b1
change ACTION to ERRMSG
Nov 14, 2017
3f16283
ad optional parameters to calls
Nov 15, 2017
ed1958c
read - add optional parameter ERRMSG
Nov 15, 2017
73ef332
add optional ERRMSG to write
Nov 15, 2017
dc4d531
add ERRMSG to mpi routines
Nov 15, 2017
392d878
add STOP to FLL_OUT
Nov 16, 2017
7d5416f
cosmetic changes
Nov 16, 2017
320a08e
add missing depend.mk in ReadRecord
Nov 16, 2017
b2cc572
add optional parameter for color
Nov 16, 2017
8e53cd7
add color to fll_cat accessory
Nov 16, 2017
217abf9
add missing fll_out
Nov 17, 2017
53c95e3
fix bug in locate
Nov 22, 2017
15da3c1
finish fll_sweep
Nov 22, 2017
97eff38
sync ERR line numbers
Nov 27, 2017
f98ab6b
update Makefile for mpif90 command check
Nov 27, 2017
ef3e654
improve MPIF90 check in Makefiles
Nov 27, 2017
a03043b
add comments to file header
Nov 29, 2017
5742714
Merge branch 'Development' of https://github.com/libm3l/fll into Deve…
Nov 29, 2017
817c4ab
add comments
libm3l Nov 29, 2017
44891e4
Merge branch 'master' of https://github.com/libm3l/fort_depend.py
Nov 29, 2017
500387d
merge
Nov 29, 2017
7dd6bb6
add latest changes
Dec 11, 2017
9192494
add additional comment lines
Dec 12, 2017
6b96c38
add keywords on module line which should be igored
Dec 13, 2017
ce53bd9
add status line
Dec 13, 2017
b153dfb
change output for modules located in different directories
May 28, 2019
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
config.mk
64 changes: 58 additions & 6 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,17 +8,69 @@ Original script by D. Dickinson
Usage
=====

Here's an example of how to use `fort_depend.py` in your makefiles:
Here's an example of how to use `fort_depend.py` in your makefiles.

Input parameters:


-f --files Files to process

-o --output Output file

-v -vv -vvv Different level of verbosity contained in standard output

-w --overwrite Overwrite output file without warning

-r --root_dir Project root directory

-d --dep_dir List of selected dependecy directories


For bigger project example, look at Makefiles, rule.mk, src_dir_path.mk and other files in fll project at
https://github.com/libm3l/fll which is a linked list library written in Fortran and which uses this
script to get fortran project dependencies

========================= MAKEFILE EXAMPLE ===================

# Script to generate the dependencies
MAKEDEPEND=/path/to/fort_depend.py
# for example - look into www.github.com/libm3l/fll project
#
# specify location of fort_depend.py script
#
MAKEDEPEND=/path_to/fort_depend.py
#
# The PROJ_ROOT_PATH specifies the common directory for all the project subdirectories
# specify location of fortran project root directory
# the script can now make dependencies for project with source
# files located in different subdirectories directories in the project root directory.
# The script lops over all of them finding dependencies for all fortran files
# use option --root_dir
#
PROJ_ROOT_PATH =/path/to_proj_root_dir
#
# specify selected path for dependency search, ie. for big projects, rather then search through all directories in PROJ_ROOT_PATH
# you can specify those directories which will be searched for dependencies are located
# if not specified, the script will be searching through entire tree. For bigger projects this may lead to longer time while
# looking for dependencies
# use option --dep_dir
#

# $(DEP_FILE) is a .dep file generated by fort_depend.py
DEP_FILE = my_project.dep

# Source files to compile
OBJECTS = mod_file1.f90 \
mod_file2.f90
# You can specify all .f90 files
FFILES= $(notdir $(wildcard $(srcdir)/*.f90))
# or you can specify names of the files directly
FFILES = mod_file1.f90 \
mod_file2.f90

#
# files specified in FFILES are dependent on files located in directory ../data_util and ../../util
# if not specified, the sript looks for all files in PROJ_ROOT_PATH
FMODDIRS= \
../data_util \
../../util \

# Make sure everything depends on the .dep file
all: $(actual_executable) $(DEP_FILE)
Expand All @@ -31,6 +83,6 @@ Here's an example of how to use `fort_depend.py` in your makefiles:
# when you change your source
$(DEP_FILE): $(OBJECTS)
@echo "Making dependencies!"
cd $(SRCPATH) && $(MAKEDEPEND) -w -o /path/to/$(DEP_FILE) -f $(OBJECTS)
cd $(srcdir) && $(MAKEDEPEND) -r $(PROJ_ROOT_PATH) -d $(FMODDIRS) -v w -o $(srcdir)/$(DEP_FILE) -f $(FFILES)

include $(DEP_FILE)
-include $(DEP_FILE)
Loading