diff --git a/genProcessScript.py b/genProcessScript.py
index 7483a3e7ff4bbbf3f65625b4b06081d280ce63b3..473a343d04a5c74fc6425c35cc23272986db3b0e 100644
--- a/genProcessScript.py
+++ b/genProcessScript.py
@@ -8,13 +8,14 @@ import sys
def main(argv):
try:
- opts, args = getopt.getopt(argv, '', ['cloudmask', 's2ref=', 's2bandlist='])
+ opts, args = getopt.getopt(argv, '', ['cloudmask', 's2ref=', 's2bandlist=', 'makefile'])
except getopt.GetoptError as err:
print str(err)
opt_str = ''
opt_str_s2 = ''
base_fld = args[0]
+ makefile = False
for opt, val in opts:
if opt == '--cloudmask':
@@ -23,6 +24,8 @@ def main(argv):
opt_str_s2 += ' --s2ref ' + val
elif opt == '--s2bandlist':
opt_str_s2 += ' --s2bandlist ' + val
+ elif opt == '--makefile':
+ makefile = True
valid_dirs_L8 = []
valid_dirs_S2 = []
@@ -46,25 +49,46 @@ def main(argv):
if (len(valid_dirs_L8) + len(valid_dirs_S2) + len(valid_dirs_S2_THEIA) + len(valid_dirs_Venus)) == 0:
sys.exit('No products found within ' + base_fld)
- if platform.system() == 'Windows':
- f = open('ProcessScript.bat', 'w')
- f.write("@echo off\n")
- else:
- f = open('ProcessScript.sh', 'w')
+ if not makefile:
+ if platform.system() == 'Windows':
+ f = open('ProcessScript.bat', 'w')
+ f.write("@echo off\n")
+ else:
+ f = open('ProcessScript.sh', 'w')
+
+ for d in valid_dirs_L8:
+ f.write('python preprocess.py ' + opt_str + ' ' + d + '\n')
+ for d in valid_dirs_S2:
+ f.write('python preprocess.py ' + opt_str + ' ' + opt_str_s2 + ' ' + d + '\n')
+ for d in valid_dirs_S2_THEIA:
+ f.write('python preprocess.py ' + opt_str + ' ' + opt_str_s2 + ' ' + d + '\n')
+ for d in valid_dirs_Venus:
+ f.write('python preprocess.py ' + opt_str + ' ' + opt_str_s2 + ' ' + d + '\n')
+ f.close()
- for d in valid_dirs_L8:
- f.write('python preprocess.py ' + opt_str + ' ' + d + '\n')
- for d in valid_dirs_S2:
- f.write('python preprocess.py ' + opt_str + ' ' + opt_str_s2 + ' ' + d + '\n')
- for d in valid_dirs_S2_THEIA:
- f.write('python preprocess.py ' + opt_str + ' ' + opt_str_s2 + ' ' + d + '\n')
- for d in valid_dirs_Venus:
- f.write('python preprocess.py ' + opt_str + ' ' + opt_str_s2 + ' ' + d + '\n')
- f.close()
+ if platform.system() == 'Linux':
+ st = os.stat('ProcessScript.sh')
+ os.chmod('ProcessScript.sh', st.st_mode | stat.S_IEXEC)
- if platform.system() == 'Linux':
- st = os.stat('ProcessScript.sh')
- os.chmod('ProcessScript.sh', st.st_mode | stat.S_IEXEC)
+ else:
+ f = open('ProcessMakefile', 'w')
+ tot = len(valid_dirs_L8) + len(valid_dirs_S2) + len(valid_dirs_S2_THEIA) + len(valid_dirs_Venus)
+ joblist = ['job%d' % j for j in range(1,tot+1)]
+ joball = ' '.join()
+ f.write('all : ' + joball + '\n\n')
+ for d in valid_dirs_L8:
+ f.write(joblist.pop() + ' :\n')
+ f.write(' python preprocess.py ' + opt_str + ' ' + d + '\n\n')
+ for d in valid_dirs_S2:
+ f.write(joblist.pop() + ' :\n')
+ f.write('python preprocess.py ' + opt_str + ' ' + opt_str_s2 + ' ' + d + '\n\n')
+ for d in valid_dirs_S2_THEIA:
+ f.write(joblist.pop() + ' :\n')
+ f.write('python preprocess.py ' + opt_str + ' ' + opt_str_s2 + ' ' + d + '\n\n')
+ for d in valid_dirs_Venus:
+ f.write(joblist.pop() + ' :\n')
+ f.write('python preprocess.py ' + opt_str + ' ' + opt_str_s2 + ' ' + d + '\n\n')
+ f.close()
if __name__ == '__main__':