Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Обновление #1

Open
wants to merge 152 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
152 commits
Select commit Hold shift + click to select a range
0da329f
Update issue templates
fpoussin Jan 17, 2020
26b1378
Fixed example var name
fpoussin Jan 17, 2020
6b5552c
Fixed var name
fpoussin Jan 23, 2020
7097f1c
Fix for #40
fpoussin Jan 29, 2020
1225d25
USB bus/port cleaning
fpoussin Jan 29, 2020
65e8ca5
Changed transfer class to map to individual endpoints.
fpoussin Jan 30, 2020
531488e
Updated tests for endpoint class
fpoussin Jan 30, 2020
e9cb202
moc file typo
fpoussin Jan 30, 2020
ef3412f
Cleaning vars/strings
fpoussin Jan 30, 2020
bd7a5b5
Merge pull request #41 from fpoussin/endpoint-v2
fpoussin Jan 30, 2020
114b9df
Update README.md
fpoussin Jan 30, 2020
783ff73
Format
fpoussin Jan 30, 2020
4faf1d0
Adding skeleton HID code
fpoussin Jan 23, 2020
6f9ccbd
Adding HID functions, tests, example.
fpoussin Jan 31, 2020
c7bafb4
Fixed Windows build
fpoussin Feb 1, 2020
cdb92f7
Adding Android config, Updated ReadMe.
fpoussin Feb 1, 2020
51911d7
Updated appveyor config
fpoussin Feb 1, 2020
46c608c
Fixed appveyor qt build path
fpoussin Feb 1, 2020
2bf0c00
Update README.md
fpoussin Feb 1, 2020
fb4db44
Merge pull request #42 from fpoussin/hid
fpoussin Feb 1, 2020
591b97e
Adding HID documentations, cleaning old style casts and types.
fpoussin Feb 3, 2020
a4f1d47
Adding HID to main documentation page.
fpoussin Feb 3, 2020
4397292
Cleaned main documentation page.
fpoussin Feb 3, 2020
3504f1e
Typo
fpoussin Feb 3, 2020
33ad268
Fixes for make_deb script
fpoussin Feb 14, 2020
a34c512
Adding lgtm badges
fpoussin Feb 17, 2020
9c88313
Adding core-private to pri file (when including lib directly into pro…
fpoussin Feb 18, 2020
0e922c4
Adding c++11 flag to pri file
fpoussin Feb 18, 2020
cfe900f
Fixed initialization lists
fpoussin Feb 18, 2020
4fbdfec
Fix for #43 and notification example
fpoussin Feb 24, 2020
1abb415
Update README.md
fpoussin Feb 24, 2020
ef1c434
Update README.md
fpoussin Feb 24, 2020
0f0e424
Updating copy constructors/operators for ID and Config classes.
fpoussin Feb 25, 2020
37aa075
Fixed tests, added default args to Id/Config constructors
fpoussin Feb 25, 2020
4754369
Updated Config defaults
fpoussin Feb 25, 2020
8224133
Tests cleanup
fpoussin Feb 25, 2020
dbe1a34
Updated copy operators/contructors and tests
fpoussin Feb 26, 2020
d8027f4
USB listing example
fpoussin Mar 6, 2020
127e2e6
Simplified/fixed getPresentDevices()
fpoussin Mar 6, 2020
6d99b30
Some cleaning
fpoussin Mar 6, 2020
cb3805b
Updated listing example
fpoussin Mar 6, 2020
d407c03
Moved devices() to QUsbInfo
fpoussin Mar 6, 2020
be259aa
Fixed tests
fpoussin Mar 6, 2020
ca3b922
Updating MSVC build script
fpoussin Mar 13, 2020
e14c76a
Fixes for build script
fpoussin Mar 13, 2020
c355bf6
qint32 QUsbDevice::open(): find device
RomViktor Mar 15, 2020
59e5425
Merge pull request #46 from RomViktor/bugFix
fpoussin Mar 15, 2020
d0a8315
Updated project file to build libusb
fpoussin Mar 15, 2020
f41d805
Adding msvc config.h file
fpoussin Mar 15, 2020
a106617
Updating appveyor
fpoussin Mar 15, 2020
5acf61b
Appveyor fix
fpoussin Mar 15, 2020
dcd481f
Fixed msvc build script
fpoussin Mar 15, 2020
4789832
Updated static lib process
fpoussin Mar 16, 2020
9cc5a50
Change static config to use standard name
fpoussin Mar 16, 2020
637e358
Updated appveyor file
fpoussin Mar 16, 2020
7d4f303
appveyor
fpoussin Mar 16, 2020
959f02e
Appveyor updates, new static build mode (#47)
fpoussin Mar 17, 2020
0519155
Update README.md
fpoussin Mar 18, 2020
16e2046
Bumped module version
fpoussin Mar 18, 2020
d208611
Fixes for Mac OS
fpoussin Apr 4, 2020
661f1e8
Updated package script
fpoussin Apr 28, 2020
e506dcf
[HID] Adding feature report methods
fpoussin May 13, 2020
0895ddb
Merge pull request #53 from fpoussin/feature-hid-report
fpoussin May 13, 2020
d1a2f98
Fixed package dependency
fpoussin Jul 13, 2020
2f24943
Bumping version
fpoussin Jul 13, 2020
2b828ee
fixed usage of QMutexLocker
dakejahl Jul 21, 2020
7de03ba
Merge pull request #55 from dakejahl/pr-QMutexLocker_usage_fix
fpoussin Jul 28, 2020
dc6a224
Fixed usb enum typo from #56
fpoussin Aug 11, 2020
ce774b0
v0.6.4
fpoussin Aug 11, 2020
6825018
Potential fix for issue 58
digitalaspirin Aug 16, 2020
f850b2e
Merge pull request #59 from digitalaspirin/fix-deadlock-issue-58
fpoussin Aug 17, 2020
34d9203
bump version
fpoussin Aug 17, 2020
e9652f8
Adding missing meta types registrations
fpoussin Aug 31, 2020
bd3f8b6
add qusbglobal.h to gitignore
fpoussin Sep 7, 2020
504682a
Moved Id, Config structs and some enums to QUsbInfo
fpoussin Sep 8, 2020
41aa9b4
Updating hidapi and libusb
fpoussin Sep 8, 2020
90032b4
Cleaning Id, Config default constructors
fpoussin Sep 8, 2020
d73e586
renamed qusbinfo to qusb for clarity
fpoussin Nov 8, 2020
2fa6216
fix deprecated libusb call
fpoussin Nov 8, 2020
df963e7
updated ci docker image
fpoussin Nov 8, 2020
f44706d
docs/examples/tests cleanup
fpoussin Nov 8, 2020
e3bedec
Merge pull request #62 from fpoussin/info-refactor
fpoussin Nov 8, 2020
613c19a
fix typo #66
fpoussin Nov 24, 2020
51d28c5
updated libusb files list for msvc
fpoussin Nov 24, 2020
f595cae
build_msvc.bat: exit on error
fpoussin Nov 24, 2020
d9795ba
adding path for msvc config file
fpoussin Nov 24, 2020
66c07ed
updated libusb msvc config file
fpoussin Nov 24, 2020
2fe5813
fix hidapi include path
fpoussin Nov 24, 2020
6ed0bb7
update appveyor Qt version to 5.15
fpoussin Nov 24, 2020
35ce7b6
updated appveyor msvc to 2019
fpoussin Nov 24, 2020
051a4ca
adding undefine for keyword "interface" caused by windows/msvc
fpoussin Nov 27, 2020
0930a63
update libusb version to v1.0.24
fpoussin Dec 16, 2020
70c78d0
updating msvc config file
fpoussin Dec 17, 2020
97cacd5
updating hidapi to v0.10.1
fpoussin Dec 17, 2020
d9323be
fix libusb import for MacOs
fpoussin Mar 24, 2021
d88297c
update version check for Qt6
fpoussin Mar 24, 2021
1456513
fix documentation
fpoussin Mar 24, 2021
06e35bf
update documentation link
fpoussin Mar 24, 2021
3901b4a
Update README.md
fpoussin Mar 24, 2021
839f0e9
unregister QUsb hotplug callbacks on exit + cleanup
fpoussin May 26, 2021
bfc5809
move callback registering to private class method, move handle to cla…
fpoussin May 26, 2021
a96ef84
add more debug output
fpoussin May 27, 2021
ce9ee46
Merge pull request #78 from fpoussin/callbacks-fix
fpoussin Feb 18, 2022
c27558f
Include QDebug in QUsb
kwakobo Nov 29, 2022
2864e39
Merge pull request #89 from kwakobo/fix-qdebug
fpoussin Dec 1, 2022
25de1ab
transition from QMake to CMake
petrmanek Apr 17, 2021
ebecb25
fix version in cmake includes
petrmanek Apr 17, 2021
ae78f5a
fix static build
petrmanek May 6, 2021
580e962
use Q_SLOTS instead of slots to fix windows build
petrmanek May 7, 2021
7b9c869
got rid of pkg-config
petrmanek May 11, 2021
7a842b8
allow building not only as shared/static Qt module, but also as share…
petrmanek May 12, 2021
d98a7e2
add install target in library mode
petrmanek May 12, 2021
210860d
include global header in library-installed public headers
petrmanek May 12, 2021
bc4b02e
ignore venv
petrmanek May 12, 2021
0b5bc26
fix generator expression error on Windows
petrmanek May 12, 2021
59bef94
better solution for generator expression
petrmanek May 12, 2021
52b14c8
replicate Win32 scope for library mode
petrmanek May 12, 2021
fc41d8a
correct wrong usage of target_sources()
petrmanek May 12, 2021
f8bd324
enable AUTOMOC for library target
petrmanek May 12, 2021
e1e55c6
fix export macro generation error that arised from reordering
petrmanek May 12, 2021
cc45413
change standalone target name from Qt6Usb to ExtUsb to avoid naming c…
petrmanek May 12, 2021
d1cc6f5
apply MOC only to library files in standalone mode
petrmanek May 12, 2021
fb69756
remove hidapi include dir that poisons build on macOS
petrmanek May 13, 2021
bc6f2bb
fix libusb include config.h on macOS
petrmanek May 13, 2021
c8ff2f7
link with CoreFoundation on macOS
petrmanek May 13, 2021
dc564c8
link with IOKit on macOS
petrmanek May 13, 2021
b38f488
include AppKit for macOS HIDAPI builds, add mac HIDAPI implementation…
petrmanek May 13, 2021
90de1dd
fix infinite loop for control transfers due to expected/actual sent b…
petrmanek May 25, 2021
e876596
protect calls to hid_enumerate with mutex
petrmanek Jun 1, 2021
631319d
update msvc script and CI for cmake
fpoussin Dec 1, 2022
e7e9ca4
replace qusbglobal pragma with defines
fpoussin Dec 6, 2022
e9de5f1
rename FindLibUSB1 to clear warning
fpoussin Dec 6, 2022
c97d8e6
build_msvc.bat: build before install
fpoussin Dec 6, 2022
91bd196
Merge pull request #90 from fpoussin/backport
fpoussin Dec 6, 2022
ea6d509
Update build_msvc.bat
fpoussin Dec 14, 2022
95c1258
remove unbalanced unlocking of libusb's events_lock
Jan 27, 2023
c267b59
add recently added options qt_internal_add_module() to permit build w…
Feb 1, 2023
0321281
disable header check in Qt 6.5 or newer
Feb 1, 2023
0c8bd75
use auxiliary include directory for libusb and hidapi on Windows
Feb 2, 2023
eaaa61e
add proxy headers for non-module builds
Feb 4, 2023
75a7697
try use cmake control flow instead of generator expressions
Feb 4, 2023
4484292
Merge pull request #92 from petrmanek/master
fpoussin Feb 4, 2023
ff90633
Switch to Gitlab Actions
fpoussin Oct 28, 2024
cf8a0f9
Merge pull request #102 from fpoussin/actions-v4
fpoussin Oct 28, 2024
2c3c920
fix README.md
fpoussin Oct 28, 2024
4793d83
fix README.md
fpoussin Oct 28, 2024
d2224e7
update README.md
fpoussin Oct 28, 2024
e896861
Cleanup CMake builds
fpoussin Oct 28, 2024
d39995b
fix gcc build warnings
fpoussin Oct 28, 2024
a6f3b55
update readme for internal build
fpoussin Oct 30, 2024
b86d495
update libusb to 1.0.27
fpoussin Oct 30, 2024
7d59fca
update hidapi to v0.14.0
fpoussin Oct 30, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .cmake.conf
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
set(QT_REPO_MODULE_VERSION "6.4.2")
28 changes: 28 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: bug
assignees: fpoussin

---

**Describe the bug**
A clear and concise description of what the bug is.

**PLatform:**
- OS: [e.g. Ubuntu]
- Version [e.g. 18.04]

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Additional context**
Add any other context about the problem here.
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: feature
assignees: fpoussin

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
143 changes: 143 additions & 0 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,143 @@
name: CMake Build Matrix

on: [push]

env:
QT_VERSION: 6.8.0

jobs:
build:
name: ${{ matrix.config.name }}
runs-on: ${{ matrix.config.os }}
strategy:
matrix:
config:
- name: "Linux Latest x64"
artifact: "Linux-x64.zip"
arch: ""
os: ubuntu-latest
# - name: "macOS Latest x64"
# artifact: "macOS-x64.zip"
# arch: ""
# os: macos-latest
# - name: "Windows Latest x64"
# artifact: "Windows-x64.zip"
# arch: win64_msvc2022_64
# os: windows-latest
# environment_script: "C:/Program Files (x86)/Microsoft Visual Studio/2019/Enterprise/VC/Auxiliary/Build/vcvars64.bat"

steps:
- uses: actions/checkout@v1

- name: Installing system libs on Linux
if: runner.os == 'Linux'
shell: cmake -P {0}
run: |
if ("${{ runner.os }}" STREQUAL "Linux")
execute_process(
COMMAND sudo apt install libusb-1.0-0-dev libhidapi-dev
)
endif()

- name: Installing system libs on Windows
if: runner.os == 'Windows'
run: ""

- name: Installing system libs on MacOS
if: runner.os == 'macOS'
run: ""

- name: Download Qt
id: qt
uses: jurplel/install-qt-action@v4
with:
version: "${{ env.QT_VERSION }}"
arch: "${{ matrix.config.arch }}"

- name: Configure
run: |
cmake -S . -B build

- name: Build
run: |
cd build
make -j $(nproc)

- uses: actions/upload-artifact@v4
id: upload_artifact
with:
path: ./qtusb-${{ matrix.config.artifact }}
name: qtusb-${{ matrix.config.artifact }}

release:
if: contains(github.ref, 'tags/v')
runs-on: ubuntu-latest
needs: build

steps:
- name: Create Release
id: create_release
uses: actions/create-release@v1.0.0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ github.ref }}
release_name: Release ${{ github.ref }}
draft: false
prerelease: false

- name: Store Release url
run: |
echo "${{ steps.create_release.outputs.upload_url }}" > ./upload_url

- uses: actions/upload-artifact@v1
with:
path: ./upload_url
name: upload_url

publish:
if: contains(github.ref, 'tags/v')

name: "Publish ${{ matrix.config.name }}"
runs-on: ${{ matrix.config.os }}
strategy:
matrix:
config:
- name: "Linux Latest x64"
artifact: "Linux-x64.zip"
os: ubuntu-latest
# - name: "macOS Latest x64"
# artifact: "macOS-x64.zip"
# os: macos-latest
# - name: "Windows Latest x64"
# artifact: "Windows-x64.zip"
# os: windows-latest
needs: release

steps:
- name: Download artifact
uses: actions/download-artifact@v1
with:
name: ${{ env.PLUGIN_NAME }}-${{ env.QT_CREATOR_VERSION }}-${{ matrix.config.artifact }}
path: ./

- name: Download URL
uses: actions/download-artifact@v1
with:
name: upload_url
path: ./
- id: set_upload_url
run: |
upload_url=`cat ./upload_url`
echo ::set-output name=upload_url::$upload_url

- name: Upload to Release
id: upload_to_release
uses: actions/upload-release-asset@v1.0.1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
upload_url: ${{ steps.set_upload_url.outputs.upload_url }}
asset_path: ./qtusb-${{ matrix.config.artifact }}
asset_name: qtusb}-${{ matrix.config.artifact }}
asset_content_type: application/zip
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -15,3 +15,6 @@ mkspecs
bin
qtusb*
libqt5usb*
src/usb/qusbglobal.h

venv
3 changes: 3 additions & 0 deletions .gitmodules
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
[submodule "libusb"]
path = libusb
url = https://github.com/fpoussin/libusb.git
[submodule "hidapi"]
path = hidapi
url = https://github.com/libusb/hidapi.git
5 changes: 0 additions & 5 deletions .qmake.conf

This file was deleted.

12 changes: 0 additions & 12 deletions .travis.yml

This file was deleted.

26 changes: 26 additions & 0 deletions CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Generated from QtUsb.pro.

cmake_minimum_required(VERSION 3.16)

# Allow to build with a different Qt version
set(QT_NO_PACKAGE_VERSION_CHECK TRUE)

include(.cmake.conf)
project(QtUsb
VERSION 6.0.0 # We need 6.x
DESCRIPTION "A cross-platform USB Module for Qt."
HOMEPAGE_URL "https://github.com/fpoussin/QtUsb"
LANGUAGES CXX C
)

find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED
COMPONENTS
BuildInternals
Core
Test
)
find_package(Qt6 ${PROJECT_VERSION} CONFIG
OPTIONAL_COMPONENTS
)

qt_build_repo()
38 changes: 0 additions & 38 deletions Jenkinsfile

This file was deleted.

11 changes: 0 additions & 11 deletions QtUsb.pro

This file was deleted.

Loading