| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| | |
|
|/
|
|
|
|
| |
Beware that i586-mingw32msvc-gcc is sometimes just a symlink to
i686-w64-mingw32-gcc. Real i586-mingw32msvc-gcc compiler is available in
mingw32 package only in dist trusty.
|
|\
| |
| | |
Add support to use wine to run cross compiled tests for cmake
|
| | |
|
| |
| |
| |
| |
| |
| | |
To make it easier to extend the CI support and to be able to execute
the contained tests locally, a dedicated shell script tools/ci_build.sh
was added to execute the tests.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
tests with wine
For details about the ENABLE_WINE option, which support three modes
AUTO|ON|OFF see the documentation of cmake macro check_auto_option().
A custom path for the wine executable can be specified by adding
-DWINE_EXECUTABLE=<path> to the cmake command line.
The cmake related macros were copied from
https://gitlab.freedesktop.org/dbus/dbus/-/blob/master/cmake/modules/Macros.cmake
|
| | |
|
| |
| |
| |
| |
| |
| | |
The cmake command enable_testing() must be placed in the topmost
CMakeLists.txt so that the make target 'test' is available in the
topmost build directory.
|
| |
| |
| |
| |
| | |
This is required for running test applications, because by default cmake
places binaries into the associated subdir.
|
|\ \
| |/
|/| |
Change order of variables in appveyor build matrix
|
|/
|
|
|
|
|
|
|
| |
This change no function effect as it changes only order of defined
variables. The only visible change is on appveyor web where variables are
printed in other as they are defined. If list of variables is too long,
variables defined later are hidden on the web interface. Variable
APPVEYOR_BUILD_WORKER_IMAGE was moved to the end of list as it is less
important to know as variable GENERATOR (defines which compiler is used).
|
|\
| |
| | |
CMake build system fixes
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
According to https://cmake.org/pipermail/cmake/2013-May/054792.html
cmake 2.8.11 was released in 2013, so we can assume that no older version
will be used anymore.
|
|\ \
| |/
|/| |
Drop obsolete visual studio related files
|
|/
|
|
|
| |
These files can be easily recreated with cmake on the fly, which is
already used by CI-system.
|
|\
| |
| | |
Relicense to MIT
|
| | |
|
| |
| |
| |
| |
| |
| | |
The licensing note in the configure script has been reworked, similarly
to how libvpx did it (they were also based on FFmpeg's configure script
and also use a more permissive license).
|
|\ \
| |/
|/| |
Add Travis CI testing
|
|/ |
|
|\
| |
| | |
Fix compilation with older environments
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change should fix following compile error:
dlfcn.c: In function 'dlsym':
dlfcn.c:374:14: warning: implicit declaration of function 'GetModuleHandleExA'
dlfcn.c: undefined reference to `GetModuleHandleExA'
Documentation for function GetModuleHandleExA() says:
To compile an application that uses this function, define _WIN32_WINNT as 0x0501 or later.
Fixes: https://github.com/dlfcn-win32/dlfcn-win32/issues/75
|
|\
| |
| | |
Replace VirtualQueryEx() call by GetModuleHandleExA() call
|
|/
|
|
|
|
|
|
|
|
|
|
| |
Usage of VirtualQueryEx() call is needed for retrieving HMODULE of passed
function address and it is just an undocumented hack. Based on @rhabacker's
tests it is unstable and does not work correctly.
https://github.com/dlfcn-win32/dlfcn-win32/pull/72#issuecomment-656581418
So replace VirtualQueryEx() call by standard GetModuleHandleExA() function
with special GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS flag which should do
the same thing but it is documented and it is working correctly.
|
|\
| |
| | |
fix memory leak in dlsym()
|
|/ |
|
|\
| |
| | |
Show "(null)" in error message when passed filname to dlopen() was NULL and error occurred
|
|/
|
|
|
|
|
|
|
|
| |
error occurred
It does not make sense to pass file variable (which is NULL) to function
save_err_ptr_str() which converts its argument to string. We can call
directly save_err_str() with string value.
Also it is highly unexpected that GetModuleHandle(NULL) call fails.
|
|\
| |
| | |
Add test which check that dlopen() can open same files as open()
|
|/
|
|
|
| |
This ensures that dlopen() expects filenames encoded in same codepage as
WinAPI's open() function.
|
|\
| |
| | |
Update documentation in dlfcn.h, specially for RTLD_LAZY
|
|/ |
|
|\
| |
| | |
Makefile: Fix building both static and shared library at the same time
|
|/
|
|
|
|
|
|
| |
Static library libdl.a must be build without -DSHARED flag for obvious
reason. So -DSHARED cannot be in global CFLAGS.
Define also two separate test targets: test.exe for shared library and
test-static.exe for static library.
|
|\
| |
| | |
Reduce memory usage by 64K
|
|/
|
|
| |
One buffer for error message is enough.
|
|\
| |
| | |
Fix compile warnings
|
| |
| |
| |
| |
| | |
ISO C90 forbids mixed declarations and code
ISO C++ forbids converting a string constant to 'char*'
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Instead of using compiler specific pragma to disable particular warning,
rewrite code which cast from function pointer to data pointer according to
POSIX dlopen() documentation. This also fix compile warning under MSVC.
According to the ISO C standard, casting between function
pointers and 'void *', as done above, produces undefined results.
POSIX.1-2003 and POSIX.1-2008 accepted this state of affairs and
proposed the following workaround:
*(void **) (&cosine) = dlsym(handle, "cos");
This (clumsy) cast conforms with the ISO C standard and will
avoid any compiler warnings.
|
| |
| |
| |
| |
| | |
GetTempPathA() returns DWORD (32/64bit unsigned integer) and not int
(32 signed integer).
|
|/
|
|
|
|
|
|
|
|
|
|
| |
Include file intrin.h is not needed for compiling dlfcn.c as _ReturnAddress
intrinsic is defined in dlfcn.c manually. Moreover _ReturnAddress is
available only as an intrinsic, there is no function implementation. So
even including intrin.h file does not provide function variant for
_ReturnAddress.
More important, include file intrin.h is not available in older Windows
Driver Kit 7.1.0. So removing usage of intrin.h file makes compilation of
dlfcn-win32 also under these older WDK versions.
|
|\
| |
| | |
Correctly process malloc() error in dlsym()
|
|/
|
|
| |
malloc() may fail, so propagate this error to caller.
|
|\
| |
| | |
Turn off GUI error messages around LoadLibraryA also in test
|
|/
|
|
| |
Otherwise running test show GUI error messages which needs to be closed.
|
|\
| |
| | |
Correctly process and indicate errors
|
| | |
|