fmake

make any project just by typing `fmake`

commit db492bfec828f9b85c733b1319d6945001f9e01a
parent 4b0ddde5c3b77df625bd63f87ca9386f936cb6ef
Author: Bharatvaj Hemanth <bharatvaj@yahoo.com>
Date: Wed, 18 Sep 2024 01:20:18 +0530

Update FAQ in README

...and artwork fix
1 file changed, 27 insertions(+), 19 deletions(-)
M
README
|
46
+++++++++++++++++++++++++++-------------------
diff --git a/README b/README
@@ -1,11 +1,11 @@
 fmake
 =====
- ______________________________ 
-| > C:\AndroidApp\        - o x|
-|------------------------------|
-| $ fmake                      |
-| ++ gradle buildDebug         |
-!______________________________!
+ _______________________________
+| > C:\AndroidApp\        - o x |
+|-------------------------------|
+| $ fmake                       |
+| ++ gradle buildDebug          |
+!_______________________________!
 
 fmake is a tool that brings `make`s interface to almost any build system.
 

@@ -32,16 +32,17 @@ Build Chains
 fmake automatically understands the following(and many more) sequences,
 and tries to run it one after the other
 
-	$ cmake -Bout .
-	$ cd out
-	$ make
+    $ cmake -Bout .
+    $ cd out
+    $ make
 
---------(vs)----------
+    ----------(vs)----------
 
-    $ fmake    ------------------=> [ You only have to type fmake! ]
+    $ fmake # You only have to type fmake!
     ++ cmake -Bout
         ...
     ++ cmake --build out
+        ...
 
 fmake can be forced to re-run the generator using `fmake -2`
 

@@ -64,14 +65,21 @@ Additionally 'type=release' can be passed to build as release.
 Default is debug.
 
 FAQ
-----
-> Why ?
-fmake was born out of my frustration with having to remember specific
-commands for every project I worked on.
-
-> Why default to 'out/' ?
-'out/' is preferred, as more and more projects are using the 'build'
-directory for other purposes like setting up CI/CD.
+---
+> Why?
+"People disagree on priorities and therefore, you can't create
+the One & Only build system to end all other build systems."
+                                                - jasode (HN User)
+
+fmake was born out of frustration with having to remember specific build
+commands for different software projects.
+
+> Why not use 'build/' instead of 'out/' as fallback default?
+Using 'build/' for storing build artifacts is not preferrable for two reasons,
+1. Some build systems use 'BUILD' as their manifest file, making it impossible
+   to use 'build/' as output directory in case-insensitive file systems
+2. More and more projects are using the 'build' directory for various repo
+   specific tasks such as setting up CI or maintianing editor configurations.
 
 See Also
 --------