← Back to team overview

linuxdcpp-team team mailing list archive

[Branch ~dcplusplus-team/dcplusplus/trunk] Rev 3057: adapt to recent Win SDKs

 

------------------------------------------------------------
revno: 3057
committer: poy <poy@xxxxxxxxxx>
branch nick: trunk
timestamp: Mon 2012-09-17 20:25:16 +0200
message:
  adapt to recent Win SDKs
removed:
  htmlhelp/
  htmlhelp/include/
  htmlhelp/preload/
added:
  mingw/
  mingw/include/
  mingw/preload/
  mingw/preload/natupnp.h
renamed:
  htmlhelp/lib/ => mingw/lib/
  htmlhelp/preload/htmlhelp.h => mingw/preload/htmlhelp.h
modified:
  .bzrignore
  Compile.txt
  SConstruct
  mingw/preload/htmlhelp.h


--
lp:dcplusplus
https://code.launchpad.net/~dcplusplus-team/dcplusplus/trunk

Your team Dcplusplus-team is subscribed to branch lp:dcplusplus.
To unsubscribe from this branch go to https://code.launchpad.net/~dcplusplus-team/dcplusplus/trunk/+edit-subscription
=== modified file '.bzrignore'
--- .bzrignore	2012-07-19 22:00:20 +0000
+++ .bzrignore	2012-09-17 18:25:16 +0000
@@ -8,9 +8,6 @@
 *.lib
 *.pdb
 ./dcpp/version-revno.inc
-./htmlhelp/include/htmlhelp.h
-./htmlhelp/lib/htmlhelp.lib
-natupnp.h
 ./help/changelog.html
 ./help/compile.html
 ./help/cshelp.h
@@ -22,3 +19,4 @@
 openssl/build/openssl*
 ./msvc/debug-*
 ./msvc/release-*
+./mingw/include/*.h

=== modified file 'Compile.txt'
--- Compile.txt	2012-08-25 13:08:38 +0000
+++ Compile.txt	2012-09-17 18:25:16 +0000
@@ -30,10 +30,6 @@
 		* Html Help Workshop (only needed to build help files)
 		<http://msdn.microsoft.com/en-us/library/ms669985%28VS.85%29.aspx>
 
-		Go to your HTML Help Workshop include directory (HTML Help Workshop/include) and copy
-		htmlhelp.h to the htmlhelp/include directory of the DC++ source.
-		Go to your HTML Help Workshop lib directory (HTML Help Workshop/lib) and copy htmlhelp.lib
-		to the htmlhelp/lib directory of the DC++ source.
 		Make sure that hhc.exe is in your PATH environment variable.
 
 		* asciidoc (only needed to build help files)
@@ -70,8 +66,17 @@
 			prefix='i686-pc-mingw32-'
 		Make sure that Cygwin\bin is in your PATH environment variable.
 
-		Also grab natupnp.h from the Windows SDK and place it in the root of the repository.
-		<http://msdn.microsoft.com/en-us/windows/bb980924>
+		To build a version with HTML Help and Windows UPnP support, copy the following files from a
+		Windows SDK (Windows SDK path -> DC++ source code path):
+		Include/shared/winapifamily.h -> mingw/include/winapifamily.h
+		Include/um/HtmlHelp.h -> mingw/include/htmlhelp.h
+		Include/um/natupnp.h -> mingw/include/natupnp.h
+		Lib/win8/um/x86/Htmlhelp.Lib -> mingw/lib/htmlhelp.lib
+		Lib/win8/um/x64/Htmlhelp.Lib -> mingw/lib/x64/htmlhelp.lib
+
+		The latest Windows SDK is currently at
+		<http://msdn.microsoft.com/en-US/windows/desktop/hh852363>; it installs into
+		"C:\Program Files (x86)\Windows Kits\8.0".
 
 	b. Microsoft Visual Studio 2012:
 	<http://msdn.microsoft.com/en-us/visualc/default.aspx>

=== modified file 'SConstruct'
--- SConstruct	2012-08-25 13:08:38 +0000
+++ SConstruct	2012-09-17 18:25:16 +0000
@@ -17,7 +17,7 @@
 # TODO enable LTO when it doesn't ICE... (-flto)
 
 gcc_flags = {
-	'common': ['-g', '-Wall', '-Wextra', '-Wno-unused-parameter', '-Wno-unused-value', '-Wno-missing-field-initializers', '-Wno-address', '-fexceptions', '-mthreads'],
+	'common': ['-g', '-Wall', '-Wextra', '-Wno-unused-parameter', '-Wno-unused-value', '-Wno-missing-field-initializers', '-Wno-address', '-Wno-unknown-pragmas', '-fexceptions', '-mthreads'],
 	'debug': [], 
 	'release' : ['-O3', '-fno-ipa-cp-clone', '-mwindows']
 }
@@ -202,14 +202,11 @@
 
 	env.Tool("gch", toolpath=".")
 
-	env.Append(CPPPATH = ['#/htmlhelp/preload/', '#/htmlhelp/include/'])
-	html_lib = '#/htmlhelp/lib/'
+	env.Append(CPPPATH = ['#/mingw/preload/', '#/mingw/include/'])
+	mingw_lib = '#/mingw/lib/'
 	if env['arch'] != 'x86':
-		html_lib = html_lib + env['arch'] + '/'
-	env.Append(LIBPATH = [html_lib])
-
-	# for MinGW64 to accept natupnp.h
-	env.Append(CPPDEFINES = ['__MIDL_user_allocate_free_DEFINED__'])
+		mingw_lib = mingw_lib + env['arch'] + '/'
+	env.Append(LIBPATH = [mingw_lib])
 
 env.Append(CPPDEFINES = defs[env['mode']])
 env.Append(CPPDEFINES = defs['common'])

=== removed directory 'htmlhelp'
=== removed directory 'htmlhelp/include'
=== removed directory 'htmlhelp/preload'
=== added directory 'mingw'
=== added directory 'mingw/include'
=== renamed directory 'htmlhelp/lib' => 'mingw/lib'
=== added directory 'mingw/preload'
=== renamed file 'htmlhelp/preload/htmlhelp.h' => 'mingw/preload/htmlhelp.h'
--- htmlhelp/preload/htmlhelp.h	2010-11-24 19:05:54 +0000
+++ mingw/preload/htmlhelp.h	2012-09-17 18:25:16 +0000
@@ -1,17 +1,31 @@
-// support HTML Help libs from recent MS SDKs.
-
-#ifdef _MSC_VER
-#error "htmlhelp/preload/htmlhelp.h is only for non-MSVC compilers"
-#endif
-
-#define _MSC_VER 1400 // simulate a high enough version to make sure htmlhelp doesn't define junk
+// support includes from recent MS SDKs.
+
+#define _MSC_VER 1400 // simulate a high enough version to make sure the include doesn't define junk
 
 #define __in
 #define __in_opt
+#define _In_
+#define _In_opt_
+#define __RPC__in
+#define __RPC__in_opt
+#define __RPC__in_xcount(x)
+#define __RPC__inout_xcount(x)
+#define __RPC__out
+#define __RPC__deref_out_opt
+#define __REQUIRED_RPCNDR_H_VERSION__ 400
 
 #include_next <htmlhelp.h>
 
 #undef __in
 #undef __in_opt
+#undef _In_
+#undef _In_opt_
+#undef __RPC__in
+#undef __RPC__in_opt
+#undef __RPC__in_xcount
+#undef __RPC__inout_xcount
+#undef __RPC__out
+#undef __RPC__deref_out_opt
+#undef __REQUIRED_RPCNDR_H_VERSION__
 
 #undef _MSC_VER

=== added file 'mingw/preload/natupnp.h'
--- mingw/preload/natupnp.h	1970-01-01 00:00:00 +0000
+++ mingw/preload/natupnp.h	2012-09-17 18:25:16 +0000
@@ -0,0 +1,31 @@
+// support includes from recent MS SDKs.
+
+#define _MSC_VER 1400 // simulate a high enough version to make sure the include doesn't define junk
+
+#define __in
+#define __in_opt
+#define _In_
+#define _In_opt_
+#define __RPC__in
+#define __RPC__in_opt
+#define __RPC__in_xcount(x)
+#define __RPC__inout_xcount(x)
+#define __RPC__out
+#define __RPC__deref_out_opt
+#define __REQUIRED_RPCNDR_H_VERSION__ 400
+
+#include_next <natupnp.h>
+
+#undef __in
+#undef __in_opt
+#undef _In_
+#undef _In_opt_
+#undef __RPC__in
+#undef __RPC__in_opt
+#undef __RPC__in_xcount
+#undef __RPC__inout_xcount
+#undef __RPC__out
+#undef __RPC__deref_out_opt
+#undef __REQUIRED_RPCNDR_H_VERSION__
+
+#undef _MSC_VER