forked from lupyuen/pinetime-rust-mynewt
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathpkg.yml
144 lines (121 loc) · 6.05 KB
/
pkg.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
#
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
# Package Settings
pkg.name: "apps/my_sensor_app"
pkg.type: app
pkg.description: "Description of your app"
pkg.author: "You <you@you.org>"
pkg.homepage: "http://your-url.org/"
pkg.keywords:
# Package Dependencies: Application is dependent on these drivers and libraries.
pkg.deps:
- "@apache-mynewt-core/kernel/os" # Mynewt kernel
- "@apache-mynewt-core/sys/log/stub" # Disable logging
- "@apache-mynewt-core/sys/stats/stub" # Disable stats
- "@apache-mynewt-core/hw/sensor" # Sensor Library
- "@apache-mynewt-core/hw/sensor/creator" # Sensor Creator
- "@apache-mynewt-core/libc/baselibc" # Baselibc, the tiny version of standard C library
- "libs/pinetime_lvgl_mynewt" # LVGL Library for UI widgets and touch input
# Inject the Rust build into the Mynewt build
- "libs/mynewt_rust" # Rust interop layer for Mynewt
- "libs/rust_app" # Rust Application Stub. Will be replaced by Rust application and external Rust libraries.
- "libs/rust_libcore" # Rust Core Library Stub. Will be replaced by Rust Core Library libcore.
# Optional Dependencies: Application is dependent on these optional drivers and libraries.
# "pkg.deps.xxx" refers to packages that should be included only if option "xxx" is
# enabled in targets/nrf52_my_sensor/syscfg.yml or apps/my_sensor_app/syscfg.yml
# Bluetooth LE
pkg.deps.BLUETOOTH_LE:
- "@apache-mynewt-core/time/datetime"
- "@apache-mynewt-core/boot/split"
- "@mcuboot/boot/bootutil"
- "@apache-mynewt-core/mgmt/imgmgr"
- "@apache-mynewt-core/mgmt/newtmgr"
- "@apache-mynewt-core/mgmt/newtmgr/transport/ble"
- "@apache-mynewt-nimble/nimble/host"
- "@apache-mynewt-nimble/nimble/host/services/ans"
- "@apache-mynewt-nimble/nimble/host/services/dis"
- "@apache-mynewt-nimble/nimble/host/services/gap"
- "@apache-mynewt-nimble/nimble/host/services/gatt"
- "@apache-mynewt-nimble/nimble/host/store/config"
- "@apache-mynewt-nimble/nimble/host/util"
- "@apache-mynewt-nimble/nimble/transport"
# Bluetooth Beacon
pkg.deps.BLUETOOTH_BEACON:
- "@apache-mynewt-nimble/nimble/controller"
- "@apache-mynewt-nimble/nimble/host"
- "@apache-mynewt-nimble/nimble/host/store/config"
- "@apache-mynewt-nimble/nimble/transport/ram"
# Bluetooth Mesh
pkg.deps.BLUETOOTH_MESH:
- "@apache-mynewt-core/encoding/base64"
- "@apache-mynewt-nimble/nimble/host/services/gap"
- "@apache-mynewt-nimble/nimble/host/services/gatt"
# Low Power Support
pkg.deps.LOW_POWER:
- "libs/low_power" # Low Power Support for STM32 Blue Pill
# Quectel L70-R GPS driver
pkg.deps.GPS_L70R:
- "libs/gps_l70r" # Quectel L70-R GPS driver
# Quectel BC95-G NB-IoT driver
pkg.deps.BC95G:
- "libs/bc95g" # Quectel BC95-G NB-IoT driver
# nRF24L01 Wireless Transceiver Driver
pkg.deps.NRF24L01:
- "libs/nrf24l01" # nRF24L01 Wireless Transceiver Driver
# Driver for Remote Sensor that receives sensor data via nRF24L01 and CoAP
pkg.deps.REMOTE_SENSOR:
- "libs/remote_sensor" # Driver for Remote Sensor that receives sensor data via nRF24L01 and CoAP
# Sensor Network library
pkg.deps.SENSOR_NETWORK:
- "libs/sensor_network" # Sensor Network library
# CoAP library for transmitting sensor data to CoAP server
pkg.deps.SENSOR_COAP:
- "libs/sensor_coap" # CoAP library for transmitting sensor data
# Sensor Driver for STM32 internal temperature sensor for STM32, based on ADC
pkg.deps.TEMP_STM32:
- "libs/temp_stm32" # Internal temperature sensor for STM32, based on ADC
# Sensor Driver for stub temperature sensor
pkg.deps.TEMP_STUB:
- "libs/temp_stub" # Stub temperature sensor
# STM32F1 ADC driver (for internal temperature sensor)
pkg.deps.ADC_1:
#### TODO: - "libs/adc_stm32f1" # ADC driver for STM32F1, for internal temperature sensor
- "libs/adc_stm32l4" # ADC driver for STM32L4, for internal temperature sensor
# ESP8266 WiFi Driver
pkg.deps.ESP8266:
- "libs/esp8266" # ESP8266 WiFi driver
# HMAC PRNG pseudorandom number generator library
pkg.deps.HMAC_PRNG:
- "libs/hmac_prng" # HMAC PRNG pseudorandom number generator
# Library for Semihosting Console
pkg.deps.SEMIHOSTING_CONSOLE:
- "libs/semihosting_console" # Semihosting Console
# C compiler flags
pkg.cflags:
- -DLV_CONF_INCLUDE_SIMPLE # Compile with libs/pinetime_lvgl_mynewt/lv_conf.h
- -Ilibs/pinetime_lvgl_mynewt
- -DFLOAT_SUPPORT # For encoding floats in CoAP messages
# - -Os # Optimise for smallest size, but makes debugging harder
# To test expansion of macros, enable both options below. Expanded source code will appear at "bin" folder,
# like bin\targets\bluepill_my_sensor\app\libs\remote_sensor\libs\remote_sensor\src\remote_sensor.o
# - -E
# - -dD
# Linker flags
pkg.lflags:
- -Wl,-wrap,coap_receive # Rename all coap_receive() references to __wrap_coap_receive(), so that we can provide a custom implementation
- -lm # Include Math library (libm.a), needed by [kurbo] curve library