genmake-go
is a simple cross platform tool to generate simple Makefiles for C programs. It is a golang port of my
perl script genmake.
genmake-go v1.0.1 genmake-go https://github.com/muquit/genmake-go
A program to generate nice/simple Makefiles for Linux/Unix and MS Windows
Usage: genmake-go [options]
Where the options include:
--unix generate Makefile for Unix
--win generate Makefile for MS Windows
--app=name generate Makefile for an application
--lib=name generate Makefile for a static library
--dll=name generate Makefile for a shared library in Unix and DLL in Windows
--version show version info
Example:
genmake-go --unix --app=myapp *.c > Makefile
genmake-go --win --app=myapp.exe main.c bar.c > Makefile.win
genmake-go --unix --lib=libmyapp.a main.c bar.c > Makefile
genmake-go --win --lib=myapp.lib main.c bar.c > Makefile.win
genmake-go --unix --dll=libmyapp.so main.c bar.c > Makefile
genmake-go --win --dll=myapp.dll main.c bar.c > Makefile.win
If no --unix or --win flag is specified, OS type will be guessed
Edit the generated Makefile if needed.
Usage of ./genmake-go:
-app string
generate Makefile for an application
-debug
enable debug output
-dll string
generate Makefile for a shared library in Unix and DLL in Windows
-help
show help
-lib string
generate Makefile for a static library
-unix
generate Makefile for Unix
-version
show version info
-win
generate Makefile for MS Windows
The current version is 1.0.1
Please look at ChangeLog for what has changed in the current version.
Install go first
go install github.com/muquit/genmake-go@latest
genmake-go -version
Download pre-compiled binaries from Releases page
Install go first
git clone https://github.com/muquit/genmake-go
cd genmake-go
go build .
Look at Makefile for more info. Look at ./tests
directory for generated example Makefiles.
MIT License - See LICENSE.txt file for details.
Developed with Claude AI 3.7 Sonnet, working under my guidance and instructions - translated from the perl script genmake to go
TOC is created by https://github.com/muquit/markdown-toc-go on Mar-30-2025