updated readme
This commit is contained in:
38
README.md
38
README.md
@@ -1,41 +1,3 @@
|
||||
<think>The user wants to brainstorm the design of shmake. They want:
|
||||
1. A spec-style README with examples
|
||||
2. No BUILD_MODE variable - instead use `make test`, `make debug`, `make release`
|
||||
3. `init` should take flags but fall back to interactive mode if flags are missing
|
||||
4. VCS awareness when pulling libraries (git vs tar/zip with wget/curl)
|
||||
5. Compiler strictness settings (0=none, 1=basic/pedantic, 2=standard/default+werror+wextra, 3=maximum)
|
||||
6. Everything in POSIX sh and POSIX make
|
||||
7. Commands: init, add, sync (maybe others?)
|
||||
8. Manual modes for automation
|
||||
|
||||
Let me think about the full design:
|
||||
|
||||
Commands needed:
|
||||
- shmake init [flags] - initialize project, interactive if flags missing
|
||||
- shmake add [type] [name/url] [options] - add modules or libraries
|
||||
- shmake sync - regenerate Makefile from .conf files
|
||||
- shmake link [libs] - add system libraries (already exists)
|
||||
- shmake help - show help
|
||||
|
||||
For the add command, they want to specify where libraries go:
|
||||
- shared_libraries (normal)
|
||||
- debug_only (debug/logging libraries)
|
||||
- test_only (test libraries)
|
||||
- release_only (release-only libraries)
|
||||
|
||||
Compiler strictness:
|
||||
- 0: none
|
||||
- 1: basic (pedantic, -Wall)
|
||||
- 2: standard (default, includes -Werror, -Wextra)
|
||||
- 3: maximum (includes more warnings)
|
||||
|
||||
VCS detection:
|
||||
- .git URLs → git clone
|
||||
- .tar.gz, .zip, etc → wget/curl + extract
|
||||
|
||||
Let me write a comprehensive spec-style README.
|
||||
</think>
|
||||
|
||||
# shmake: Simple Helpful Make (Shell Make)
|
||||
|
||||
A POSIX-compliant build and project management system for C projects. All scripts use pure POSIX sh. Generated Makefiles are fully POSIX-compliant and work with GNU Make, bmake, and BSD Make.
|
||||
|
||||
Reference in New Issue
Block a user