linuxdcpp-team team mailing list archive
-
linuxdcpp-team team
-
Mailing list archive
-
Message #02547
[Branch ~dcplusplus-team/dcplusplus/trunk] Rev 2305: support HTML Help libs from recent MS SDKs
------------------------------------------------------------
revno: 2305
committer: poy <poy@xxxxxxxxxx>
branch nick: trunk
timestamp: Wed 2010-11-24 20:05:54 +0100
message:
support HTML Help libs from recent MS SDKs
added:
htmlhelp/lib/ia64/
htmlhelp/lib/x64/
htmlhelp/preload/
htmlhelp/preload/htmlhelp.h
modified:
SConstruct
changelog.txt
win32/WinUtil.cpp
--
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 'SConstruct'
--- SConstruct 2010-11-23 16:38:12 +0000
+++ SConstruct 2010-11-24 19:05:54 +0000
@@ -174,8 +174,11 @@
env.Tool("gch", toolpath=".")
- env.Append(CPPPATH = ['#/htmlhelp/include/'])
- env.Append(LIBPATH = ['#/htmlhelp/lib/'])
+ env.Append(CPPPATH = ['#/htmlhelp/preload/', '#/htmlhelp/include/'])
+ html_lib = '#/htmlhelp/lib/'
+ if env['arch'] != 'x86':
+ html_lib = html_lib + env['arch'] + '/'
+ env.Append(LIBPATH = [html_lib])
env.Append(CPPDEFINES = defs[env['mode']])
env.Append(CPPDEFINES = defs['common'])
@@ -222,7 +225,7 @@
pot_bld = Builder (action = Action([pot_args], 'Extracting messages to $TARGET from $SOURCES'))
env.Append(BUILDERS = {'PotBuild' : pot_bld})
-conf = Configure(env)
+conf = Configure(env, conf_dir = dev.get_build_path('.sconf_temp'), log_file = dev.get_build_path('config.log'), clean = False, help = False)
if conf.CheckCXXHeader(['windows.h', 'htmlhelp.h'], '<>'):
conf.env.Append(CPPDEFINES='HAVE_HTMLHELP_H')
if conf.CheckCXXHeader('natupnp.h', '<>'):
=== modified file 'changelog.txt'
--- changelog.txt 2010-11-21 19:11:21 +0000
+++ changelog.txt 2010-11-24 19:05:54 +0000
@@ -35,6 +35,7 @@
* [ADC] Group search extensions with the "GR" param (poy)
* Keep search history in file list windows (emtee)
* Update OpenSSL to version 1.0.0b (poy)
+* [L#378829] Make sure our OpenSSL binaries aren't "optimized for MS-DOS" (poy)
-- 0.770 2010-07-05 --
* [L#550300] Catch more potential file corruptions (thanks bigmuscle)
=== added directory 'htmlhelp/lib/ia64'
=== added directory 'htmlhelp/lib/x64'
=== added directory 'htmlhelp/preload'
=== added file 'htmlhelp/preload/htmlhelp.h'
--- htmlhelp/preload/htmlhelp.h 1970-01-01 00:00:00 +0000
+++ htmlhelp/preload/htmlhelp.h 2010-11-24 19:05:54 +0000
@@ -0,0 +1,17 @@
+// 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
+
+#define __in
+#define __in_opt
+
+#include_next <htmlhelp.h>
+
+#undef __in
+#undef __in_opt
+
+#undef _MSC_VER
=== modified file 'win32/WinUtil.cpp'
--- win32/WinUtil.cpp 2010-11-21 15:59:18 +0000
+++ win32/WinUtil.cpp 2010-11-24 19:05:54 +0000
@@ -49,6 +49,20 @@
#ifdef HAVE_HTMLHELP_H
#include <htmlhelp.h>
+
+#ifndef _MSC_VER
+// HTML Help libs from recent MS SDKs are compiled with /GS, so link in the following.
+#ifdef _WIN64
+#define HH_GS_CALL __cdecl
+#else
+#define HH_GS_CALL __fastcall
+#endif
+extern "C" {
+ void HH_GS_CALL __GSHandlerCheck() { }
+ void HH_GS_CALL __security_check_cookie(uintptr_t) { }
+}
+#undef HH_GS_CALL
+#endif
#endif
// def taken from <gettextP.h>