10 Commits

Author SHA1 Message Date
Pete Batard 9daf8200f0 VS 2008 project files now use default for most options
* also fixed DLL generation that was set to MT(d) to using MD(d)
2010-08-06 18:55:17 +01:00
Pete Batard b5820d34ad enforce proper line terminators for MSVC and .sh files 2010-07-31 01:03:39 +01:00
Pete Batard ea272ad88b [INTERNAL - NOT FOR RELEASE] MSVC 2008 advapi.lib dependency 2010-04-16 23:32:55 +01:00
Pete Batard c1cea1b0fe addressed MSVC warnings prompted by previous change 2010-04-08 12:33:27 +01:00
Pete Batard fb787f4e67 enabled reuse of windows_error_str for wdi
additional cleanup
2010-03-23 19:42:15 +00:00
Pete Batard e23692f3ea _stdcall calling convention for VS2005 DLL project files
also keeps default calling convention for non DLL project files with VS2008
2010-03-08 20:26:30 +00:00
Pete Batard 6320efeb75 changed calling convention to __stdcall (VS2008) 2010-03-03 16:41:35 +00:00
Pete Batard c83b94c78f merge abstraction for POSIX Threads and integration changes (Michael Plante, Peter Stuge)
v1.0.6 release

Darwin: support multiple calls to libusb_init
Credit to Orin Eman for finding this bug.

Darwin: use logging functions
Use usbi_warn, usbi_err, and usbi_info instead of _usbi_log.

Darwin: fix memory leak in process_device
Credit to Mike Colagrosso for finding this bug.

Add internal abstraction for POSIX Threads
This prepares for a Windows backend without dependency on pthreads-w32.

pthread_* is renamed to usbi_* and PTHREAD_* to USBI_*.

A usbi_mutex_static_t and usbi_mutex_static_lock() and _unlock() are
introduced for statically initialized mutexes, since they may be
implemented using other types when pthreads mutexes aren't used.

Move -pthread from libusb/Makefile.am to host-specific AM_CFLAGS in
configure.ac. AM_CFLAGS is already used in Makefile.am.

(Numerous merge conflicts resolved by Michael Plante)

misc fixes to pthreads abstraction
* windows_compat.h should not be directly included (use libusbi.h)
* windows_usb.c still had some references to pthread_mutex_[un]lock

Add libusb_strerror() to get short error message in English from enum
(Merge conflicts resolved by Michael Plante)

Better cleanup on errors, stricter types and some good casts
Avoid various memory leaks in error code paths and remove warnings. Also
add usbi_cond_destroy in os/threads_posix.h because it's used for cleanup
now.

(Merge conflicts resolved by Michael Plante)

Rename all interface parameters to usb_interface or interface_number
(Merge conflicts resolved by Michael Plante)

Add type parameter to the list_for_each_entry() and _safe() macros
(Merge conflicts resolved by Michael Plante)

VA_ARGS workaround for logging with MSVC6
(Merge conflicts resolved by Michael Plante)

Fix context memory leak in libusb_init()
* Now holds default_context_lock for duration of libusb_init
* Doesn't allocate it if not needed

Fix the last MSVC /W3 warning

removal of pthreads from MSVC and mingw
* removed pthread*.lib from linking in msvc6 (2005/8 not yet edited)
* added threads_windows.[ch] to all project files in msvc6
* added usbi_cond_signal to both threading versions, unused
* added native windows threading code, now used

removed redundant time.h includes

removed pthread-win32 informational solution files

updated MSVC 2005/2008 for thread abstraction

fixed DDK build

fixed cygwin's use of POSIX threads

fixed dpfp/dpfp_threaded for MinGW compatibility

config_msvc.h -> msvc/config.h

pthread abstraction for DLL project files

fixed bad reference to thread_windows in 2005 DLL vcproj

cygwin ifdef is not required in threads_windows.h - removed

fixed residuals from previous patches

moved thread source detection into autotool scripts
2010-02-24 11:29:43 +00:00
Pete Batard 5e98c8b1a3 r99: DDK/sources x64 final fix and additional MSVC fixes (/MT) 2010-01-21 17:38:43 +00:00
Pete Batard e158221159 r90: more compilation environment fixes:
- added Visual Studio 2005 (MSVC8) solution and project files (Orin Eman)
- renamed VS 2008 solution and project files
- fixed "warning: undefined symbols not allowed" for MinGW/cygwin in configure.ac
2010-01-19 00:55:30 +00:00