summaryrefslogtreecommitdiffstats
path: root/sample/sample-plugins/simple/winbuild
blob: decf05f8b7e599d9cbfbf06541f376fcba0e07da (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#
# Build an OpenVPN plugin module on Windows/MinGW.
# The argument should be the base name of the C source file
# (without the .c).
#

# This directory is where we will look for openvpn-plugin.h
INCLUDE="-I../../../include"

CC_FLAGS="-O2 -Wall"

gcc -DBUILD_DLL $CC_FLAGS $INCLUDE -c $1.c
gcc --disable-stdcall-fixup -mdll -DBUILD_DLL -o junk.tmp -Wl,--base-file,base.tmp $1.o
rm junk.tmp
dlltool --dllname $1.dll --base-file base.tmp --output-exp temp.exp --input-def $1.def
rm base.tmp
gcc --enable-stdcall-fixup -mdll -DBUILD_DLL -o $1.dll $1.o -Wl,temp.exp
rm temp.exp