mirror of
https://review.coreboot.org/flashrom.git
synced 2025-04-27 23:22:37 +02:00

Unit tests had an unconditional dependency on libusb and this was a) strictly speaking not needed, b) blocking one build system effort. This patch is a temporary solution to unblock one build system effort, specifically CB:63724. It creates a condition so that libusb is only included when it is required, not always. This workaround is based on the fact that at the moment only 2 lifecycle unit tests are using libusb symbols: dediprog and raiden_debug. BUG=b:237606255 TEST=the following scenarios run tests successfully 1) dediprog and raiden_debug programmers enabled, libusb.h present result: all test run and pass 2) dediprog disabled, libusb.h present result: dediprog test skipped, all other tests run and pass 3) dediprog and raiden_debug both disabled, libusb.h changed to libusbabcd.h result: dediprog and raiden_debug tests are skipped, all other tests run and pass Change-Id: Iec8a1826951fd6ae586e90fde1a55170e7de41a8 Signed-off-by: Anastasia Klimchuk <aklm@chromium.org> Reviewed-on: https://review.coreboot.org/c/flashrom/+/65627 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Felix Singer <felixsinger@posteo.net> Reviewed-by: Thomas Heijligen <src@posteo.de>
47 lines
2.3 KiB
C
47 lines
2.3 KiB
C
/*
|
|
* This file is part of the flashrom project.
|
|
*
|
|
* Copyright 2022 Google LLC
|
|
*
|
|
* This program is free software; you can redistribute it and/or modify
|
|
* it under the terms of the GNU General Public License as published by
|
|
* the Free Software Foundation; version 2 of the License.
|
|
*
|
|
* This program is distributed in the hope that it will be useful,
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
* GNU General Public License for more details.
|
|
*/
|
|
|
|
#ifndef LIBUSB_WRAPS_H
|
|
#define LIBUSB_WRAPS_H
|
|
|
|
#include "usb_unittests.h"
|
|
|
|
void *__wrap_usb_dev_get_by_vid_pid_number(
|
|
libusb_context *usb_ctx, uint16_t vid, uint16_t pid, unsigned int num);
|
|
int __wrap_libusb_init(libusb_context **ctx);
|
|
int __wrap_libusb_open(libusb_device *dev, libusb_device_handle **devh);
|
|
int __wrap_libusb_set_auto_detach_kernel_driver(libusb_device_handle *devh, int enable);
|
|
ssize_t __wrap_libusb_get_device_list(libusb_context *ctx, libusb_device ***list);
|
|
void __wrap_libusb_free_device_list(libusb_device **list, int unref_devices);
|
|
uint8_t __wrap_libusb_get_bus_number(libusb_device *dev);
|
|
uint8_t __wrap_libusb_get_device_address(libusb_device *dev);
|
|
int __wrap_libusb_get_device_descriptor(libusb_device *dev, struct libusb_device_descriptor *desc);
|
|
int __wrap_libusb_get_config_descriptor(
|
|
libusb_device *dev, uint8_t config_index, struct libusb_config_descriptor **config);
|
|
void __wrap_libusb_free_config_descriptor(struct libusb_config_descriptor *config);
|
|
int __wrap_libusb_get_configuration(libusb_device_handle *devh, int *config);
|
|
int __wrap_libusb_set_configuration(libusb_device_handle *devh, int config);
|
|
int __wrap_libusb_claim_interface(libusb_device_handle *devh, int interface_number);
|
|
int __wrap_libusb_control_transfer(libusb_device_handle *devh, uint8_t bmRequestType,
|
|
uint8_t bRequest, uint16_t wValue, uint16_t wIndex, unsigned char *data,
|
|
uint16_t wLength, unsigned int timeout);
|
|
int __wrap_libusb_release_interface(libusb_device_handle *devh, int interface_number);
|
|
void __wrap_libusb_close(libusb_device_handle *devh);
|
|
libusb_device *__wrap_libusb_ref_device(libusb_device *dev);
|
|
void __wrap_libusb_unref_device(libusb_device *dev);
|
|
void __wrap_libusb_exit(libusb_context *ctx);
|
|
|
|
#endif /* LIBUSB_WRAPS_H */
|