-
Notifications
You must be signed in to change notification settings - Fork 0
/
makefile
41 lines (34 loc) · 1.12 KB
/
makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# I_wrote_a_virus_code.c - My own virus against myself!
# Copyright (c) 2019 ardeshirv@protonmail.com, Licensed under GPLv3+
PROG=I_wrote_a_virus_code
CC=gcc
MINGW64=i686-w64-mingw32
CC_MINGW64=$(MINGW64)-gcc
OBJECTS=$@
CFLAGS=--std=c11 -Wall -Ofast
CINCS=
# -include $(PROG).h
RES=resources
LDLIBS=-lm
LDLIBS_MINGW=-Wl,--subsystem,windows -mwindows \
-DWINVER=0x0400 -D__WIN95__ -D__GNUWIN32__ \
-DSTRICT -DHAVE_W32API_H -D__WXMSW__ -D__WINDOWS__ \
-lstdc++ -lgcc -lodbc32 \
-lwsock32 -lwinspool -lwinmm -lshell32 \
-lcomctl32 -lctl3d32 -lodbc32 -ladvapi32 -lodbc32 -lwsock32 \
-lopengl32 -lglu32 -luuid -lole32 -loleaut32
## -lzlib -ljpeg -ltiff -lpng -lregex -lfreeglut -lglut
$(PROG): $(PROG).o $(PROG)-win64.o $(RES).o
$(CC) $(CFLAGS) $(LDLIBS) -o $@ $(PROG).o
$(CC_MINGW64) $(CFLAGS) $(LDLIBS_MINGW) -o $@-win64.exe \
$(PROG)-win64.o $(RES).o
$(PROG).o: $(PROG).c
$(CC) $(CFLAGS) $(CINCS) -c -o $(PROG).o $(PROG).c
$(PROG)-win64.o: $(PROG).c
$(CC_MINGW64) $(CFLAGS) $(CINCS) -c -o $(PROG)-win64.o $(PROG).c
$(RES).o: $(RES).rc
$(MINGW64)-windres $(RES).rc $(RES).o
clean:
rm -vf *~ -vf *.o *.exe $(PROG)
run:
./$(PROG)