diff options
-rw-r--r-- | .gitignore | 36 | ||||
-rw-r--r-- | Makefile | 19 | ||||
-rw-r--r-- | Makefile.am | 2 | ||||
-rw-r--r-- | configure.in | 4 | ||||
-rw-r--r-- | libusbhp/Makefile.am | 2 | ||||
-rw-r--r-- | libusbhp/libusbhp.cc | 15 | ||||
-rw-r--r-- | libusbhp/libusbhp.h | 8 | ||||
-rw-r--r-- | libusbhp/libusbhp.vcxproj | 3 | ||||
-rw-r--r-- | test/Makefile.am | 9 | ||||
-rw-r--r-- | test/test.vcxproj | 1 |
10 files changed, 63 insertions, 36 deletions
@@ -1,7 +1,29 @@ -Debug
-test/Debug
-libusbhp/Debug
-libusbhp.sdf
-libusbhp.v11.suo
-*~
-*.o
\ No newline at end of file +Release +Debug +libusbhp.sdf +libusbhp.v11.suo +*~ +*.o +Makefile +Makefile.in +aclocal.m4 +autom4te.cache +config.guess +config.h +config.h.in +config.log +config.status +config.sub +configure +depcomp +install-sh +libtool +libusbhp.pc +.deps +.libs +*.la +*.lo +ltmain.sh +missing +stamp-h1 +test/test
\ No newline at end of file diff --git a/Makefile b/Makefile deleted file mode 100644 index 594d5ee..0000000 --- a/Makefile +++ /dev/null @@ -1,19 +0,0 @@ -CFLAGS=-O2 -CFLAGS+=-g -Wall -Werror -# -# Detect if we're on windows or linux: -# -ifeq ($(OS),Windows_NT) - CC=g++ - CFLAGS+= - LIBS+=-static-libgcc -lsetupapi - EXE=.exe -else - CC=gcc - CFLAGS+=`pkg-config --cflags libudev` - LIBS+=`pkg-config --libs libudev` - EXE= -endif - -all: - ${CC} ${CFLAGS} test/test.c libusbhp/libusbhp.c -o detect${EXE} ${LIBS} diff --git a/Makefile.am b/Makefile.am index 595ab88..80c40a6 100644 --- a/Makefile.am +++ b/Makefile.am @@ -2,7 +2,7 @@ AUTOMAKE_OPTIONS = gnu SUBDIRS = libusbhp test DISTDIRS = libusbhp test -EXTRA_DIST = libusbhp.pc.in +EXTRA_DIST = libusbhp.pc.in libusbhp.sln pkgconfigdir = $(libdir)/pkgconfig pkgconfig_DATA = libusbhp.pc diff --git a/configure.in b/configure.in index 1eb7256..46627f0 100644 --- a/configure.in +++ b/configure.in @@ -2,7 +2,7 @@ AC_INIT(libusbhp/libusbhp.cc) -AM_INIT_AUTOMAKE( libusbhp, 1.0 ) +AM_INIT_AUTOMAKE( libusbhp, 1.0.1 ) dnl ====================== dnl Init pkg-config @@ -25,7 +25,7 @@ fi dnl ====================== dnl Check for udev library dnl ====================== -PKG_CHECK_MODULES(UDEV, udev >= 147) +PKG_CHECK_MODULES(UDEV, libudev >= 147) AC_PROG_CXX diff --git a/libusbhp/Makefile.am b/libusbhp/Makefile.am index 785a34d..e24a51f 100644 --- a/libusbhp/Makefile.am +++ b/libusbhp/Makefile.am @@ -8,3 +8,5 @@ libusbhp_la_SOURCES = \ include_HEADERS = \ libusbhp.h + +EXTRA_DIST = libusbhp.vcxproj
\ No newline at end of file diff --git a/libusbhp/libusbhp.cc b/libusbhp/libusbhp.cc index 9e79220..4058c10 100644 --- a/libusbhp/libusbhp.cc +++ b/libusbhp/libusbhp.cc @@ -28,7 +28,6 @@ #ifdef __linux__ #include <poll.h> -#include <libudev.h> #include <stdio.h> #include <stdlib.h> #include <string.h> @@ -53,7 +52,13 @@ #endif/*_WIN32*/ +#ifdef __cplusplus +extern "C" { +#endif + #ifdef __linux__ +#include <libudev.h> + struct dev_list_t { char *path; unsigned short vid; @@ -105,13 +110,13 @@ static void dev_list_add(struct libusbhp_t *h, const char *path, static int dev_list_remove(struct libusbhp_t *h, const char *path) { struct dev_list_t *p = h->devlist; - if(!p) return; + if(!p) return 1; if(!strcmp(p->path, path)) { h->devlist = p->next; free(p->path); free(p); - return; + return 0; } while(p->next) { @@ -438,3 +443,7 @@ void libusbhp_register_hotplug_listeners(struct libusbhp_t *handle, handle->detach = disconnected_cb; handle->user_data = user_data; } + +#ifdef __cplusplus +} +#endif diff --git a/libusbhp/libusbhp.h b/libusbhp/libusbhp.h index 2df287e..646f2ec 100644 --- a/libusbhp/libusbhp.h +++ b/libusbhp/libusbhp.h @@ -43,6 +43,11 @@ #include <sys/time.h> #endif +#ifdef __cplusplus +extern "C" { +#endif + + struct libusbhp_t; struct libusbhp_device_t { @@ -69,6 +74,9 @@ EXPORT libusbhp_hotplug_cb_fn disconnected_cb, void *user_data); +#ifdef __cplusplus +} +#endif /*** // Libusbx implementation: diff --git a/libusbhp/libusbhp.vcxproj b/libusbhp/libusbhp.vcxproj index fd5527c..6dca199 100644 --- a/libusbhp/libusbhp.vcxproj +++ b/libusbhp/libusbhp.vcxproj @@ -73,13 +73,14 @@ <Optimization>MaxSpeed</Optimization>
<FunctionLevelLinking>true</FunctionLevelLinking>
<IntrinsicFunctions>true</IntrinsicFunctions>
- <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBUSBHOTPLUG_EXPORTS;%(PreprocessorDefinitions)</PreprocessorDefinitions>
+ <PreprocessorDefinitions>WIN32;NDEBUG;_WINDOWS;_USRDLL;LIBUSBHOTPLUG_EXPORTS;BUILD_DLL;%(PreprocessorDefinitions)</PreprocessorDefinitions>
</ClCompile>
<Link>
<SubSystem>Windows</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
+ <AdditionalDependencies>setupapi.lib;%(AdditionalDependencies)</AdditionalDependencies>
</Link>
</ItemDefinitionGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.targets" />
diff --git a/test/Makefile.am b/test/Makefile.am index 00229f7..5725160 100644 --- a/test/Makefile.am +++ b/test/Makefile.am @@ -1,7 +1,10 @@ -bin_PROGRAMS = test +bin_PROGRAMS = hptest -test_LDADD = ../libusbhp/libusbhp.la -test_SOURCES = \ +hptest_LDADD = $(UDEV_LIBS) ../libusbhp/libusbhp.la +hptest_CXXFLAGS = -I../libusbhp $(UDEV_CFLAGS) +hptest_SOURCES = \ test.cc include_HEADERS = + +EXTRA_DIST = test.vcxproj diff --git a/test/test.vcxproj b/test/test.vcxproj index be61eef..db858cd 100644 --- a/test/test.vcxproj +++ b/test/test.vcxproj @@ -52,6 +52,7 @@ </PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
<LinkIncremental>false</LinkIncremental>
+ <IncludePath>../libusbhp;$(IncludePath)</IncludePath>
</PropertyGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'">
<ClCompile>
|