[build-system] build-backend = "hatchling.build" requires = [ "semiwrap~=0.1.7", "hatch-meson~=0.1.0b2", "hatchling", "pyntcore==2027.0.0a2", "robotpy-native-wpihal==2027.0.0a2", "robotpy-wpiutil==2027.0.0a2", ] [project] name = "robotpy-hal" version = "2027.0.0a2" description = "Binary wrapper for FRC HAL" authors = [ {name = "RobotPy Development Team", email = "robotpy@googlegroups.com"}, ] license = "BSD-3-Clause" dependencies = [ "pyntcore==2027.0.0a2", "robotpy-native-wpihal==2027.0.0a2", "robotpy-wpiutil==2027.0.0a2", ] [project.urls] "Source code" = "https://github.com/robotpy/mostrobotpy" [tool.hatch.build.hooks.robotpy] version_file = "hal/version.py" [tool.hatch.build.hooks.semiwrap] [tool.hatch.build.hooks.meson] [tool.hatch.build.targets.wheel] packages = ["hal"] [tool.semiwrap] update_init = [] scan_headers_ignore = [ "hal/ChipObject.h", "hal/DMA.h", "hal/Errors.h", "hal/HAL.h", "hal/IMU.h", "hal/IMUTypes.h", "hal/SystemServer.h", "hal/Types.h", "hal/Value.h", "hal/cpp/SerialHelper.h", "hal/cpp/UnsafeDIO.h", "hal/cpp/fpga_clock.h", "hal/handles/DigitalHandleResource.h", "hal/handles/IndexedClassedHandleResource.h", "hal/handles/IndexedHandleResource.h", "hal/handles/LimitedClassedHandleResource.h", "hal/handles/LimitedHandleResource.h", "hal/handles/UnlimitedHandleResource.h", "hal/proto/*", "hal/roborio/HMB.h", "hal/roborio/InterruptManager.h", "hal/simulation/CanData.h", "hal/simulation/I2CData.h", "hal/simulation/NotifyListener.h", "hal/simulation/SPIData.h", "hal/simulation/SimCallbackRegistry.h", "hal/simulation/SimDataValue.h", # TODO: might want this in the future "mrc/*", "src/ds_types_fmt.h", "sim_cb.h", "sim_value_cb.h", ] [tool.semiwrap.extension_modules."hal._wpiHal"] name = "wpihal" wraps = ["robotpy-native-wpihal"] depends = ["wpiutil", "ntcore"] [tool.semiwrap.extension_modules."hal._wpiHal".headers] # hal AddressableLED = "hal/AddressableLED.h" AddressableLEDTypes = "hal/AddressableLEDTypes.h" AnalogInput = "hal/AnalogInput.h" CAN = "hal/CAN.h" CANAPI = "hal/CANAPI.h" CANAPITypes = "hal/CANAPITypes.h" CTREPCM = "hal/CTREPCM.h" Constants = "hal/Constants.h" Counter = "hal/Counter.h" DIO = "hal/DIO.h" # DMA = "hal/DMA.h" DriverStation = "hal/DriverStation.h" DriverStationTypes = "hal/DriverStationTypes.h" DutyCycle = "hal/DutyCycle.h" Encoder = "hal/Encoder.h" # Errors = "hal/Errors.h" Extensions = "hal/Extensions.h" # HAL = "hal/HAL.h" HALBase = "hal/HALBase.h" I2C = "hal/I2C.h" I2CTypes = "hal/I2CTypes.h" # IMU = "hal/IMU.h" # IMUTypes = "hal/IMUTypes.h" Main = "hal/Main.h" Notifier = "hal/Notifier.h" PWM = "hal/PWM.h" Ports = "hal/Ports.h" Power = "hal/Power.h" PowerDistribution = "hal/PowerDistribution.h" REVPH = "hal/REVPH.h" SerialPort = "hal/SerialPort.h" SimDevice = "hal/SimDevice.h" UsageReporting = "hal/UsageReporting.h" Threads = "hal/Threads.h" # Types = "hal/Types.h" # Value = "hal/Value.h" # hal/cpp # fpga_clock = "hal/cpp/fpga_clock.h" # hal/handles # DigitalHandleResource = "hal/handles/DigitalHandleResource.h" HandlesInternal = "hal/handles/HandlesInternal.h" # IndexedClassedHandleResource = "hal/handles/IndexedClassedHandleResource.h" # IndexedHandleResource = "hal/handles/IndexedHandleResource.h" # LimitedClassedHandleResource = "hal/handles/LimitedClassedHandleResource.h" # LimitedHandleResource = "hal/handles/LimitedHandleResource.h" # UnlimitedHandleResource = "hal/handles/UnlimitedHandleResource.h" [tool.semiwrap.extension_modules."hal.simulation._simulation"] name = "hal_simulation" wraps = ["robotpy-native-wpihal"] depends = ["wpiutil", "ntcore"] yaml_path = "semiwrap/simulation" [tool.semiwrap.extension_modules."hal.simulation._simulation".headers] AddressableLEDData = "hal/simulation/AddressableLEDData.h" AnalogInData = "hal/simulation/AnalogInData.h" CTREPCMData = "hal/simulation/CTREPCMData.h" # CanData = "hal/simulation/CanData.h" DIOData = "hal/simulation/DIOData.h" DigitalPWMData = "hal/simulation/DigitalPWMData.h" DriverStationData = "hal/simulation/DriverStationData.h" DutyCycleData = "hal/simulation/DutyCycleData.h" EncoderData = "hal/simulation/EncoderData.h" # I2CData = "hal/simulation/I2CData.h" MockHooks = "hal/simulation/MockHooks.h" NotifierData = "hal/simulation/NotifierData.h" # NotifyListener = "hal/simulation/NotifyListener.h" PWMData = "hal/simulation/PWMData.h" PowerDistributionData = "hal/simulation/PowerDistributionData.h" REVPHData = "hal/simulation/REVPHData.h" Reset = "hal/simulation/Reset.h" RoboRioData = "hal/simulation/RoboRioData.h" # SimCallbackRegistry = "hal/simulation/SimCallbackRegistry.h" # SimDataValue = "hal/simulation/SimDataValue.h" SimDeviceData = "hal/simulation/SimDeviceData.h"