<project name="Win32" default="build">
<target name="build">
- <property name="gcc-target" value="i686-pc-mingw32"/>
+ <property name="gcc-target" value="i686-pc-mingw32-"/>
<property name="linkflags" value="-Wl,--subsystem,windows"/>
<property name="binaryname" value="xwt.exe"/>
+ <property name="subplat" value="Win32"/>
<ant target="build" antfile="src/org/xwt/plat/GCJ.xml"/>
</target>
<echo message='launching .exe'/>
<exec dir='.' executable='/usr/bin/ssh'>
<arg value='${cygwin-host}'/>
- <arg value='cd ${cygwin-path}; www/html/dist/xwt.exe src org.xwt.demo.main'/>
+ <arg value='cd ${cygwin-path}; bin-Win32/xwt.exe src org.xwt.demo.main'/>
</exec>
</target>
<target name="dist">
<echo message='creating ActiveX dll...'/>
+ <delete dir='bin-Win32/cabsrc/'/>
<mkdir dir='bin-Win32/cabsrc/'/>
<bash>
- /usr/local/gcc/bin/i686-pc-mingw32-g++ -DCOMPILE_DLL -c src/org/xwt/plat/Win32.cc -o bin-Win32/Win32-dll.o
- /usr/local/gcc/bin/i686-pc-mingw32-g++ -Wl,--base-file,/tmp/basefile -mdll -Wl,-e,_DllMainCRTStartup@12 \
- -o bin-Win32/cabsrc/xwt.dll bin-Win32/Win32-dll.o -lole32 -luuid
- /usr/local/gcc/bin/i686-pc-mingw32-dlltool --base-file /tmp/basefile --output-exp bin-Win32/xwt.exp \
- --def src/org/xwt/plat/Win32.def
- /usr/local/gcc/bin/i686-pc-mingw32-g++ -Wl,--base-file,/tmp/basefile bin-Win32/xwt.exp -mdll \
- -Wl,-e,_DllMainCRTStartup@12 -o bin-Win32/cabsrc/xwt.dll bin-Win32/Win32-dll.o -lole32 -luuid
- /usr/local/gcc/bin/i686-pc-mingw32-dlltool --base-file /tmp/basefile --output-exp bin-Win32/xwt.exp --def src/org/xwt/plat/Win32.def
- /usr/local/gcc/bin/i686-pc-mingw32-g++ bin-Win32/xwt.exp -mdll -Wl,-e,_DllMainCRTStartup@12 -o bin-Win32/cabsrc/xwt.dll \
- bin-Win32/Win32-dll.o -lole32 -luuid
+ ${gcc-path}/bin/i686-pc-mingw32-g++ -DCOMPILE_DLL -DBUILDID=\"${build-id}\" -DCLSID_STRUCT="${clsid-struct}" \
+ -c src/org/xwt/plat/Win32.cc -o bin-Win32/Win32-dll.o
+ ${gcc-path}/bin/i686-pc-mingw32-g++ -Wl,--base-file,/tmp/basefile -mdll -Wl,-e,_DllMainCRTStartup@12 \
+ -o bin-Win32/cabsrc/xwt-${build-id}.dll bin-Win32/Win32-dll.o -lole32 -luuid
+ ${gcc-path}/bin/i686-pc-mingw32-dlltool --base-file /tmp/basefile --output-exp bin-Win32/xwt.exp \
+ --def src/org/xwt/plat/Win32.def
+ ${gcc-path}/bin/i686-pc-mingw32-g++ -Wl,--base-file,/tmp/basefile bin-Win32/xwt.exp -mdll -Wl,-e,_DllMainCRTStartup@12 \
+ -o bin-Win32/cabsrc/xwt-${build-id}.dll bin-Win32/Win32-dll.o -lole32 -luuid
+ ${gcc-path}/bin/i686-pc-mingw32-dlltool --base-file /tmp/basefile --output-exp bin-Win32/xwt.exp --def src/org/xwt/plat/Win32.def
+ ${gcc-path}/bin/i686-pc-mingw32-g++ bin-Win32/xwt.exp -mdll -Wl,-e,_DllMainCRTStartup@12 -o bin-Win32/cabsrc/xwt-${build-id}.dll \
+ bin-Win32/Win32-dll.o -lole32 -luuid
+# ${gcc-path}/bin/i686-pc-mingw32-strip bin-Win32/cabsrc/xwt-${build-id}.dll
</bash>
<echo message='creating area to be signed in bin-Win32/cabsrc/...'/>
- <copy file='src/org/xwt/plat/Win32.inf' tofile='bin-Win32/cabsrc/xwt.inf'/>
- <copy file='www/html/dist/xwt.exe' tofile='bin-Win32/cabsrc/xwt.exe'/>
- <bash> /usr/local/gcc/bin/i686-pc-mingw32-strip bin-Win32/cabsrc/xwt.exe </bash>
+
+ <bash>
+ cat > bin-Win32/cabsrc/xwt-${build-id}.inf <<\EOF
+;; This file will be copied to bin-Win32/cabsrc/xwt-${build-id}.inf and then packed up
+;; into the .cab file for distribution
+
+[version]
+ signature="$CHICAGO$"
+ AdvancedINF=2.0
+ [Add.Code]
+ xwt-${build-id}.dll=xwt-${build-id}.dll
+ xwt-${build-id}.exe=xwt-${build-id}.exe
+ [xwt-${build-id}.dll]
+ file-win32-x86=thiscab
+ clsid=${clsid-string}
+ FileVersion=7,0,0,0
+ RegisterServer=yes
+ [xwt-${build-id}.exe]
+ file-win32-x86=thiscab
+ clsid={FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFE}
+ FileVersion=7,0,0,0
+ RegisterServer=no
+EOF
+ </bash>
+ <copy file='bin-Win32/xwt.exe' tofile='bin-Win32/cabsrc/xwt-${build-id}.exe'/>
+ <bash> ${gcc-path}/bin/i686-pc-mingw32-strip bin-Win32/cabsrc/xwt-${build-id}.exe </bash>
</target>