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
Diffstat:
M | README | | | 46 | +++++++++++++++++++++++++++------------------- |
1 file changed, 27 insertions(+), 19 deletions(-)
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
--------