summaryrefslogtreecommitdiffstats
path: root/vidix/dhahelperwin/Makefile
blob: 4ce2af98a75b0881e09b96f13ba5df1aa5e93588 (plain)
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
42
include ../../config.mak

all: dhasetup.exe dhahelper.sys

dhasetup.exe: dhasetup.c
	$(CC) -o dhasetup.exe dhasetup.c

dhahelper.o: dhahelper.c dhahelper.h
	$(CC) -Wall -Os -c dhahelper.c -o dhahelper.o

dhahelper-rc.o: dhahelper.rc common.ver ntverp.h
	windres -I. dhahelper.rc $@

base.tmp: dhahelper.o dhahelper-rc.o
	$(CC)   -Wl,--base-file,base.tmp \
		-Wl,--entry,_DriverEntry@8 \
		-nostartfiles -nostdlib \
		-o junk.tmp \
		dhahelper.o dhahelper-rc.o \
		-lntoskrnl
	-rm -f junk.tmp

temp.exp: base.tmp
	dlltool --dllname dhahelper.sys --base-file base.tmp --output-exp temp.exp

dhahelper.sys: dhahelper.o dhahelper-rc.o temp.exp
	$(CC)	-Wl,--subsystem,native \
		-Wl,--image-base,0x10000 \
		-Wl,--file-alignment,0x1000 \
		-Wl,--section-alignment,0x1000 \
		-Wl,--entry,_DriverEntry@8 \
		-Wl,temp.exp \
		-mdll -nostartfiles -nostdlib \
		-o dhahelper.sys \
		dhahelper.o dhahelper-rc.o \
		-lntoskrnl
	strip dhahelper.sys

clean:
	rm -f *.o *~ dhahelper.sys dhasetup.exe base.tmp temp.exp

distclean: clean