- Updated MSVC projects to MSVC2012.

- Changed from libusb-1.0 to libusbx.
- Upgraded to C++11 (defined as C++0x for backwards compatibility with gcc < 4.7).
alt_setting-error
Benjamin Dobell 2013-01-22 23:55:29 +11:00 committed by ben
parent 31b1b0b2b0
commit 4d850a272a
21 changed files with 3759 additions and 2300 deletions

View File

@ -73,6 +73,8 @@ macx {
}
}
QMAKE_CXXFLAGS += -std=c++0x
unix:LIBS += -lz ../libpit/libpit-1.4.a
win32:LIBS += ../Win32/Release/lib/libpit.lib

View File

@ -18,9 +18,11 @@
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Debug|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">

View File

@ -1,6 +1,6 @@
AUTOMAKE_OPTIONS = subdir-objects
ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS}
AM_CPPFLAGS = $(DEPS_CFLAGS) -I../libpit/Source
AM_CPPFLAGS = $(DEPS_CFLAGS) -std=c++0x -I../libpit/Source
STATIC_LIBS = ../libpit/libpit-1.4.a
bin_PROGRAMS = heimdall

View File

@ -245,7 +245,7 @@ top_srcdir = @top_srcdir@
udevadminstalled = @udevadminstalled@
AUTOMAKE_OPTIONS = subdir-objects
ACLOCAL_AMFLAGS = ${ACLOCAL_FLAGS}
AM_CPPFLAGS = $(DEPS_CFLAGS) -I../libpit/Source
AM_CPPFLAGS = $(DEPS_CFLAGS) -std=c++0x -I../libpit/Source
STATIC_LIBS = ../libpit/libpit-1.4.a
heimdall_SOURCES = source/Arguments.cpp \
source/BridgeManager.cpp \

4
heimdall/aclocal.m4 vendored
View File

@ -13,8 +13,8 @@
m4_ifndef([AC_AUTOCONF_VERSION],
[m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.67],,
[m4_warning([this file was generated for autoconf 2.67.
m4_if(m4_defn([AC_AUTOCONF_VERSION]), [2.63],,
[m4_warning([this file was generated for autoconf 2.63.
You have another version of autoconf. It may work, but is not guaranteed to.
If you have problems, you may need to regenerate the build system entirely.
To do so, use the procedure documented by the package, typically `autoreconf'.])])

File diff suppressed because it is too large Load Diff

View File

@ -554,7 +554,7 @@ m4trace:/usr/share/aclocal/libtool.m4:1841: -1- AU_DEFUN([AC_LIBTOOL_DLOPEN_SELF
m4trace:/usr/share/aclocal/libtool.m4:1841: -1- AC_DEFUN([AC_LIBTOOL_DLOPEN_SELF], [AC_DIAGNOSE([obsolete], [The macro `AC_LIBTOOL_DLOPEN_SELF' is obsolete.
You should run autoupdate.])dnl
m4_if($#, 0, [LT_SYS_DLOPEN_SELF], [LT_SYS_DLOPEN_SELF($@)])])
m4trace:/usr/share/aclocal/libtool.m4:2741: -1- AC_DEFUN([_LT_PATH_TOOL_PREFIX], [m4_require([_LT_DECL_EGREP])dnl
m4trace:/usr/share/aclocal/libtool.m4:2732: -1- AC_DEFUN([_LT_PATH_TOOL_PREFIX], [m4_require([_LT_DECL_EGREP])dnl
AC_MSG_CHECKING([for $1])
AC_CACHE_VAL(lt_cv_path_MAGIC_CMD,
[case $MAGIC_CMD in
@ -613,11 +613,11 @@ fi
_LT_DECL([], [MAGIC_CMD], [0],
[Used to examine libraries when file_magic_cmd begins with "file"])dnl
])
m4trace:/usr/share/aclocal/libtool.m4:2803: -1- AU_DEFUN([AC_PATH_TOOL_PREFIX], [m4_if($#, 0, [_LT_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX($@)])])
m4trace:/usr/share/aclocal/libtool.m4:2803: -1- AC_DEFUN([AC_PATH_TOOL_PREFIX], [AC_DIAGNOSE([obsolete], [The macro `AC_PATH_TOOL_PREFIX' is obsolete.
m4trace:/usr/share/aclocal/libtool.m4:2794: -1- AU_DEFUN([AC_PATH_TOOL_PREFIX], [m4_if($#, 0, [_LT_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX($@)])])
m4trace:/usr/share/aclocal/libtool.m4:2794: -1- AC_DEFUN([AC_PATH_TOOL_PREFIX], [AC_DIAGNOSE([obsolete], [The macro `AC_PATH_TOOL_PREFIX' is obsolete.
You should run autoupdate.])dnl
m4_if($#, 0, [_LT_PATH_TOOL_PREFIX], [_LT_PATH_TOOL_PREFIX($@)])])
m4trace:/usr/share/aclocal/libtool.m4:2826: -1- AC_DEFUN([LT_PATH_LD], [AC_REQUIRE([AC_PROG_CC])dnl
m4trace:/usr/share/aclocal/libtool.m4:2817: -1- AC_DEFUN([LT_PATH_LD], [AC_REQUIRE([AC_PROG_CC])dnl
AC_REQUIRE([AC_CANONICAL_HOST])dnl
AC_REQUIRE([AC_CANONICAL_BUILD])dnl
m4_require([_LT_DECL_SED])dnl
@ -702,15 +702,15 @@ AC_SUBST([LD])
_LT_TAGDECL([], [LD], [1], [The linker used to build libraries])
])
m4trace:/usr/share/aclocal/libtool.m4:2914: -1- AU_DEFUN([AM_PROG_LD], [m4_if($#, 0, [LT_PATH_LD], [LT_PATH_LD($@)])])
m4trace:/usr/share/aclocal/libtool.m4:2914: -1- AC_DEFUN([AM_PROG_LD], [AC_DIAGNOSE([obsolete], [The macro `AM_PROG_LD' is obsolete.
m4trace:/usr/share/aclocal/libtool.m4:2905: -1- AU_DEFUN([AM_PROG_LD], [m4_if($#, 0, [LT_PATH_LD], [LT_PATH_LD($@)])])
m4trace:/usr/share/aclocal/libtool.m4:2905: -1- AC_DEFUN([AM_PROG_LD], [AC_DIAGNOSE([obsolete], [The macro `AM_PROG_LD' is obsolete.
You should run autoupdate.])dnl
m4_if($#, 0, [LT_PATH_LD], [LT_PATH_LD($@)])])
m4trace:/usr/share/aclocal/libtool.m4:2915: -1- AU_DEFUN([AC_PROG_LD], [m4_if($#, 0, [LT_PATH_LD], [LT_PATH_LD($@)])])
m4trace:/usr/share/aclocal/libtool.m4:2915: -1- AC_DEFUN([AC_PROG_LD], [AC_DIAGNOSE([obsolete], [The macro `AC_PROG_LD' is obsolete.
m4trace:/usr/share/aclocal/libtool.m4:2906: -1- AU_DEFUN([AC_PROG_LD], [m4_if($#, 0, [LT_PATH_LD], [LT_PATH_LD($@)])])
m4trace:/usr/share/aclocal/libtool.m4:2906: -1- AC_DEFUN([AC_PROG_LD], [AC_DIAGNOSE([obsolete], [The macro `AC_PROG_LD' is obsolete.
You should run autoupdate.])dnl
m4_if($#, 0, [LT_PATH_LD], [LT_PATH_LD($@)])])
m4trace:/usr/share/aclocal/libtool.m4:3179: -1- AC_DEFUN([LT_PATH_NM], [AC_REQUIRE([AC_PROG_CC])dnl
m4trace:/usr/share/aclocal/libtool.m4:3170: -1- AC_DEFUN([LT_PATH_NM], [AC_REQUIRE([AC_PROG_CC])dnl
AC_CACHE_CHECK([for BSD- or MS-compatible name lister (nm)], lt_cv_path_NM,
[if test -n "$NM"; then
# Let the user override the test.
@ -785,15 +785,15 @@ AC_CACHE_CHECK([the name lister ($NM) interface], [lt_cv_nm_interface],
fi
rm -f conftest*])
])
m4trace:/usr/share/aclocal/libtool.m4:3257: -1- AU_DEFUN([AM_PROG_NM], [m4_if($#, 0, [LT_PATH_NM], [LT_PATH_NM($@)])])
m4trace:/usr/share/aclocal/libtool.m4:3257: -1- AC_DEFUN([AM_PROG_NM], [AC_DIAGNOSE([obsolete], [The macro `AM_PROG_NM' is obsolete.
m4trace:/usr/share/aclocal/libtool.m4:3248: -1- AU_DEFUN([AM_PROG_NM], [m4_if($#, 0, [LT_PATH_NM], [LT_PATH_NM($@)])])
m4trace:/usr/share/aclocal/libtool.m4:3248: -1- AC_DEFUN([AM_PROG_NM], [AC_DIAGNOSE([obsolete], [The macro `AM_PROG_NM' is obsolete.
You should run autoupdate.])dnl
m4_if($#, 0, [LT_PATH_NM], [LT_PATH_NM($@)])])
m4trace:/usr/share/aclocal/libtool.m4:3258: -1- AU_DEFUN([AC_PROG_NM], [m4_if($#, 0, [LT_PATH_NM], [LT_PATH_NM($@)])])
m4trace:/usr/share/aclocal/libtool.m4:3258: -1- AC_DEFUN([AC_PROG_NM], [AC_DIAGNOSE([obsolete], [The macro `AC_PROG_NM' is obsolete.
m4trace:/usr/share/aclocal/libtool.m4:3249: -1- AU_DEFUN([AC_PROG_NM], [m4_if($#, 0, [LT_PATH_NM], [LT_PATH_NM($@)])])
m4trace:/usr/share/aclocal/libtool.m4:3249: -1- AC_DEFUN([AC_PROG_NM], [AC_DIAGNOSE([obsolete], [The macro `AC_PROG_NM' is obsolete.
You should run autoupdate.])dnl
m4_if($#, 0, [LT_PATH_NM], [LT_PATH_NM($@)])])
m4trace:/usr/share/aclocal/libtool.m4:3267: -1- AC_DEFUN([LT_LIB_M], [AC_REQUIRE([AC_CANONICAL_HOST])dnl
m4trace:/usr/share/aclocal/libtool.m4:3258: -1- AC_DEFUN([LT_LIB_M], [AC_REQUIRE([AC_CANONICAL_HOST])dnl
LIBM=
case $host in
*-*-beos* | *-*-cygwin* | *-*-pw32* | *-*-darwin*)
@ -809,28 +809,28 @@ case $host in
esac
AC_SUBST([LIBM])
])
m4trace:/usr/share/aclocal/libtool.m4:3286: -1- AU_DEFUN([AC_CHECK_LIBM], [m4_if($#, 0, [LT_LIB_M], [LT_LIB_M($@)])])
m4trace:/usr/share/aclocal/libtool.m4:3286: -1- AC_DEFUN([AC_CHECK_LIBM], [AC_DIAGNOSE([obsolete], [The macro `AC_CHECK_LIBM' is obsolete.
m4trace:/usr/share/aclocal/libtool.m4:3277: -1- AU_DEFUN([AC_CHECK_LIBM], [m4_if($#, 0, [LT_LIB_M], [LT_LIB_M($@)])])
m4trace:/usr/share/aclocal/libtool.m4:3277: -1- AC_DEFUN([AC_CHECK_LIBM], [AC_DIAGNOSE([obsolete], [The macro `AC_CHECK_LIBM' is obsolete.
You should run autoupdate.])dnl
m4_if($#, 0, [LT_LIB_M], [LT_LIB_M($@)])])
m4trace:/usr/share/aclocal/libtool.m4:6987: -1- AC_DEFUN([LT_PROG_GCJ], [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
m4trace:/usr/share/aclocal/libtool.m4:6970: -1- AC_DEFUN([LT_PROG_GCJ], [m4_ifdef([AC_PROG_GCJ], [AC_PROG_GCJ],
[m4_ifdef([A][M_PROG_GCJ], [A][M_PROG_GCJ],
[AC_CHECK_TOOL(GCJ, gcj,)
test "x${GCJFLAGS+set}" = xset || GCJFLAGS="-g -O2"
AC_SUBST(GCJFLAGS)])])[]dnl
])
m4trace:/usr/share/aclocal/libtool.m4:6996: -1- AU_DEFUN([LT_AC_PROG_GCJ], [m4_if($#, 0, [LT_PROG_GCJ], [LT_PROG_GCJ($@)])])
m4trace:/usr/share/aclocal/libtool.m4:6996: -1- AC_DEFUN([LT_AC_PROG_GCJ], [AC_DIAGNOSE([obsolete], [The macro `LT_AC_PROG_GCJ' is obsolete.
m4trace:/usr/share/aclocal/libtool.m4:6979: -1- AU_DEFUN([LT_AC_PROG_GCJ], [m4_if($#, 0, [LT_PROG_GCJ], [LT_PROG_GCJ($@)])])
m4trace:/usr/share/aclocal/libtool.m4:6979: -1- AC_DEFUN([LT_AC_PROG_GCJ], [AC_DIAGNOSE([obsolete], [The macro `LT_AC_PROG_GCJ' is obsolete.
You should run autoupdate.])dnl
m4_if($#, 0, [LT_PROG_GCJ], [LT_PROG_GCJ($@)])])
m4trace:/usr/share/aclocal/libtool.m4:7003: -1- AC_DEFUN([LT_PROG_RC], [AC_CHECK_TOOL(RC, windres,)
m4trace:/usr/share/aclocal/libtool.m4:6986: -1- AC_DEFUN([LT_PROG_RC], [AC_CHECK_TOOL(RC, windres,)
])
m4trace:/usr/share/aclocal/libtool.m4:7008: -1- AU_DEFUN([LT_AC_PROG_RC], [m4_if($#, 0, [LT_PROG_RC], [LT_PROG_RC($@)])])
m4trace:/usr/share/aclocal/libtool.m4:7008: -1- AC_DEFUN([LT_AC_PROG_RC], [AC_DIAGNOSE([obsolete], [The macro `LT_AC_PROG_RC' is obsolete.
m4trace:/usr/share/aclocal/libtool.m4:6991: -1- AU_DEFUN([LT_AC_PROG_RC], [m4_if($#, 0, [LT_PROG_RC], [LT_PROG_RC($@)])])
m4trace:/usr/share/aclocal/libtool.m4:6991: -1- AC_DEFUN([LT_AC_PROG_RC], [AC_DIAGNOSE([obsolete], [The macro `LT_AC_PROG_RC' is obsolete.
You should run autoupdate.])dnl
m4_if($#, 0, [LT_PROG_RC], [LT_PROG_RC($@)])])
m4trace:/usr/share/aclocal/libtool.m4:7119: -1- AU_DEFUN([LT_AC_PROG_SED], [m4_if($#, 0, [AC_PROG_SED], [AC_PROG_SED($@)])])
m4trace:/usr/share/aclocal/libtool.m4:7119: -1- AC_DEFUN([LT_AC_PROG_SED], [AC_DIAGNOSE([obsolete], [The macro `LT_AC_PROG_SED' is obsolete.
m4trace:/usr/share/aclocal/libtool.m4:7102: -1- AU_DEFUN([LT_AC_PROG_SED], [m4_if($#, 0, [AC_PROG_SED], [AC_PROG_SED($@)])])
m4trace:/usr/share/aclocal/libtool.m4:7102: -1- AC_DEFUN([LT_AC_PROG_SED], [AC_DIAGNOSE([obsolete], [The macro `LT_AC_PROG_SED' is obsolete.
You should run autoupdate.])dnl
m4_if($#, 0, [AC_PROG_SED], [AC_PROG_SED($@)])])
m4trace:/usr/share/aclocal/ltdl.m4:16: -1- AC_DEFUN([LT_CONFIG_LTDL_DIR], [AC_BEFORE([$0], [LTDL_INIT])
@ -1085,7 +1085,7 @@ AC_CACHE_CHECK([whether deplibs are loaded by dlopen],
freebsd* | dragonfly*)
lt_cv_sys_dlopen_deplibs=yes
;;
gnu* | linux* | k*bsd*-gnu | kopensolaris*-gnu)
gnu* | linux* | k*bsd*-gnu)
# GNU and its variants, using gnu ld.so (Glibc)
lt_cv_sys_dlopen_deplibs=yes
;;
@ -1105,7 +1105,7 @@ AC_CACHE_CHECK([whether deplibs are loaded by dlopen],
# at 6.2 and later dlopen does load deplibs.
lt_cv_sys_dlopen_deplibs=yes
;;
netbsd* | netbsdelf*-gnu)
netbsd*)
lt_cv_sys_dlopen_deplibs=yes
;;
openbsd*)
@ -1504,12 +1504,9 @@ m4trace:/usr/share/aclocal/lt~obsolete.m4:89: -1- AC_DEFUN([AC_LIBTOOL_LANG_RC_C
m4trace:/usr/share/aclocal/lt~obsolete.m4:90: -1- AC_DEFUN([_LT_AC_LANG_RC_CONFIG])
m4trace:/usr/share/aclocal/lt~obsolete.m4:91: -1- AC_DEFUN([AC_LIBTOOL_CONFIG])
m4trace:/usr/share/aclocal/lt~obsolete.m4:92: -1- AC_DEFUN([_LT_AC_FILE_LTDLL_C])
m4trace:/usr/share/aclocal/pkg.m4:27: -1- AC_DEFUN([PKG_PROG_PKG_CONFIG], [m4_pattern_forbid([^_?PKG_[A-Z_]+$])
m4trace:/usr/share/aclocal/pkg.m4:26: -1- AC_DEFUN([PKG_PROG_PKG_CONFIG], [m4_pattern_forbid([^_?PKG_[A-Z_]+$])
m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])
AC_ARG_VAR([PKG_CONFIG_PATH], [directories to add to pkg-config's search path])
AC_ARG_VAR([PKG_CONFIG_LIBDIR], [path overriding pkg-config's built-in search path])
AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl
if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
fi
@ -1522,23 +1519,24 @@ if test -n "$PKG_CONFIG"; then
AC_MSG_RESULT([no])
PKG_CONFIG=""
fi
fi[]dnl
])
m4trace:/usr/share/aclocal/pkg.m4:59: -1- AC_DEFUN([PKG_CHECK_EXISTS], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
m4trace:/usr/share/aclocal/pkg.m4:56: -1- AC_DEFUN([PKG_CHECK_EXISTS], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
if test -n "$PKG_CONFIG" && \
AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
m4_default([$2], [:])
m4_ifval([$2], [$2], [:])
m4_ifvaln([$3], [else
$3])dnl
fi])
m4trace:/usr/share/aclocal/pkg.m4:84: -1- AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])
m4trace:/usr/share/aclocal/pkg.m4:82: -1- AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
_pkg_short_errors_supported=yes
else
_pkg_short_errors_supported=no
fi[]dnl
])
m4trace:/usr/share/aclocal/pkg.m4:104: -1- AC_DEFUN([PKG_CHECK_MODULES], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
m4trace:/usr/share/aclocal/pkg.m4:102: -1- AC_DEFUN([PKG_CHECK_MODULES], [AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
@ -1553,7 +1551,6 @@ and $1[]_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.])
if test $pkg_failed = yes; then
AC_MSG_RESULT([no])
_PKG_SHORT_ERRORS_SUPPORTED
if test $_pkg_short_errors_supported = yes; then
$1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$2" 2>&1`
@ -1563,7 +1560,7 @@ if test $pkg_failed = yes; then
# Put the nasty error message in config.log where it belongs
echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
m4_default([$4], [AC_MSG_ERROR(
ifelse([$4], , [AC_MSG_ERROR(dnl
[Package requirements ($2) were not met:
$$1_PKG_ERRORS
@ -1571,24 +1568,25 @@ $$1_PKG_ERRORS
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
_PKG_TEXT])dnl
])
_PKG_TEXT
])],
[AC_MSG_RESULT([no])
$4])
elif test $pkg_failed = untried; then
AC_MSG_RESULT([no])
m4_default([$4], [AC_MSG_FAILURE(
ifelse([$4], , [AC_MSG_FAILURE(dnl
[The pkg-config script could not be found or is too old. Make sure it
is in your PATH or set the PKG_CONFIG environment variable to the full
path to pkg-config.
_PKG_TEXT
To get pkg-config, see <http://pkg-config.freedesktop.org/>.])dnl
])
To get pkg-config, see <http://pkg-config.freedesktop.org/>.])],
[$4])
else
$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
$1[]_LIBS=$pkg_cv_[]$1[]_LIBS
AC_MSG_RESULT([yes])
$3
ifelse([$3], , :, [$3])
fi[]dnl
])
m4trace:/usr/share/aclocal-1.11/amversion.m4:14: -1- AC_DEFUN([AM_AUTOMAKE_VERSION], [am__api_version='1.11'
@ -2203,7 +2201,6 @@ m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_VERSION$])
m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_STRING$])
m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_URL$])
m4trace:configure.ac:1: -1- m4_pattern_allow([^exec_prefix$])
m4trace:configure.ac:1: -1- m4_pattern_allow([^prefix$])
m4trace:configure.ac:1: -1- m4_pattern_allow([^program_transform_name$])
@ -2231,7 +2228,6 @@ m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_TARNAME$])
m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_VERSION$])
m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_STRING$])
m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_BUGREPORT$])
m4trace:configure.ac:1: -1- m4_pattern_allow([^PACKAGE_URL$])
m4trace:configure.ac:1: -1- m4_pattern_allow([^DEFS$])
m4trace:configure.ac:1: -1- m4_pattern_allow([^ECHO_C$])
m4trace:configure.ac:1: -1- m4_pattern_allow([^ECHO_N$])
@ -2245,8 +2241,6 @@ m4trace:configure.ac:3: -1- PKG_PROG_PKG_CONFIG
m4trace:configure.ac:3: -1- m4_pattern_forbid([^_?PKG_[A-Z_]+$])
m4trace:configure.ac:3: -1- m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
m4trace:configure.ac:3: -1- m4_pattern_allow([^PKG_CONFIG$])
m4trace:configure.ac:3: -1- m4_pattern_allow([^PKG_CONFIG_PATH$])
m4trace:configure.ac:3: -1- m4_pattern_allow([^PKG_CONFIG_LIBDIR$])
m4trace:configure.ac:3: -1- m4_pattern_allow([^PKG_CONFIG$])
m4trace:configure.ac:3: -1- m4_pattern_allow([^DEPS_CFLAGS$])
m4trace:configure.ac:3: -1- m4_pattern_allow([^DEPS_LIBS$])
@ -2254,7 +2248,7 @@ m4trace:configure.ac:3: -1- PKG_CHECK_EXISTS([libusb-1.0 >= 1.0.8], [pkg_cv_[]DE
m4trace:configure.ac:3: -1- PKG_CHECK_EXISTS([libusb-1.0 >= 1.0.8], [pkg_cv_[]DEPS_LIBS=`$PKG_CONFIG --[]libs "libusb-1.0 >= 1.0.8" 2>/dev/null`], [pkg_failed=yes])
m4trace:configure.ac:3: -1- _PKG_SHORT_ERRORS_SUPPORTED
m4trace:configure.ac:4: -1- _m4_warn([obsolete], [The macro `AC_PROGRAM_CHECK' is obsolete.
You should run autoupdate.], [../../lib/autoconf/oldnames.m4:41: AC_PROGRAM_CHECK is expanded from...
You should run autoupdate.], [../../lib/autoconf/oldnames.m4:62: AC_PROGRAM_CHECK is expanded from...
configure.ac:4: the top level])
m4trace:configure.ac:4: -1- m4_pattern_allow([^udevadminstalled$])
m4trace:configure.ac:5: -1- m4_pattern_allow([^build$])
@ -2273,7 +2267,7 @@ m4trace:configure.ac:6: -1- AM_INIT_AUTOMAKE([1.10 -Wall no-define foreign])
m4trace:configure.ac:6: -1- m4_pattern_allow([^AM_[A-Z]+FLAGS$])
m4trace:configure.ac:6: -1- AM_SET_CURRENT_AUTOMAKE_VERSION
m4trace:configure.ac:6: -1- AM_AUTOMAKE_VERSION([1.11.1])
m4trace:configure.ac:6: -1- _AM_AUTOCONF_VERSION([2.67])
m4trace:configure.ac:6: -1- _AM_AUTOCONF_VERSION([2.63])
m4trace:configure.ac:6: -1- m4_pattern_allow([^INSTALL_PROGRAM$])
m4trace:configure.ac:6: -1- m4_pattern_allow([^INSTALL_SCRIPT$])
m4trace:configure.ac:6: -1- m4_pattern_allow([^INSTALL_DATA$])
@ -2455,7 +2449,6 @@ m4trace:configure.ac:10: -1- m4_pattern_allow([^CPP$])
m4trace:configure.ac:10: -1- m4_pattern_allow([^CPPFLAGS$])
m4trace:configure.ac:10: -1- m4_pattern_allow([^CPP$])
m4trace:configure.ac:10: -1- m4_pattern_allow([^STDC_HEADERS$])
m4trace:configure.ac:10: -1- m4_pattern_allow([^HAVE_DLFCN_H$])
m4trace:configure.ac:10: -1- LT_LANG([CXX])
m4trace:configure.ac:10: -1- LT_SUPPORTED_TAG([CXX])
m4trace:configure.ac:10: -1- m4_pattern_allow([^CXX$])

View File

@ -20,12 +20,14 @@
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>Application</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">
@ -60,16 +62,16 @@
</PrecompiledHeaderFile>
<PrecompiledHeaderOutputFile>
</PrecompiledHeaderOutputFile>
<AdditionalIncludeDirectories>..\libusb-1.0\include;..\libpit\Source</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>..\libusbx-1.0\include;..\libpit\Source</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
<GenerateDebugInformation>true</GenerateDebugInformation>
<AdditionalDependencies>libusb-1.0.lib;libpit.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(SolutionDir)libusb-1.0\lib\$(Platform)\$(Configuration)\;$(SolutionDir)$(Platform)\$(Configuration)\lib\</AdditionalLibraryDirectories>
<AdditionalLibraryDirectories>$(SolutionDir)libusbx-1.0\lib\$(Platform)\Release\;$(SolutionDir)$(Platform)\$(Configuration)\lib\</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>xcopy /y $(SolutionDir)libusb-1.0\lib\$(Platform)\$(Configuration)\libusb-1.0.dll $(SolutionDir)$(Platform)\$(Configuration)\</Command>
<Command>xcopy /y $(SolutionDir)libusbx-1.0\lib\$(Platform)\Release\libusb-1.0.dll $(SolutionDir)$(Platform)\$(Configuration)\</Command>
</PostBuildEvent>
</ItemDefinitionGroup>
<ItemDefinitionGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'">
@ -85,7 +87,7 @@
</PrecompiledHeaderFile>
<PrecompiledHeaderOutputFile>
</PrecompiledHeaderOutputFile>
<AdditionalIncludeDirectories>..\libusb-1.0\include;..\libpit\Source</AdditionalIncludeDirectories>
<AdditionalIncludeDirectories>..\libusbx-1.0\include;..\libpit\Source</AdditionalIncludeDirectories>
</ClCompile>
<Link>
<SubSystem>Console</SubSystem>
@ -93,7 +95,7 @@
<EnableCOMDATFolding>true</EnableCOMDATFolding>
<OptimizeReferences>true</OptimizeReferences>
<AdditionalDependencies>libusb-1.0.lib;libpit.lib;%(AdditionalDependencies)</AdditionalDependencies>
<AdditionalLibraryDirectories>$(SolutionDir)libusb-1.0\lib\$(Platform)\$(Configuration)\;$(SolutionDir)$(Platform)\$(Configuration)\lib\</AdditionalLibraryDirectories>
<AdditionalLibraryDirectories>$(SolutionDir)libusbx-1.0\lib\$(Platform)\Release\;$(SolutionDir)$(Platform)\$(Configuration)\lib\</AdditionalLibraryDirectories>
</Link>
<PostBuildEvent>
<Command>xcopy /y $(SolutionDir)libusb-1.0\lib\$(Platform)\$(Configuration)\libusb-1.0.dll $(SolutionDir)$(Platform)\$(Configuration)\</Command>

View File

@ -22,8 +22,10 @@
#define HEIMDALL_H
#ifdef OS_WINDOWS
#include <Windows.h>
#undef GetBinaryType
#else
#include "../config.h"
@ -37,4 +39,12 @@
#endif
#if (!(defined _MSC_VER) || (_MSC_VER < 1700))
#ifndef nullptr
#define nullptr 0
#endif
#endif
#endif

View File

@ -25,7 +25,16 @@
#pragma warning(disable : 4996)
#endif
#if (!(defined _MSC_VER) || (_MSC_VER < 1700))
#ifndef nullptr
#define nullptr 0
#endif
#endif
// C/C++ Standard Library
#include <cstring>
#include <string>
#include <vector>

View File

@ -26,12 +26,14 @@
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>true</UseDebugLibraries>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
<ConfigurationType>StaticLibrary</ConfigurationType>
<UseDebugLibraries>false</UseDebugLibraries>
<WholeProgramOptimization>true</WholeProgramOptimization>
<CharacterSet>Unicode</CharacterSet>
<PlatformToolset>v110</PlatformToolset>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.props" />
<ImportGroup Label="ExtensionSettings">

View File

@ -1,31 +0,0 @@
Copyright (C) 2007-2009 Daniel Drake <dsd@gentoo.org>
Copyright (c) 2001 Johannes Erdfelt <johannes@erdfelt.com>
Copyright (C) 2008-2010 Nathan Hjelm <hjelmn@users.sourceforge.net>
Copyright (C) 2009-2010 Pete Batard <pbatard@gmail.com>
Copyright (C) 2010 Michael Plante <michael.plante@gmail.com>
Other contributors:
Alex Vatchenko
Artem Egorkine
Aurelien Jarno
Bastien Nocera
David Engraf
David Moore
Felipe Balbi
Francesco Montorsi
Hans Ulrich Niedermann
Hoi-Ho Chan
Ludovic Rousseau
Martin Koegler
Mikhail Gusarov
Peter Stuge
Rob Walker
Toby Peterson
Vasily Khoruzhick
Orin Eman
Graeme Gill
Travis Robinson
Jere Knaappila
Francesco Montorsi
Bastien Nocera
Xiaofan Chen

54
libusbx-1.0/AUTHORS Normal file
View File

@ -0,0 +1,54 @@
<!-- saved from url=(0053)https://raw.github.com/libusbx/libusbx/master/AUTHORS -->
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">Copyright © 2001 Johannes Erdfelt &lt;johannes@erdfelt.com&gt;
Copyright © 2007-2009 Daniel Drake &lt;dsd@gentoo.org&gt;
Copyright © 2010-2012 Peter Stuge &lt;peter@stuge.se&gt;
Copyright © 2008-2011 Nathan Hjelm &lt;hjelmn@users.sourceforge.net&gt;
Copyright © 2009-2012 Pete Batard &lt;pete@akeo.ie&gt;
Copyright © 2009-2012 Ludovic Rousseau &lt;ludovic.rousseau@gmail.com&gt;
Copyright © 2010-2012 Michael Plante &lt;michael.plante@gmail.com&gt;
Copyright © 2011-2012 Hans de Goede &lt;hdegoede@redhat.com&gt;
Copyright © 2012 Martin Pieuchot &lt;mpi@openbsd.org&gt;
Other contributors:
Alan Ott
Alan Stern
Alex Vatchenko
Anthony Clay
Artem Egorkine
Aurelien Jarno
Bastien Nocera
Dave Camarillo
David Engraf
David Moore
Davidlohr Bueso
Felipe Balbi
Francesco Montorsi
Graeme Gill
Hans Ulrich Niedermann
Hector Martin
Hoi-Ho Chan
James Hanko
Konrad Rzepecki
Lars Wirzenius
Martin Koegler
Matthias Bolte
Mike Frysinger
Mikhail Gusarov
Nicholas Corgan
Orin Eman
Pekka Nikander
Rob Walker
Sean McBride
Sebastian Pipping
Simon Haggett
Thomas Röfer
Toby Gray
Toby Peterson
Trygve Laugstøl
Uri Lublin
Vasily Khoruzhick
Vitali Lovich
Xiaofan Chen
Роман Донченко
</pre></body></html>

View File

@ -1,7 +1,9 @@
/*
* Public libusb header file
* Copyright (C) 2007-2008 Daniel Drake <dsd@gentoo.org>
* Copyright (c) 2001 Johannes Erdfelt <johannes@erdfelt.com>
* Public libusbx header file
* Copyright © 2001 Johannes Erdfelt <johannes@erdfelt.com>
* Copyright © 2007-2008 Daniel Drake <dsd@gentoo.org>
* Copyright © 2012 Pete Batard <pete@akeo.ie>
* For more information, please visit: http://libusbx.org
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
@ -18,12 +20,14 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#ifndef __LIBUSB_H__
#define __LIBUSB_H__
#ifndef LIBUSB_H
#define LIBUSB_H
#ifdef _MSC_VER
/* on MS environments, the inline keyword is available in C++ only */
#if !defined(__cplusplus)
#define inline __inline
#endif
/* ssize_t is also not available (copy/paste from MinGW) */
#ifndef _SSIZE_T_DEFINED
#define _SSIZE_T_DEFINED
@ -40,6 +44,7 @@
#if defined(_MSC_VER) && (_MSC_VER < 1600) && (!defined(_STDINT)) && (!defined(_STDINT_H))
typedef unsigned __int8 uint8_t;
typedef unsigned __int16 uint16_t;
typedef unsigned __int32 uint32_t;
#else
#include <stdint.h>
#endif
@ -53,7 +58,7 @@ typedef unsigned __int16 uint16_t;
#endif
/* 'interface' might be defined as a macro on Windows, so we need to
* undefine it so as not to break the current libusb API, because
* undefine it so as not to break the current libusbx API, because
* libusb_config_descriptor has an 'interface' member
* As this can be problematic if you include windows.h after libusb.h
* in your sources, we force windows.h to be included first. */
@ -66,14 +71,14 @@ typedef unsigned __int16 uint16_t;
/** \def LIBUSB_CALL
* \ingroup misc
* libusb's Windows calling convention.
* libusbx's Windows calling convention.
*
* Under Windows, the selection of available compilers and configurations
* means that, unlike other platforms, there is not <em>one true calling
* convention</em> (calling convention: the manner in which parameters are
* passed to funcions in the generated assembly code).
*
* Matching the Windows API itself, libusb uses the WINAPI convention (which
* Matching the Windows API itself, libusbx uses the WINAPI convention (which
* translates to the <tt>stdcall</tt> convention) and guarantees that the
* library is compiled in this way. The public header file also includes
* appropriate annotations so that your own software will use the right
@ -81,7 +86,7 @@ typedef unsigned __int16 uint16_t;
* your codebase.
*
* The one consideration that you must apply in your software is to mark
* all functions which you use as libusb callbacks with this LIBUSB_CALL
* all functions which you use as libusbx callbacks with this LIBUSB_CALL
* annotation, so that they too get compiled for the correct calling
* convention.
*
@ -89,19 +94,44 @@ typedef unsigned __int16 uint16_t;
* means that you can apply it to your code without worrying about
* cross-platform compatibility.
*/
/* LIBUSB_CALL must be defined on both definition and declaration of libusb
/* LIBUSB_CALL must be defined on both definition and declaration of libusbx
* functions. You'd think that declaration would be enough, but cygwin will
* complain about conflicting types unless both are marked this way.
* The placement of this macro is important too; it must appear after the
* return type, before the function name. See internal documentation for
* API_EXPORTED.
*/
#if defined(_WIN32)
#if defined(_WIN32) || defined(__CYGWIN__)
#define LIBUSB_CALL WINAPI
#else
#define LIBUSB_CALL
#endif
/** \def LIBUSBX_API_VERSION
* \ingroup misc
* libusbx's API version.
*
* Since version 1.0.13, to help with feature detection, libusbx defines
* a LIBUSBX_API_VERSION macro that gets increased every time there is a
* significant change to the API, such as the introduction of a new call,
* the definition of a new macro/enum member, or any other element that
* libusbx applications may want to detect at compilation time.
*
* The macro is typically used in an application as follows:
* \code
* #if defined(LIBUSBX_API_VERSION) && (LIBUSBX_API_VERSION >= 0x01001234)
* // Use one of the newer features from the libusbx API
* #endif
* \endcode
*
* Another feature of LIBUSBX_API_VERSION is that it can be used to detect
* whether you are compiling against the libusb or the libusbx library.
*
* Internally, LIBUSBX_API_VERSION is defined as follows:
* (libusbx major << 24) | (libusbx minor << 16) | (16 bit incremental)
*/
#define LIBUSBX_API_VERSION 0x010000FF
#ifdef __cplusplus
extern "C" {
#endif
@ -227,7 +257,10 @@ enum libusb_descriptor_type {
LIBUSB_DT_PHYSICAL = 0x23,
/** Hub descriptor */
LIBUSB_DT_HUB = 0x29
LIBUSB_DT_HUB = 0x29,
/** SuperSpeed Hub descriptor */
LIBUSB_DT_SUPERSPEED_HUB = 0x2A,
};
/* Descriptor sizes per descriptor type */
@ -274,7 +307,7 @@ enum libusb_transfer_type {
};
/** \ingroup misc
* Standard requests, as defined in table 9-3 of the USB2 specifications */
* Standard requests, as defined in table 9-5 of the USB 3.0 specifications */
enum libusb_standard_request {
/** Request status of the specific recipient */
LIBUSB_REQUEST_GET_STATUS = 0x00,
@ -311,7 +344,14 @@ enum libusb_standard_request {
LIBUSB_REQUEST_SET_INTERFACE = 0x0B,
/** Set then report an endpoint's synchronization frame */
LIBUSB_REQUEST_SYNCH_FRAME = 0x0C
LIBUSB_REQUEST_SYNCH_FRAME = 0x0C,
/** Sets both the U1 and U2 Exit Latency */
LIBUSB_REQUEST_SET_SEL = 0x30,
/** Delay from the time a host transmits a packet to the time it is
* received by the device. */
LIBUSB_SET_ISOCH_DELAY = 0x31,
};
/** \ingroup misc
@ -347,7 +387,7 @@ enum libusb_request_recipient {
LIBUSB_RECIPIENT_ENDPOINT = 0x02,
/** Other */
LIBUSB_RECIPIENT_OTHER = 0x03
LIBUSB_RECIPIENT_OTHER = 0x03,
};
#define LIBUSB_ISO_SYNC_TYPE_MASK 0x0C
@ -386,12 +426,12 @@ enum libusb_iso_usage_type {
LIBUSB_ISO_USAGE_TYPE_FEEDBACK = 1,
/** Implicit feedback Data endpoint */
LIBUSB_ISO_USAGE_TYPE_IMPLICIT = 2
LIBUSB_ISO_USAGE_TYPE_IMPLICIT = 2,
};
/** \ingroup desc
* A structure representing the standard USB device descriptor. This
* descriptor is documented in section 9.6.1 of the USB 2.0 specification.
* descriptor is documented in section 9.6.1 of the USB 3.0 specification.
* All multiple-byte fields are represented in host-endian format.
*/
struct libusb_device_descriptor {
@ -445,7 +485,7 @@ struct libusb_device_descriptor {
/** \ingroup desc
* A structure representing the standard USB endpoint descriptor. This
* descriptor is documented in section 9.6.3 of the USB 2.0 specification.
* descriptor is documented in section 9.6.6 of the USB 3.0 specification.
* All multiple-byte fields are represented in host-endian format.
*/
struct libusb_endpoint_descriptor {
@ -485,7 +525,7 @@ struct libusb_endpoint_descriptor {
/** For audio devices only: the address if the synch endpoint */
uint8_t bSynchAddress;
/** Extra descriptors. If libusb encounters unknown endpoint descriptors,
/** Extra descriptors. If libusbx encounters unknown endpoint descriptors,
* it will store them here, should you wish to parse them. */
const unsigned char *extra;
@ -495,7 +535,7 @@ struct libusb_endpoint_descriptor {
/** \ingroup desc
* A structure representing the standard USB interface descriptor. This
* descriptor is documented in section 9.6.5 of the USB 2.0 specification.
* descriptor is documented in section 9.6.5 of the USB 3.0 specification.
* All multiple-byte fields are represented in host-endian format.
*/
struct libusb_interface_descriptor {
@ -535,7 +575,7 @@ struct libusb_interface_descriptor {
* by the bNumEndpoints field. */
const struct libusb_endpoint_descriptor *endpoint;
/** Extra descriptors. If libusb encounters unknown interface descriptors,
/** Extra descriptors. If libusbx encounters unknown interface descriptors,
* it will store them here, should you wish to parse them. */
const unsigned char *extra;
@ -557,7 +597,7 @@ struct libusb_interface {
/** \ingroup desc
* A structure representing the standard USB configuration descriptor. This
* descriptor is documented in section 9.6.3 of the USB 2.0 specification.
* descriptor is documented in section 9.6.3 of the USB 3.0 specification.
* All multiple-byte fields are represented in host-endian format.
*/
struct libusb_config_descriptor {
@ -593,7 +633,7 @@ struct libusb_config_descriptor {
* this array is determined by the bNumInterfaces field. */
const struct libusb_interface *interface;
/** Extra descriptors. If libusb encounters unknown configuration
/** Extra descriptors. If libusbx encounters unknown configuration
* descriptors, it will store them here, should you wish to parse them. */
const unsigned char *extra;
@ -631,33 +671,46 @@ struct libusb_control_setup {
#define LIBUSB_CONTROL_SETUP_SIZE (sizeof(struct libusb_control_setup))
/* libusb */
/* libusbx */
struct libusb_context;
struct libusb_device;
struct libusb_device_handle;
/** \ingroup lib
* Structure providing the version of libusb being used
* Structure providing the version of the libusbx runtime
*/
struct libusb_version {
uint16_t major;
uint16_t minor;
uint16_t micro;
uint16_t nano;
/** Library major version. */
const uint16_t major;
/** Library minor version. */
const uint16_t minor;
/** Library micro version. */
const uint16_t micro;
/** Library nano version. */
const uint16_t nano;
/** Library release candidate suffix string, e.g. "-rc4". */
const char *rc;
/** For ABI compatibility only. */
const char* describe;
};
/** \ingroup lib
* Structure representing a libusb session. The concept of individual libusb
* Structure representing a libusbx session. The concept of individual libusbx
* sessions allows for your program to use two libraries (or dynamically
* load two modules) which both independently use libusb. This will prevent
* interference between the individual libusb users - for example
* interference between the individual libusbx users - for example
* libusb_set_debug() will not affect the other user of the library, and
* libusb_exit() will not destroy resources that the other user is still
* using.
*
* Sessions are created by libusb_init() and destroyed through libusb_exit().
* If your application is guaranteed to only ever include a single libusb
* If your application is guaranteed to only ever include a single libusbx
* user (i.e. you), you do not have to worry about contexts: pass NULL in
* every function call where a context is required. The default context
* will be used.
@ -715,10 +768,10 @@ enum libusb_speed {
};
/** \ingroup misc
* Error codes. Most libusb functions return 0 on success or one of these
* Error codes. Most libusbx functions return 0 on success or one of these
* codes on failure.
* You can use libusb_strerror() to retrieve a short string description of
* a libusb_error enumeration value.
* You can call \ref libusb_error_name() to retrieve a string representation
* of an error code.
*/
enum libusb_error {
/** Success (no error) */
@ -760,11 +813,11 @@ enum libusb_error {
/** Operation not supported or unimplemented on this platform */
LIBUSB_ERROR_NOT_SUPPORTED = -12,
/** Other error */
LIBUSB_ERROR_OTHER = -99
/* NB! Remember to update libusb_error_name()
when adding new error codes here. */
/* IMPORTANT: when adding new values to this enum, remember to
update the libusb_strerror() function implementation! */
/** Other error */
LIBUSB_ERROR_OTHER = -99,
};
/** \ingroup asyncio
@ -791,7 +844,10 @@ enum libusb_transfer_status {
LIBUSB_TRANSFER_NO_DEVICE,
/** Device sent more data than requested */
LIBUSB_TRANSFER_OVERFLOW
LIBUSB_TRANSFER_OVERFLOW,
/* NB! Remember to update libusb_error_name()
when adding new status codes here. */
};
/** \ingroup asyncio
@ -807,7 +863,32 @@ enum libusb_transfer_flags {
* If this flag is set, it is illegal to call libusb_free_transfer()
* from your transfer callback, as this will result in a double-free
* when this flag is acted upon. */
LIBUSB_TRANSFER_FREE_TRANSFER = 1<<2
LIBUSB_TRANSFER_FREE_TRANSFER = 1<<2,
/** Terminate transfers that are a multiple of the endpoint's
* wMaxPacketSize with an extra zero length packet. This is useful
* when a device protocol mandates that each logical request is
* terminated by an incomplete packet (i.e. the logical requests are
* not separated by other means).
*
* This flag only affects host-to-device transfers to bulk and interrupt
* endpoints. In other situations, it is ignored.
*
* This flag only affects transfers with a length that is a multiple of
* the endpoint's wMaxPacketSize. On transfers of other lengths, this
* flag has no effect. Therefore, if you are working with a device that
* needs a ZLP whenever the end of the logical request falls on a packet
* boundary, then it is sensible to set this flag on <em>every</em>
* transfer (you do not have to worry about only setting it on transfers
* that end on the boundary).
*
* This flag is currently only supported on Linux.
* On other systems, libusb_submit_transfer() will return
* LIBUSB_ERROR_NOT_SUPPORTED for every transfer where this flag is set.
*
* Available since libusb-1.0.9.
*/
LIBUSB_TRANSFER_ADD_ZERO_PACKET = 1 << 3,
};
/** \ingroup asyncio
@ -829,7 +910,7 @@ struct libusb_transfer;
* Asynchronous transfer callback function type. When submitting asynchronous
* transfers, you pass a pointer to a callback function of this type via the
* \ref libusb_transfer::callback "callback" member of the libusb_transfer
* structure. libusb will call this function later, when the transfer has
* structure. libusbx will call this function later, when the transfer has
* completed or failed. See \ref asyncio for more information.
* \param transfer The libusb_transfer struct the callback function is being
* notified about.
@ -900,11 +981,40 @@ struct libusb_transfer {
;
};
/** \ingroup misc
* Capabilities supported by this instance of libusb. Test if the loaded
* library supports a given capability by calling
* \ref libusb_has_capability().
*/
enum libusb_capability {
/** The libusb_has_capability() API is available. */
LIBUSB_CAP_HAS_CAPABILITY = 0,
};
/** \ingroup lib
* Log message levels.
* - LIBUSB_LOG_LEVEL_NONE (0) : no messages ever printed by the library (default)
* - LIBUSB_LOG_LEVEL_ERROR (1) : error messages are printed to stderr
* - LIBUSB_LOG_LEVEL_WARNING (2) : warning and error messages are printed to stderr
* - LIBUSB_LOG_LEVEL_INFO (3) : informational messages are printed to stdout, warning
* and error messages are printed to stderr
* - LIBUSB_LOG_LEVEL_DEBUG (4) : debug and informational messages are printed to stdout,
* warnings and errors to stderr
*/
enum libusb_log_level {
LIBUSB_LOG_LEVEL_NONE = 0,
LIBUSB_LOG_LEVEL_ERROR,
LIBUSB_LOG_LEVEL_WARNING,
LIBUSB_LOG_LEVEL_INFO,
LIBUSB_LOG_LEVEL_DEBUG,
};
int LIBUSB_CALL libusb_init(libusb_context **ctx);
void LIBUSB_CALL libusb_exit(libusb_context *ctx);
void LIBUSB_CALL libusb_set_debug(libusb_context *ctx, int level);
const char * LIBUSB_CALL libusb_strerror(enum libusb_error errcode);
const struct libusb_version * LIBUSB_CALL libusb_getversion(void);
const struct libusb_version * LIBUSB_CALL libusb_get_version(void);
int LIBUSB_CALL libusb_has_capability(uint32_t capability);
const char * LIBUSB_CALL libusb_error_name(int errcode);
ssize_t LIBUSB_CALL libusb_get_device_list(libusb_context *ctx,
libusb_device ***list);
@ -930,7 +1040,7 @@ uint8_t LIBUSB_CALL libusb_get_port_number(libusb_device *dev);
libusb_device * LIBUSB_CALL libusb_get_parent(libusb_device *dev);
int LIBUSB_CALL libusb_get_port_path(libusb_context *ctx, libusb_device *dev, uint8_t* path, uint8_t path_length);
uint8_t LIBUSB_CALL libusb_get_device_address(libusb_device *dev);
enum libusb_speed LIBUSB_CALL libusb_get_device_speed(libusb_device *dev);
int LIBUSB_CALL libusb_get_device_speed(libusb_device *dev);
int LIBUSB_CALL libusb_get_max_packet_size(libusb_device *dev,
unsigned char endpoint);
int LIBUSB_CALL libusb_get_max_iso_packet_size(libusb_device *dev,
@ -1315,7 +1425,7 @@ static inline int libusb_get_string_descriptor(libusb_device_handle *dev,
uint8_t desc_index, uint16_t langid, unsigned char *data, int length)
{
return libusb_control_transfer(dev, LIBUSB_ENDPOINT_IN,
LIBUSB_REQUEST_GET_DESCRIPTOR, (LIBUSB_DT_STRING << 8) | desc_index,
LIBUSB_REQUEST_GET_DESCRIPTOR, (uint16_t)((LIBUSB_DT_STRING << 8) | desc_index),
langid, data, (uint16_t) length, 1000);
}
@ -1335,7 +1445,10 @@ int LIBUSB_CALL libusb_wait_for_event(libusb_context *ctx, struct timeval *tv);
int LIBUSB_CALL libusb_handle_events_timeout(libusb_context *ctx,
struct timeval *tv);
int LIBUSB_CALL libusb_handle_events_timeout_completed(libusb_context *ctx,
struct timeval *tv, int *completed);
int LIBUSB_CALL libusb_handle_events(libusb_context *ctx);
int LIBUSB_CALL libusb_handle_events_completed(libusb_context *ctx, int *completed);
int LIBUSB_CALL libusb_handle_events_locked(libusb_context *ctx,
struct timeval *tv);
int LIBUSB_CALL libusb_pollfds_handle_timeouts(libusb_context *ctx);
@ -1390,4 +1503,4 @@ void LIBUSB_CALL libusb_set_pollfd_notifiers(libusb_context *ctx,
}
#endif
#endif
#endif

47
msvc2012.sln Normal file
View File

@ -0,0 +1,47 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2012
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "heimdall-frontend", "heimdall-frontend\heimdall-frontend.vcxproj", "{EAD352DF-7CDE-478C-8D70-B0E42A951DEF}"
ProjectSection(ProjectDependencies) = postProject
{DC0D782C-8DB7-44CA-A984-D3A97483E0D0} = {DC0D782C-8DB7-44CA-A984-D3A97483E0D0}
{9506FFE4-3A78-4BEE-A15E-62C5A138E61D} = {9506FFE4-3A78-4BEE-A15E-62C5A138E61D}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "heimdall", "heimdall\heimdall.vcxproj", "{DC0D782C-8DB7-44CA-A984-D3A97483E0D0}"
ProjectSection(ProjectDependencies) = postProject
{9506FFE4-3A78-4BEE-A15E-62C5A138E61D} = {9506FFE4-3A78-4BEE-A15E-62C5A138E61D}
EndProjectSection
EndProject
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "libpit", "libpit\libpit.vcxproj", "{9506FFE4-3A78-4BEE-A15E-62C5A138E61D}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Win32 = Debug|Win32
Debug|x64 = Debug|x64
Release|Win32 = Release|Win32
Release|x64 = Release|x64
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{EAD352DF-7CDE-478C-8D70-B0E42A951DEF}.Debug|Win32.ActiveCfg = Debug|Win32
{EAD352DF-7CDE-478C-8D70-B0E42A951DEF}.Debug|Win32.Build.0 = Debug|Win32
{EAD352DF-7CDE-478C-8D70-B0E42A951DEF}.Debug|x64.ActiveCfg = Debug|Win32
{EAD352DF-7CDE-478C-8D70-B0E42A951DEF}.Release|Win32.ActiveCfg = Release|Win32
{EAD352DF-7CDE-478C-8D70-B0E42A951DEF}.Release|Win32.Build.0 = Release|Win32
{EAD352DF-7CDE-478C-8D70-B0E42A951DEF}.Release|x64.ActiveCfg = Release|Win32
{DC0D782C-8DB7-44CA-A984-D3A97483E0D0}.Debug|Win32.ActiveCfg = Debug|Win32
{DC0D782C-8DB7-44CA-A984-D3A97483E0D0}.Debug|Win32.Build.0 = Debug|Win32
{DC0D782C-8DB7-44CA-A984-D3A97483E0D0}.Debug|x64.ActiveCfg = Debug|Win32
{DC0D782C-8DB7-44CA-A984-D3A97483E0D0}.Release|Win32.ActiveCfg = Release|Win32
{DC0D782C-8DB7-44CA-A984-D3A97483E0D0}.Release|Win32.Build.0 = Release|Win32
{DC0D782C-8DB7-44CA-A984-D3A97483E0D0}.Release|x64.ActiveCfg = Release|Win32
{9506FFE4-3A78-4BEE-A15E-62C5A138E61D}.Debug|Win32.ActiveCfg = Debug|Win32
{9506FFE4-3A78-4BEE-A15E-62C5A138E61D}.Debug|Win32.Build.0 = Debug|Win32
{9506FFE4-3A78-4BEE-A15E-62C5A138E61D}.Debug|x64.ActiveCfg = Debug|Win32
{9506FFE4-3A78-4BEE-A15E-62C5A138E61D}.Release|Win32.ActiveCfg = Release|Win32
{9506FFE4-3A78-4BEE-A15E-62C5A138E61D}.Release|Win32.Build.0 = Release|Win32
{9506FFE4-3A78-4BEE-A15E-62C5A138E61D}.Release|x64.ActiveCfg = Release|Win32
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal