@@ -789,33 +789,30 @@ def cleanup_script_files():
789789 containername ,sourcecode = nodes_dict [node ].split (':' )
790790 if len (sourcecode )!= 0 and sourcecode .find ("." )!= - 1 : #3/28/21
791791 dockername ,langext = sourcecode .rsplit ("." , 1 )
792- # dockername can include subdirectories (e.g. subdir/script).
793- # Compute a stable prefix to reach study root from docker build dir.
794- docker_subpath_depth = dockername .count ("/" ) + dockername .count ("\\ " )
795- docker_rel_prefix = "../" * (docker_subpath_depth + 1 )
796- fbuild .write ("mkdir docker-" + dockername + "\n " )
797- fbuild .write ("cd docker-" + dockername + "\n " )
798- fbuild .write ("cp " + docker_rel_prefix + "src/Dockerfile." + dockername + " Dockerfile\n " )
792+ dockerbuilddir = "docker-" + dockername .replace ("/" , "__" ).replace ("\\ " , "__" )
793+ fbuild .write ("mkdir " + dockerbuilddir + "\n " )
794+ fbuild .write ("cd " + dockerbuilddir + "\n " )
795+ fbuild .write ("cp ../src/Dockerfile." + dockername + " Dockerfile\n " )
799796 #copy sourcefiles from ./src into corresponding directories
800- fbuild .write ("cp " + docker_rel_prefix + " src/"+ sourcecode + " .\n " )
797+ fbuild .write ("cp ../ src/" + sourcecode + " .\n " )
801798 if langext == "py" : #4/29/21
802- fbuild .write ("cp " + docker_rel_prefix + " src/concore.py .\n " )
799+ fbuild .write ("cp ../ src/concore.py .\n " )
803800 elif langext == "cpp" : #6/22/21
804- fbuild .write ("cp " + docker_rel_prefix + " src/concore.hpp .\n " )
801+ fbuild .write ("cp ../ src/concore.hpp .\n " )
805802 elif langext == "v" : #6/25/21
806- fbuild .write ("cp " + docker_rel_prefix + " src/concore.v .\n " )
803+ fbuild .write ("cp ../ src/concore.v .\n " )
807804 if langext == "m" :
808- fbuild .write ("cp " + docker_rel_prefix + " src/concore_*.m .\n " )
809- fbuild .write ("cp " + docker_rel_prefix + " src/import_concore.m .\n " )
805+ fbuild .write ("cp ../ src/concore_*.m .\n " )
806+ fbuild .write ("cp ../ src/import_concore.m .\n " )
810807 if langext == "sh" : #5/27/21
811808 fbuild .write ("chmod u+x " + sourcecode + "\n " )
812- fbuild .write ("cp " + docker_rel_prefix + " src/"+ dockername + ".iport concore.iport\n " )
813- fbuild .write ("cp " + docker_rel_prefix + " src/"+ dockername + ".oport concore.oport\n " )
809+ fbuild .write ("cp ../ src/" + dockername + ".iport concore.iport\n " )
810+ fbuild .write ("cp ../ src/" + dockername + ".oport concore.oport\n " )
814811 #include data files in here if they exist
815812 if os .path .isdir (sourcedir + "/" + dockername + ".dir" ):
816- fbuild .write ("cp -r " + docker_rel_prefix + " src/"+ dockername + ".dir/* .\n " )
813+ fbuild .write ("cp -r ../ src/" + dockername + ".dir/* .\n " )
817814 fbuild .write (DOCKEREXE + " build -t docker-" + dockername + " .\n " )
818- fbuild .write ("cd " + docker_rel_prefix + " \n " )
815+ fbuild .write ("cd .. \n " )
819816
820817 fbuild .close ()
821818
0 commit comments