#include <stdexcept>
#include <sstream>
-#include "dbg/stack.hpp"
+#include "stack.hpp"
#if defined(_WIN32)
# include <windows.h>
# include <imagehlp.h>
# if defined(__MINGW32__)
+# define PACKAGE 1
+# define PACKAGE_VERSION 1
# include <bfd.h> // link against libbfd and libiberty
# include <psapi.h> // link against psapi
# include <cxxabi.h>
public:
explicit windows_dll(const std::string &libname) :
name_(libname),
- lib_(LoadLibrary(name_.c_str()))
+ lib_(LoadLibraryA(name_.c_str()))
{
if (!lib_) throw std::runtime_error("Failed to load dll " + name_);
}
if (func.empty())
{
+#if defined(_WIN64)
+ DWORD64 dummy = 0;
+#else
DWORD dummy = 0;
+#endif
BOOL got_symbol = SymGetSymFromAddr(process, frame.AddrPC.Offset, &dummy, symbol);
func = got_symbol ? symbol->Name : unknown_function;
}
SNDFILE OPENJPEG POSTPROC TIFF MAGICK SSH DCP GLIB LZMA
"""
if bld.env.TARGET_WINDOWS:
- obj.uselib += ' WINSOCK2'
+ obj.uselib += ' WINSOCK2 BFD DBGHELP IBERTY'
obj.source = sources + ' stack.cpp'
else:
obj.source = sources
conf.env.append_value('CXXFLAGS', ['-mconsole'])
conf.env.append_value('LINKFLAGS', ['-mconsole'])
conf.check(lib = 'ws2_32', uselib_store = 'WINSOCK2', msg = "Checking for library winsock2")
+ conf.check(lib = 'bfd', uselib_store = 'BFD', msg = "Checking for library bfd")
+ conf.check(lib = 'dbghelp', uselib_store = 'DBGHELP', msg = "Checking for library dbghelp")
+ conf.check(lib = 'iberty', uselib_store = 'IBERTY', msg = "Checking for library iberty")
boost_lib_suffix = '-mt'
boost_thread = 'boost_thread_win32-mt'
else: