Changes

From Genome Analysis Wiki
Jump to navigationJump to search
39,180 bytes added ,  21:00, 14 July 2021
Line 1: Line 1:  
= Introduction =
 
= Introduction =
   −
GNU Make is often thought of as a tool for managing the compilation of large C programs. This is true, but it's potential is not limited to this!   
+
GNU Make is often thought of as a tool for managing the compilation of large C programs. This is true, but its potential is not limited to this!   
    
At its core, it is a generic pipelining framework that is aware of dependencies and can run steps in parallel.  
 
At its core, it is a generic pipelining framework that is aware of dependencies and can run steps in parallel.  
   −
Statistical genetics analyses often requires multitudinous steps to prepare the data, run computationally expensive analyses and then collating the data.  
+
Statistical genetics analyses (or any big data analyses in general) often requires multiple steps to prepare the data, running computationally expensive analyses, and then collating the data.  
   −
Make can potentially save you lots of time and hair pulling especially when your supervisor asks for ALL the analyses again but this time only with rare variants.
+
Make can instead of simply compiling codes, may also execute the steps in your analyses.
 +
 
 +
Make allows you to redo part of your analyses and rerun only the parts which are affected by the change.
 +
 
 +
Using Make potentially save you lots of time and hair pulling especially when your supervisor asks for ALL the analyses again but this time only with rare variants.
 +
 
 +
Using a script to generate a make file allows you to document the steps required in the analysis too and makes it easier in the future when the analysis is revisited.
 +
 
 +
= Basic Idea =
 +
 
 +
  The general format of a make file is as follows:
 +
 
 +
  <target> : <dependency> ...
 +
      <command 1>
 +
      <command 2>
 +
 
 +
 
 +
  The target is usually a small file that is created using "touch <target>". 
 +
  It can be considered as a text and in this case, it is referred via "make <target>"
 +
 
 +
  The dependency(ies) are files.
 +
 +
  The commands are single line commands in linux. 
 +
  The last command is the touch command usually. 
 +
  This allows the creation of a file to signify that the prior commands were executed successfully.
 +
 
 +
 
 +
  A perl script is written to generate the make file,  in this script, you may document the analyses and
 +
  allow options to customize the variables in your analyses.
 +
 
 +
  Once the make file is generated, you can run it with make using the -j option for parallelization.
 +
 
 +
  If a part of the analyses has to be re performed, simply delete the relevant target file, make will
 +
  rerun the analyses and redo steps that occur after that particular step. 
 +
 
 +
  Some other useful options in Make are -k for running the analyses as far as possible without
 +
  terminating the entire pipeline and -t for generating all the target files chronologically.
 +
 
 +
  For commands that involves a series of pipes, you can use "set pipefail" in a bash environment
 +
  to ensure that the an error is returned if any stage of the pipe fails.  If this is not done, the return
 +
  code of the last process in the pipe will be returned and Make will think that this series of commands
 +
  has completed successfully.
    
= Example =
 
= Example =
Line 236: Line 277:  
</source>
 
</source>
   −
= Solution =
     −
Makefiles are more than just tools for compiling programs. The dependency structure of a makefile
+
= Generated Makefile =
allows one to run and rerun an analysis pipeline in a convenient fashion.
+
 
 +
<source lang=css>
 +
.DELETE_ON_ERROR:
 +
 
 +
all: /net/fantasia/home/atks/makefile_tutorial/1.OK /net/fantasia/home/atks/makefile_tutorial/2.OK /net/fantasia/home/atks/makefile_tutorial/3.OK /net/fantasia/home/atks/makefile_tutorial/4.OK /net/fantasia/home/atks/makefile_tutorial/5.OK /net/fantasia/home/atks/makefile_tutorial/6.OK /net/fantasia/home/atks/makefile_tutorial/7.OK /net/fantasia/home/atks/makefile_tutorial/8.OK /net/fantasia/home/atks/makefile_tutorial/9.OK /net/fantasia/home/atks/makefile_tutorial/10.OK /net/fantasia/home/atks/makefile_tutorial/11.OK /net/fantasia/home/atks/makefile_tutorial/12.OK /net/fantasia/home/atks/makefile_tutorial/13.OK /net/fantasia/home/atks/makefile_tutorial/14.OK /net/fantasia/home/atks/makefile_tutorial/15.OK /net/fantasia/home/atks/makefile_tutorial/16.OK /net/fantasia/home/atks/makefile_tutorial/17.OK /net/fantasia/home/atks/makefile_tutorial/18.OK /net/fantasia/home/atks/makefile_tutorial/19.OK /net/fantasia/home/atks/makefile_tutorial/20.OK /net/fantasia/home/atks/makefile_tutorial/21.OK /net/fantasia/home/atks/makefile_tutorial/22.OK /net/fantasia/home/atks/makefile_tutorial/23.OK /net/fantasia/home/atks/makefile_tutorial/24.OK /net/fantasia/home/atks/makefile_tutorial/25.OK /net/fantasia/home/atks/makefile_tutorial/26.OK /net/fantasia/home/atks/makefile_tutorial/27.OK /net/fantasia/home/atks/makefile_tutorial/28.OK /net/fantasia/home/atks/makefile_tutorial/29.OK /net/fantasia/home/atks/makefile_tutorial/30.OK /net/fantasia/home/atks/makefile_tutorial/31.OK /net/fantasia/home/atks/makefile_tutorial/32.OK /net/fantasia/home/atks/makefile_tutorial/33.OK /net/fantasia/home/atks/makefile_tutorial/34.OK /net/fantasia/home/atks/makefile_tutorial/35.OK /net/fantasia/home/atks/makefile_tutorial/36.OK /net/fantasia/home/atks/makefile_tutorial/37.OK /net/fantasia/home/atks/makefile_tutorial/38.OK /net/fantasia/home/atks/makefile_tutorial/39.OK /net/fantasia/home/atks/makefile_tutorial/40.OK /net/fantasia/home/atks/makefile_tutorial/41.OK /net/fantasia/home/atks/makefile_tutorial/42.OK /net/fantasia/home/atks/makefile_tutorial/43.OK /net/fantasia/home/atks/makefile_tutorial/44.OK /net/fantasia/home/atks/makefile_tutorial/45.OK /net/fantasia/home/atks/makefile_tutorial/46.OK /net/fantasia/home/atks/makefile_tutorial/47.OK /net/fantasia/home/atks/makefile_tutorial/48.OK /net/fantasia/home/atks/makefile_tutorial/49.OK /net/fantasia/home/atks/makefile_tutorial/50.OK /net/fantasia/home/atks/makefile_tutorial/51.OK /net/fantasia/home/atks/makefile_tutorial/52.OK /net/fantasia/home/atks/makefile_tutorial/53.OK /net/fantasia/home/atks/makefile_tutorial/54.OK /net/fantasia/home/atks/makefile_tutorial/55.OK /net/fantasia/home/atks/makefile_tutorial/56.OK /net/fantasia/home/atks/makefile_tutorial/57.OK /net/fantasia/home/atks/makefile_tutorial/58.OK /net/fantasia/home/atks/makefile_tutorial/59.OK /net/fantasia/home/atks/makefile_tutorial/60.OK /net/fantasia/home/atks/makefile_tutorial/61.OK /net/fantasia/home/atks/makefile_tutorial/62.OK /net/fantasia/home/atks/makefile_tutorial/63.OK /net/fantasia/home/atks/makefile_tutorial/64.OK /net/fantasia/home/atks/makefile_tutorial/65.OK /net/fantasia/home/atks/makefile_tutorial/66.OK /net/fantasia/home/atks/makefile_tutorial/67.OK /net/fantasia/home/atks/makefile_tutorial/68.OK /net/fantasia/home/atks/makefile_tutorial/69.OK /net/fantasia/home/atks/makefile_tutorial/70.OK /net/fantasia/home/atks/makefile_tutorial/71.OK /net/fantasia/home/atks/makefile_tutorial/72.OK /net/fantasia/home/atks/makefile_tutorial/73.OK /net/fantasia/home/atks/makefile_tutorial/74.OK /net/fantasia/home/atks/makefile_tutorial/75.OK /net/fantasia/home/atks/makefile_tutorial/76.OK /net/fantasia/home/atks/makefile_tutorial/77.OK /net/fantasia/home/atks/makefile_tutorial/78.OK /net/fantasia/home/atks/makefile_tutorial/79.OK /net/fantasia/home/atks/makefile_tutorial/80.OK /net/fantasia/home/atks/makefile_tutorial/81.OK /net/fantasia/home/atks/makefile_tutorial/82.OK /net/fantasia/home/atks/makefile_tutorial/83.OK /net/fantasia/home/atks/makefile_tutorial/84.OK /net/fantasia/home/atks/makefile_tutorial/85.OK /net/fantasia/home/atks/makefile_tutorial/86.OK /net/fantasia/home/atks/makefile_tutorial/87.OK /net/fantasia/home/atks/makefile_tutorial/88.OK /net/fantasia/home/atks/makefile_tutorial/89.OK /net/fantasia/home/atks/makefile_tutorial/90.OK /net/fantasia/home/atks/makefile_tutorial/91.OK /net/fantasia/home/atks/makefile_tutorial/92.OK /net/fantasia/home/atks/makefile_tutorial/93.OK /net/fantasia/home/atks/makefile_tutorial/94.OK /net/fantasia/home/atks/makefile_tutorial/95.OK /net/fantasia/home/atks/makefile_tutorial/96.OK /net/fantasia/home/atks/makefile_tutorial/97.OK /net/fantasia/home/atks/makefile_tutorial/98.OK /net/fantasia/home/atks/makefile_tutorial/99.OK /net/fantasia/home/atks/makefile_tutorial/100.OK /net/fantasia/home/atks/makefile_tutorial/all.log.OK /net/fantasia/home/atks/makefile_tutorial/cleaned.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/1.OK:
 +
srun echo 1 > /net/fantasia/home/atks/makefile_tutorial/1.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/1.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/2.OK:
 +
srun echo 2 > /net/fantasia/home/atks/makefile_tutorial/2.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/2.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/3.OK:
 +
srun echo 3 > /net/fantasia/home/atks/makefile_tutorial/3.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/3.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/4.OK:
 +
srun echo 4 > /net/fantasia/home/atks/makefile_tutorial/4.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/4.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/5.OK:
 +
srun echo 5 > /net/fantasia/home/atks/makefile_tutorial/5.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/5.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/6.OK:
 +
srun echo 6 > /net/fantasia/home/atks/makefile_tutorial/6.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/6.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/7.OK:
 +
srun echo 7 > /net/fantasia/home/atks/makefile_tutorial/7.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/7.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/8.OK:
 +
srun echo 8 > /net/fantasia/home/atks/makefile_tutorial/8.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/8.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/9.OK:
 +
srun echo 9 > /net/fantasia/home/atks/makefile_tutorial/9.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/9.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/10.OK:
 +
srun echo 10 > /net/fantasia/home/atks/makefile_tutorial/10.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/10.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/11.OK:
 +
srun echo 11 > /net/fantasia/home/atks/makefile_tutorial/11.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/11.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/12.OK:
 +
srun echo 12 > /net/fantasia/home/atks/makefile_tutorial/12.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/12.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/13.OK:
 +
srun echo 13 > /net/fantasia/home/atks/makefile_tutorial/13.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/13.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/14.OK:
 +
srun echo 14 > /net/fantasia/home/atks/makefile_tutorial/14.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/14.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/15.OK:
 +
srun echo 15 > /net/fantasia/home/atks/makefile_tutorial/15.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/15.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/16.OK:
 +
srun echo 16 > /net/fantasia/home/atks/makefile_tutorial/16.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/16.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/17.OK:
 +
srun echo 17 > /net/fantasia/home/atks/makefile_tutorial/17.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/17.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/18.OK:
 +
srun echo 18 > /net/fantasia/home/atks/makefile_tutorial/18.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/18.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/19.OK:
 +
srun echo 19 > /net/fantasia/home/atks/makefile_tutorial/19.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/19.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/20.OK:
 +
srun echo 20 > /net/fantasia/home/atks/makefile_tutorial/20.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/20.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/21.OK:
 +
srun echo 21 > /net/fantasia/home/atks/makefile_tutorial/21.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/21.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/22.OK:
 +
srun echo 22 > /net/fantasia/home/atks/makefile_tutorial/22.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/22.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/23.OK:
 +
srun echo 23 > /net/fantasia/home/atks/makefile_tutorial/23.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/23.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/24.OK:
 +
srun echo 24 > /net/fantasia/home/atks/makefile_tutorial/24.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/24.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/25.OK:
 +
srun echo 25 > /net/fantasia/home/atks/makefile_tutorial/25.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/25.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/26.OK:
 +
srun echo 26 > /net/fantasia/home/atks/makefile_tutorial/26.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/26.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/27.OK:
 +
srun echo 27 > /net/fantasia/home/atks/makefile_tutorial/27.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/27.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/28.OK:
 +
srun echo 28 > /net/fantasia/home/atks/makefile_tutorial/28.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/28.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/29.OK:
 +
srun echo 29 > /net/fantasia/home/atks/makefile_tutorial/29.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/29.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/30.OK:
 +
srun echo 30 > /net/fantasia/home/atks/makefile_tutorial/30.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/30.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/31.OK:
 +
srun echo 31 > /net/fantasia/home/atks/makefile_tutorial/31.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/31.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/32.OK:
 +
srun echo 32 > /net/fantasia/home/atks/makefile_tutorial/32.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/32.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/33.OK:
 +
srun echo 33 > /net/fantasia/home/atks/makefile_tutorial/33.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/33.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/34.OK:
 +
srun echo 34 > /net/fantasia/home/atks/makefile_tutorial/34.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/34.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/35.OK:
 +
srun echo 35 > /net/fantasia/home/atks/makefile_tutorial/35.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/35.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/36.OK:
 +
srun echo 36 > /net/fantasia/home/atks/makefile_tutorial/36.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/36.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/37.OK:
 +
srun echo 37 > /net/fantasia/home/atks/makefile_tutorial/37.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/37.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/38.OK:
 +
srun echo 38 > /net/fantasia/home/atks/makefile_tutorial/38.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/38.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/39.OK:
 +
srun echo 39 > /net/fantasia/home/atks/makefile_tutorial/39.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/39.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/40.OK:
 +
srun echo 40 > /net/fantasia/home/atks/makefile_tutorial/40.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/40.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/41.OK:
 +
srun echo 41 > /net/fantasia/home/atks/makefile_tutorial/41.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/41.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/42.OK:
 +
srun echo 42 > /net/fantasia/home/atks/makefile_tutorial/42.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/42.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/43.OK:
 +
srun echo 43 > /net/fantasia/home/atks/makefile_tutorial/43.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/43.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/44.OK:
 +
srun echo 44 > /net/fantasia/home/atks/makefile_tutorial/44.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/44.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/45.OK:
 +
srun echo 45 > /net/fantasia/home/atks/makefile_tutorial/45.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/45.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/46.OK:
 +
srun echo 46 > /net/fantasia/home/atks/makefile_tutorial/46.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/46.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/47.OK:
 +
srun echo 47 > /net/fantasia/home/atks/makefile_tutorial/47.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/47.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/48.OK:
 +
srun echo 48 > /net/fantasia/home/atks/makefile_tutorial/48.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/48.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/49.OK:
 +
srun echo 49 > /net/fantasia/home/atks/makefile_tutorial/49.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/49.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/50.OK:
 +
srun echo 50 > /net/fantasia/home/atks/makefile_tutorial/50.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/50.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/51.OK:
 +
srun echo 51 > /net/fantasia/home/atks/makefile_tutorial/51.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/51.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/52.OK:
 +
srun echo 52 > /net/fantasia/home/atks/makefile_tutorial/52.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/52.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/53.OK:
 +
srun echo 53 > /net/fantasia/home/atks/makefile_tutorial/53.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/53.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/54.OK:
 +
srun echo 54 > /net/fantasia/home/atks/makefile_tutorial/54.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/54.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/55.OK:
 +
srun echo 55 > /net/fantasia/home/atks/makefile_tutorial/55.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/55.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/56.OK:
 +
srun echo 56 > /net/fantasia/home/atks/makefile_tutorial/56.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/56.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/57.OK:
 +
srun echo 57 > /net/fantasia/home/atks/makefile_tutorial/57.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/57.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/58.OK:
 +
srun echo 58 > /net/fantasia/home/atks/makefile_tutorial/58.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/58.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/59.OK:
 +
srun echo 59 > /net/fantasia/home/atks/makefile_tutorial/59.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/59.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/60.OK:
 +
srun echo 60 > /net/fantasia/home/atks/makefile_tutorial/60.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/60.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/61.OK:
 +
srun echo 61 > /net/fantasia/home/atks/makefile_tutorial/61.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/61.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/62.OK:
 +
srun echo 62 > /net/fantasia/home/atks/makefile_tutorial/62.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/62.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/63.OK:
 +
srun echo 63 > /net/fantasia/home/atks/makefile_tutorial/63.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/63.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/64.OK:
 +
srun echo 64 > /net/fantasia/home/atks/makefile_tutorial/64.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/64.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/65.OK:
 +
srun echo 65 > /net/fantasia/home/atks/makefile_tutorial/65.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/65.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/66.OK:
 +
srun echo 66 > /net/fantasia/home/atks/makefile_tutorial/66.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/66.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/67.OK:
 +
srun echo 67 > /net/fantasia/home/atks/makefile_tutorial/67.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/67.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/68.OK:
 +
srun echo 68 > /net/fantasia/home/atks/makefile_tutorial/68.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/68.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/69.OK:
 +
srun echo 69 > /net/fantasia/home/atks/makefile_tutorial/69.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/69.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/70.OK:
 +
srun echo 70 > /net/fantasia/home/atks/makefile_tutorial/70.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/70.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/71.OK:
 +
srun echo 71 > /net/fantasia/home/atks/makefile_tutorial/71.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/71.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/72.OK:
 +
srun echo 72 > /net/fantasia/home/atks/makefile_tutorial/72.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/72.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/73.OK:
 +
srun echo 73 > /net/fantasia/home/atks/makefile_tutorial/73.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/73.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/74.OK:
 +
srun echo 74 > /net/fantasia/home/atks/makefile_tutorial/74.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/74.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/75.OK:
 +
srun echo 75 > /net/fantasia/home/atks/makefile_tutorial/75.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/75.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/76.OK:
 +
srun echo 76 > /net/fantasia/home/atks/makefile_tutorial/76.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/76.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/77.OK:
 +
srun echo 77 > /net/fantasia/home/atks/makefile_tutorial/77.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/77.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/78.OK:
 +
srun echo 78 > /net/fantasia/home/atks/makefile_tutorial/78.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/78.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/79.OK:
 +
srun echo 79 > /net/fantasia/home/atks/makefile_tutorial/79.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/79.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/80.OK:
 +
srun echo 80 > /net/fantasia/home/atks/makefile_tutorial/80.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/80.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/81.OK:
 +
srun echo 81 > /net/fantasia/home/atks/makefile_tutorial/81.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/81.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/82.OK:
 +
srun echo 82 > /net/fantasia/home/atks/makefile_tutorial/82.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/82.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/83.OK:
 +
srun echo 83 > /net/fantasia/home/atks/makefile_tutorial/83.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/83.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/84.OK:
 +
srun echo 84 > /net/fantasia/home/atks/makefile_tutorial/84.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/84.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/85.OK:
 +
srun echo 85 > /net/fantasia/home/atks/makefile_tutorial/85.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/85.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/86.OK:
 +
srun echo 86 > /net/fantasia/home/atks/makefile_tutorial/86.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/86.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/87.OK:
 +
srun echo 87 > /net/fantasia/home/atks/makefile_tutorial/87.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/87.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/88.OK:
 +
srun echo 88 > /net/fantasia/home/atks/makefile_tutorial/88.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/88.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/89.OK:
 +
srun echo 89 > /net/fantasia/home/atks/makefile_tutorial/89.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/89.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/90.OK:
 +
srun echo 90 > /net/fantasia/home/atks/makefile_tutorial/90.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/90.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/91.OK:
 +
srun echo 91 > /net/fantasia/home/atks/makefile_tutorial/91.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/91.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/92.OK:
 +
srun echo 92 > /net/fantasia/home/atks/makefile_tutorial/92.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/92.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/93.OK:
 +
srun echo 93 > /net/fantasia/home/atks/makefile_tutorial/93.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/93.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/94.OK:
 +
srun echo 94 > /net/fantasia/home/atks/makefile_tutorial/94.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/94.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/95.OK:
 +
srun echo 95 > /net/fantasia/home/atks/makefile_tutorial/95.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/95.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/96.OK:
 +
srun echo 96 > /net/fantasia/home/atks/makefile_tutorial/96.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/96.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/97.OK:
 +
srun echo 97 > /net/fantasia/home/atks/makefile_tutorial/97.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/97.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/98.OK:
 +
srun echo 98 > /net/fantasia/home/atks/makefile_tutorial/98.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/98.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/99.OK:
 +
srun echo 99 > /net/fantasia/home/atks/makefile_tutorial/99.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/99.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/100.OK:
 +
srun echo 100 > /net/fantasia/home/atks/makefile_tutorial/100.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/100.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/all.log.OK:  /net/fantasia/home/atks/makefile_tutorial/1.OK /net/fantasia/home/atks/makefile_tutorial/2.OK /net/fantasia/home/atks/makefile_tutorial/3.OK /net/fantasia/home/atks/makefile_tutorial/4.OK /net/fantasia/home/atks/makefile_tutorial/5.OK /net/fantasia/home/atks/makefile_tutorial/6.OK /net/fantasia/home/atks/makefile_tutorial/7.OK /net/fantasia/home/atks/makefile_tutorial/8.OK /net/fantasia/home/atks/makefile_tutorial/9.OK /net/fantasia/home/atks/makefile_tutorial/10.OK /net/fantasia/home/atks/makefile_tutorial/11.OK /net/fantasia/home/atks/makefile_tutorial/12.OK /net/fantasia/home/atks/makefile_tutorial/13.OK /net/fantasia/home/atks/makefile_tutorial/14.OK /net/fantasia/home/atks/makefile_tutorial/15.OK /net/fantasia/home/atks/makefile_tutorial/16.OK /net/fantasia/home/atks/makefile_tutorial/17.OK /net/fantasia/home/atks/makefile_tutorial/18.OK /net/fantasia/home/atks/makefile_tutorial/19.OK /net/fantasia/home/atks/makefile_tutorial/20.OK /net/fantasia/home/atks/makefile_tutorial/21.OK /net/fantasia/home/atks/makefile_tutorial/22.OK /net/fantasia/home/atks/makefile_tutorial/23.OK /net/fantasia/home/atks/makefile_tutorial/24.OK /net/fantasia/home/atks/makefile_tutorial/25.OK /net/fantasia/home/atks/makefile_tutorial/26.OK /net/fantasia/home/atks/makefile_tutorial/27.OK /net/fantasia/home/atks/makefile_tutorial/28.OK /net/fantasia/home/atks/makefile_tutorial/29.OK /net/fantasia/home/atks/makefile_tutorial/30.OK /net/fantasia/home/atks/makefile_tutorial/31.OK /net/fantasia/home/atks/makefile_tutorial/32.OK /net/fantasia/home/atks/makefile_tutorial/33.OK /net/fantasia/home/atks/makefile_tutorial/34.OK /net/fantasia/home/atks/makefile_tutorial/35.OK /net/fantasia/home/atks/makefile_tutorial/36.OK /net/fantasia/home/atks/makefile_tutorial/37.OK /net/fantasia/home/atks/makefile_tutorial/38.OK /net/fantasia/home/atks/makefile_tutorial/39.OK /net/fantasia/home/atks/makefile_tutorial/40.OK /net/fantasia/home/atks/makefile_tutorial/41.OK /net/fantasia/home/atks/makefile_tutorial/42.OK /net/fantasia/home/atks/makefile_tutorial/43.OK /net/fantasia/home/atks/makefile_tutorial/44.OK /net/fantasia/home/atks/makefile_tutorial/45.OK /net/fantasia/home/atks/makefile_tutorial/46.OK /net/fantasia/home/atks/makefile_tutorial/47.OK /net/fantasia/home/atks/makefile_tutorial/48.OK /net/fantasia/home/atks/makefile_tutorial/49.OK /net/fantasia/home/atks/makefile_tutorial/50.OK /net/fantasia/home/atks/makefile_tutorial/51.OK /net/fantasia/home/atks/makefile_tutorial/52.OK /net/fantasia/home/atks/makefile_tutorial/53.OK /net/fantasia/home/atks/makefile_tutorial/54.OK /net/fantasia/home/atks/makefile_tutorial/55.OK /net/fantasia/home/atks/makefile_tutorial/56.OK /net/fantasia/home/atks/makefile_tutorial/57.OK /net/fantasia/home/atks/makefile_tutorial/58.OK /net/fantasia/home/atks/makefile_tutorial/59.OK /net/fantasia/home/atks/makefile_tutorial/60.OK /net/fantasia/home/atks/makefile_tutorial/61.OK /net/fantasia/home/atks/makefile_tutorial/62.OK /net/fantasia/home/atks/makefile_tutorial/63.OK /net/fantasia/home/atks/makefile_tutorial/64.OK /net/fantasia/home/atks/makefile_tutorial/65.OK /net/fantasia/home/atks/makefile_tutorial/66.OK /net/fantasia/home/atks/makefile_tutorial/67.OK /net/fantasia/home/atks/makefile_tutorial/68.OK /net/fantasia/home/atks/makefile_tutorial/69.OK /net/fantasia/home/atks/makefile_tutorial/70.OK /net/fantasia/home/atks/makefile_tutorial/71.OK /net/fantasia/home/atks/makefile_tutorial/72.OK /net/fantasia/home/atks/makefile_tutorial/73.OK /net/fantasia/home/atks/makefile_tutorial/74.OK /net/fantasia/home/atks/makefile_tutorial/75.OK /net/fantasia/home/atks/makefile_tutorial/76.OK /net/fantasia/home/atks/makefile_tutorial/77.OK /net/fantasia/home/atks/makefile_tutorial/78.OK /net/fantasia/home/atks/makefile_tutorial/79.OK /net/fantasia/home/atks/makefile_tutorial/80.OK /net/fantasia/home/atks/makefile_tutorial/81.OK /net/fantasia/home/atks/makefile_tutorial/82.OK /net/fantasia/home/atks/makefile_tutorial/83.OK /net/fantasia/home/atks/makefile_tutorial/84.OK /net/fantasia/home/atks/makefile_tutorial/85.OK /net/fantasia/home/atks/makefile_tutorial/86.OK /net/fantasia/home/atks/makefile_tutorial/87.OK /net/fantasia/home/atks/makefile_tutorial/88.OK /net/fantasia/home/atks/makefile_tutorial/89.OK /net/fantasia/home/atks/makefile_tutorial/90.OK /net/fantasia/home/atks/makefile_tutorial/91.OK /net/fantasia/home/atks/makefile_tutorial/92.OK /net/fantasia/home/atks/makefile_tutorial/93.OK /net/fantasia/home/atks/makefile_tutorial/94.OK /net/fantasia/home/atks/makefile_tutorial/95.OK /net/fantasia/home/atks/makefile_tutorial/96.OK /net/fantasia/home/atks/makefile_tutorial/97.OK /net/fantasia/home/atks/makefile_tutorial/98.OK /net/fantasia/home/atks/makefile_tutorial/99.OK /net/fantasia/home/atks/makefile_tutorial/100.OK
 +
srun cat  /net/fantasia/home/atks/makefile_tutorial/1.log /net/fantasia/home/atks/makefile_tutorial/2.log /net/fantasia/home/atks/makefile_tutorial/3.log /net/fantasia/home/atks/makefile_tutorial/4.log /net/fantasia/home/atks/makefile_tutorial/5.log /net/fantasia/home/atks/makefile_tutorial/6.log /net/fantasia/home/atks/makefile_tutorial/7.log /net/fantasia/home/atks/makefile_tutorial/8.log /net/fantasia/home/atks/makefile_tutorial/9.log /net/fantasia/home/atks/makefile_tutorial/10.log /net/fantasia/home/atks/makefile_tutorial/11.log /net/fantasia/home/atks/makefile_tutorial/12.log /net/fantasia/home/atks/makefile_tutorial/13.log /net/fantasia/home/atks/makefile_tutorial/14.log /net/fantasia/home/atks/makefile_tutorial/15.log /net/fantasia/home/atks/makefile_tutorial/16.log /net/fantasia/home/atks/makefile_tutorial/17.log /net/fantasia/home/atks/makefile_tutorial/18.log /net/fantasia/home/atks/makefile_tutorial/19.log /net/fantasia/home/atks/makefile_tutorial/20.log /net/fantasia/home/atks/makefile_tutorial/21.log /net/fantasia/home/atks/makefile_tutorial/22.log /net/fantasia/home/atks/makefile_tutorial/23.log /net/fantasia/home/atks/makefile_tutorial/24.log /net/fantasia/home/atks/makefile_tutorial/25.log /net/fantasia/home/atks/makefile_tutorial/26.log /net/fantasia/home/atks/makefile_tutorial/27.log /net/fantasia/home/atks/makefile_tutorial/28.log /net/fantasia/home/atks/makefile_tutorial/29.log /net/fantasia/home/atks/makefile_tutorial/30.log /net/fantasia/home/atks/makefile_tutorial/31.log /net/fantasia/home/atks/makefile_tutorial/32.log /net/fantasia/home/atks/makefile_tutorial/33.log /net/fantasia/home/atks/makefile_tutorial/34.log /net/fantasia/home/atks/makefile_tutorial/35.log /net/fantasia/home/atks/makefile_tutorial/36.log /net/fantasia/home/atks/makefile_tutorial/37.log /net/fantasia/home/atks/makefile_tutorial/38.log /net/fantasia/home/atks/makefile_tutorial/39.log /net/fantasia/home/atks/makefile_tutorial/40.log /net/fantasia/home/atks/makefile_tutorial/41.log /net/fantasia/home/atks/makefile_tutorial/42.log /net/fantasia/home/atks/makefile_tutorial/43.log /net/fantasia/home/atks/makefile_tutorial/44.log /net/fantasia/home/atks/makefile_tutorial/45.log /net/fantasia/home/atks/makefile_tutorial/46.log /net/fantasia/home/atks/makefile_tutorial/47.log /net/fantasia/home/atks/makefile_tutorial/48.log /net/fantasia/home/atks/makefile_tutorial/49.log /net/fantasia/home/atks/makefile_tutorial/50.log /net/fantasia/home/atks/makefile_tutorial/51.log /net/fantasia/home/atks/makefile_tutorial/52.log /net/fantasia/home/atks/makefile_tutorial/53.log /net/fantasia/home/atks/makefile_tutorial/54.log /net/fantasia/home/atks/makefile_tutorial/55.log /net/fantasia/home/atks/makefile_tutorial/56.log /net/fantasia/home/atks/makefile_tutorial/57.log /net/fantasia/home/atks/makefile_tutorial/58.log /net/fantasia/home/atks/makefile_tutorial/59.log /net/fantasia/home/atks/makefile_tutorial/60.log /net/fantasia/home/atks/makefile_tutorial/61.log /net/fantasia/home/atks/makefile_tutorial/62.log /net/fantasia/home/atks/makefile_tutorial/63.log /net/fantasia/home/atks/makefile_tutorial/64.log /net/fantasia/home/atks/makefile_tutorial/65.log /net/fantasia/home/atks/makefile_tutorial/66.log /net/fantasia/home/atks/makefile_tutorial/67.log /net/fantasia/home/atks/makefile_tutorial/68.log /net/fantasia/home/atks/makefile_tutorial/69.log /net/fantasia/home/atks/makefile_tutorial/70.log /net/fantasia/home/atks/makefile_tutorial/71.log /net/fantasia/home/atks/makefile_tutorial/72.log /net/fantasia/home/atks/makefile_tutorial/73.log /net/fantasia/home/atks/makefile_tutorial/74.log /net/fantasia/home/atks/makefile_tutorial/75.log /net/fantasia/home/atks/makefile_tutorial/76.log /net/fantasia/home/atks/makefile_tutorial/77.log /net/fantasia/home/atks/makefile_tutorial/78.log /net/fantasia/home/atks/makefile_tutorial/79.log /net/fantasia/home/atks/makefile_tutorial/80.log /net/fantasia/home/atks/makefile_tutorial/81.log /net/fantasia/home/atks/makefile_tutorial/82.log /net/fantasia/home/atks/makefile_tutorial/83.log /net/fantasia/home/atks/makefile_tutorial/84.log /net/fantasia/home/atks/makefile_tutorial/85.log /net/fantasia/home/atks/makefile_tutorial/86.log /net/fantasia/home/atks/makefile_tutorial/87.log /net/fantasia/home/atks/makefile_tutorial/88.log /net/fantasia/home/atks/makefile_tutorial/89.log /net/fantasia/home/atks/makefile_tutorial/90.log /net/fantasia/home/atks/makefile_tutorial/91.log /net/fantasia/home/atks/makefile_tutorial/92.log /net/fantasia/home/atks/makefile_tutorial/93.log /net/fantasia/home/atks/makefile_tutorial/94.log /net/fantasia/home/atks/makefile_tutorial/95.log /net/fantasia/home/atks/makefile_tutorial/96.log /net/fantasia/home/atks/makefile_tutorial/97.log /net/fantasia/home/atks/makefile_tutorial/98.log /net/fantasia/home/atks/makefile_tutorial/99.log /net/fantasia/home/atks/makefile_tutorial/100.log > /net/fantasia/home/atks/makefile_tutorial/all.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/all.log.OK
 +
 
 +
/net/fantasia/home/atks/makefile_tutorial/cleaned.OK: /net/fantasia/home/atks/makefile_tutorial/all.log.OK
 +
srun rm  /net/fantasia/home/atks/makefile_tutorial/1.log /net/fantasia/home/atks/makefile_tutorial/2.log /net/fantasia/home/atks/makefile_tutorial/3.log /net/fantasia/home/atks/makefile_tutorial/4.log /net/fantasia/home/atks/makefile_tutorial/5.log /net/fantasia/home/atks/makefile_tutorial/6.log /net/fantasia/home/atks/makefile_tutorial/7.log /net/fantasia/home/atks/makefile_tutorial/8.log /net/fantasia/home/atks/makefile_tutorial/9.log /net/fantasia/home/atks/makefile_tutorial/10.log /net/fantasia/home/atks/makefile_tutorial/11.log /net/fantasia/home/atks/makefile_tutorial/12.log /net/fantasia/home/atks/makefile_tutorial/13.log /net/fantasia/home/atks/makefile_tutorial/14.log /net/fantasia/home/atks/makefile_tutorial/15.log /net/fantasia/home/atks/makefile_tutorial/16.log /net/fantasia/home/atks/makefile_tutorial/17.log /net/fantasia/home/atks/makefile_tutorial/18.log /net/fantasia/home/atks/makefile_tutorial/19.log /net/fantasia/home/atks/makefile_tutorial/20.log /net/fantasia/home/atks/makefile_tutorial/21.log /net/fantasia/home/atks/makefile_tutorial/22.log /net/fantasia/home/atks/makefile_tutorial/23.log /net/fantasia/home/atks/makefile_tutorial/24.log /net/fantasia/home/atks/makefile_tutorial/25.log /net/fantasia/home/atks/makefile_tutorial/26.log /net/fantasia/home/atks/makefile_tutorial/27.log /net/fantasia/home/atks/makefile_tutorial/28.log /net/fantasia/home/atks/makefile_tutorial/29.log /net/fantasia/home/atks/makefile_tutorial/30.log /net/fantasia/home/atks/makefile_tutorial/31.log /net/fantasia/home/atks/makefile_tutorial/32.log /net/fantasia/home/atks/makefile_tutorial/33.log /net/fantasia/home/atks/makefile_tutorial/34.log /net/fantasia/home/atks/makefile_tutorial/35.log /net/fantasia/home/atks/makefile_tutorial/36.log /net/fantasia/home/atks/makefile_tutorial/37.log /net/fantasia/home/atks/makefile_tutorial/38.log /net/fantasia/home/atks/makefile_tutorial/39.log /net/fantasia/home/atks/makefile_tutorial/40.log /net/fantasia/home/atks/makefile_tutorial/41.log /net/fantasia/home/atks/makefile_tutorial/42.log /net/fantasia/home/atks/makefile_tutorial/43.log /net/fantasia/home/atks/makefile_tutorial/44.log /net/fantasia/home/atks/makefile_tutorial/45.log /net/fantasia/home/atks/makefile_tutorial/46.log /net/fantasia/home/atks/makefile_tutorial/47.log /net/fantasia/home/atks/makefile_tutorial/48.log /net/fantasia/home/atks/makefile_tutorial/49.log /net/fantasia/home/atks/makefile_tutorial/50.log /net/fantasia/home/atks/makefile_tutorial/51.log /net/fantasia/home/atks/makefile_tutorial/52.log /net/fantasia/home/atks/makefile_tutorial/53.log /net/fantasia/home/atks/makefile_tutorial/54.log /net/fantasia/home/atks/makefile_tutorial/55.log /net/fantasia/home/atks/makefile_tutorial/56.log /net/fantasia/home/atks/makefile_tutorial/57.log /net/fantasia/home/atks/makefile_tutorial/58.log /net/fantasia/home/atks/makefile_tutorial/59.log /net/fantasia/home/atks/makefile_tutorial/60.log /net/fantasia/home/atks/makefile_tutorial/61.log /net/fantasia/home/atks/makefile_tutorial/62.log /net/fantasia/home/atks/makefile_tutorial/63.log /net/fantasia/home/atks/makefile_tutorial/64.log /net/fantasia/home/atks/makefile_tutorial/65.log /net/fantasia/home/atks/makefile_tutorial/66.log /net/fantasia/home/atks/makefile_tutorial/67.log /net/fantasia/home/atks/makefile_tutorial/68.log /net/fantasia/home/atks/makefile_tutorial/69.log /net/fantasia/home/atks/makefile_tutorial/70.log /net/fantasia/home/atks/makefile_tutorial/71.log /net/fantasia/home/atks/makefile_tutorial/72.log /net/fantasia/home/atks/makefile_tutorial/73.log /net/fantasia/home/atks/makefile_tutorial/74.log /net/fantasia/home/atks/makefile_tutorial/75.log /net/fantasia/home/atks/makefile_tutorial/76.log /net/fantasia/home/atks/makefile_tutorial/77.log /net/fantasia/home/atks/makefile_tutorial/78.log /net/fantasia/home/atks/makefile_tutorial/79.log /net/fantasia/home/atks/makefile_tutorial/80.log /net/fantasia/home/atks/makefile_tutorial/81.log /net/fantasia/home/atks/makefile_tutorial/82.log /net/fantasia/home/atks/makefile_tutorial/83.log /net/fantasia/home/atks/makefile_tutorial/84.log /net/fantasia/home/atks/makefile_tutorial/85.log /net/fantasia/home/atks/makefile_tutorial/86.log /net/fantasia/home/atks/makefile_tutorial/87.log /net/fantasia/home/atks/makefile_tutorial/88.log /net/fantasia/home/atks/makefile_tutorial/89.log /net/fantasia/home/atks/makefile_tutorial/90.log /net/fantasia/home/atks/makefile_tutorial/91.log /net/fantasia/home/atks/makefile_tutorial/92.log /net/fantasia/home/atks/makefile_tutorial/93.log /net/fantasia/home/atks/makefile_tutorial/94.log /net/fantasia/home/atks/makefile_tutorial/95.log /net/fantasia/home/atks/makefile_tutorial/96.log /net/fantasia/home/atks/makefile_tutorial/97.log /net/fantasia/home/atks/makefile_tutorial/98.log /net/fantasia/home/atks/makefile_tutorial/99.log /net/fantasia/home/atks/makefile_tutorial/100.log
 +
touch /net/fantasia/home/atks/makefile_tutorial/cleaned.OK
 +
 
 +
clean:
 +
-rm -rf /net/fantasia/home/atks/makefile_tutorial/*.OK /net/fantasia/home/atks/makefile_tutorial/*.log
 +
</source>
 +
 
 +
= Similar articles =
 +
 
 +
[http://kbroman.org/Tools4RR/pages/schedule.html Tools for reproducible research] <br>
 +
[http://bost.ocks.org/mike/make/ Why use make?] <br>
 +
[http://stackoverflow.com/questions/395234/any-interesting-uses-of-makefiles-to-share Any interesting uses of makefiles to share?] <br>
 +
[https://www.biostars.org/p/79/ How To Organize A Pipeline Of Small Scripts Together?]
 +
 
 +
= Acknowledgement =
 +
 
 +
Thanks to Hyun for introducing this trick.
 +
 
 +
= Maintained by =
   −
Makefiles themselves are not that readable if there are many dependencies. We can use a script
+
This page is maintained by  [mailto:atks@umich.edu Adrian].
where we can express the analysis pipeline more easily and use it to generate a Makefile.
 
1,102

edits

Navigation menu