Mercurial > msvpvf
comparison Makefile @ 79:8f90d5addda9 v2.0
*: refactor... basically everything!
The Win32 GUI version is now unicode-friendly. HOWEVER, ANSI still very
much works. you can configure which version to use through `-DUNICODE=0/1`
in CFLAGS.
the CLI is also friendlier and uses a more sane interface as well.
note: the command line flags (which were optional before) are now required.
Unicode filenames will not work on Windows because Windows sucks.
| author | Paper <paper@paper.us.eu.org> |
|---|---|
| date | Wed, 20 Mar 2024 17:06:26 -0400 |
| parents | 207684d44b54 |
| children | c06dcab17923 |
comparison
equal
deleted
inserted
replaced
| 78:fae1d67d8cfd | 79:8f90d5addda9 |
|---|---|
| 1 CFLAGS=-Wall -O2 -fstack-protector -fdata-sections -ffunction-sections | 1 _CFLAGS = -Wall -O2 -Iinclude $(CFLAGS) |
| 2 LDFLAGS= | 2 _LDFLAGS = $(LDFLAGS) |
| 3 | 3 |
| 4 ifeq ($(shell uname -s),Darwin) # macOS is the odd one... | 4 .c.o: |
| 5 LDFLAGS+=-Wl,-dead_strip | 5 $(CC) -c $(_CFLAGS) $< -o $@ |
| 6 else | |
| 7 LDFLAGS+=-Wl,--gc-sections | |
| 8 endif | |
| 9 | 6 |
| 10 src/%.o : src/%.c | 7 # this is a unix-like version, barely functional on windows. |
| 11 $(CC) -c $(CFLAGS) $< -o $@ | 8 msvpvf: src/main.o src/common.o |
| 9 $(CC) $(_CFLAGS) -o $@ $^ $(_LDFLAGS) | |
| 12 | 10 |
| 13 msvpvf: src/main.o src/common.o | 11 # windows-specific |
| 14 $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) | |
| 15 | |
| 16 # GUI is windows-only, please use cross-compiler! | |
| 17 gui: src/gui.o src/common.o | 12 gui: src/gui.o src/common.o |
| 18 $(CC) $(CFLAGS) -o $@ $^ $(LDFLAGS) -mwindows -lshlwapi | 13 $(CC) -o $@ $^ -mwindows -lole32 -lshlwapi -luuid -lmsvcrt $(_LDFLAGS) |
| 19 | 14 |
| 20 clean: | 15 clean: |
| 21 rm -f src/*.o *.exe msvpvf gui | 16 rm -f src/main.o src/common.o src/gui.o msvpvf gui |
