Skip to content
  • Davor Ocelic's avatar
    Makefile improvements (#495) · 252518b5
    Davor Ocelic authored
    * Makefile improvements
    
    - Amber binary now depends on all its source files (src/**cr). If any file
      changes, just running 'make' will rebuild Amber. If no source files have
      changed, running 'make' will have no effect and will exit quickly.
      (One can always force make execution with 'make -B [target]', in case that
      forced recompilation is required.)
    
    - Structure of the Makefile is now such that adding more binaries later is
      easier
    
    - A couple "stylistic" improvements were made which don't affect previous
      behavior, but use more standard Makefile syntax and variables
    
    - When running 'make install', if previous copy or symlink doesn't exist
      (as is the case on a first install), 'rm' doesn't fail with critical error
    
    - 'make clean' now only deletes amber-specific files, not shards etc.
      This makes it easier/quicker to invoke 'make' afterwards and recompile
      amber without having to go through shards downloading again
    
    - 'make distclean' deletes all files and brings source tree close to original
      state as would be after git clone
    
    - Both variants of clean now only delete bin/amber and not bin/ as a whole,
      so they now correctly preserve 'ameba' binary which comes from shards and
      also lives in bin
    
    * Minor Makefile simplification
    252518b5