; MIT License - Copyright (c) 2019-2022 Francis Van Roie
; For full license information read the LICENSE file in the project folder
;
; PlatformIO Project Configuration File
;
; Please visit documentation for the other options and examples
; http://docs.platformio.org/page/projectconf.html


;**************************************************************
;          Common project settings
;**************************************************************
[platformio]
extra_configs =
    user_setups/lcd_config.ini
    ; --  Base configurations per platform
    user_setups/esp32/_esp32.ini
    user_setups/esp32s2/_esp32s2.ini
    ; --  Put active [env] files in this dir to be included in the build menu
    user_setups/active/*.ini
    ; --  Add customizations to this file only:
    platformio_override.ini

default_envs =
    ; Uncomment the needed environments in platformio_override.ini
    ; You can also create new environments in in platformio_override.ini
    ${override.extra_default_envs}

[override]
; -- By default there are no ${override.build_flags} set
; -- to use it, copy the platformio_override.ini file from the template
build_flags =
extra_default_envs =


;***************************************************
;          Common environment settings
;***************************************************
[env]
upload_speed = 921600
monitor_speed = 115200

build_flags =
    ;-v     ; verbose
	-D PIOENV=\"${PIOENV}\"
    -Os          ; Code Size Optimization
    ;-Og           ; Code Debug Optimization
    ;-w           ; Suppress warnings
    -D CORE_DEBUG_LEVEL=0           ; 0=Silent, 1=Errors, 2=Warnings
    -I include    ; include lv_conf.h and hasp_conf.h
    ; -- littlevgl build options ------------------------------
    -D LV_CONF_INCLUDE_SIMPLE       ; for lvgl
    -D LV_LVGL_H_INCLUDE_SIMPLE     ; for lv_drivers
    -D LV_COMP_CONF_INCLUDE_SIMPLE  ; for components
    -D LV_SYMBOL_DEF_H              ; don't load default symbol defines
    -D LODEPNG_NO_COMPILE_ALLOCATORS ; use PSram functions
    -D LV_PNG_USE_LV_FILESYSTEM=1   ; use lvgl filesystem api, drive L:\
    ; -- ESP build options ------------------------------------
    -D SPIFFS_TEMPORAL_FD_CACHE     ; speedup opening recent files
    ; -- ArduinoJson build options ----------------------------
    -D ARDUINOJSON_DECODE_UNICODE=1 ; for utf-8 symbols
    
    ; -- StreamUtils build options ----------------------------
    -D STREAMUTILS_ENABLE_EEPROM=1  ; for STM32, it also supports EEPROM

    ; -- Hasp build options ----------------------------
    -D HASP_VER_MAJ=0
    -D HASP_VER_MIN=6
    ;-D HASP_VER_REV=3
    -D HASP_VER_REV=3-dev
    ${override.build_flags}

; -- Shared library dependencies in all environments
; Warning : don't put comments after github links => causes infinite download loop
lib_deps =
    bxparks/AceButton@^1.9.2         ; GPIO button library
    bblanchon/ArduinoJson@^6.19.4    ; Json(l) parser
    bblanchon/StreamUtils@^1.6.2     ; for EEPromStream and BufferedTelnetClient
    knolleary/PubSubClient@^2.8.0    ; MQTT client
    ;git+https://github.com/fvanroie/ConsoleInput.git
    ;git+https://github.com/andrethomas/TasmotaSlave.git
    ;git+https://github.com/lvgl/lvgl.git
    git+https://github.com/lvgl/lvgl.git#release/v7
    ;git+https://github.com/lvgl/lv_fs_if.git#release/v7
    ;lvgl/lvgl@^7.11.0                ; from PIO library
    git+https://github.com/lvgl/lv_lib_png.git#release/v7
    git+https://github.com/lvgl/lv_lib_bmp.git#release/v7
    git+https://github.com/lvgl/lv_lib_gif.git#release/v7
    ;git+https://github.com/lvgl/lv_lib_split_jpg.git
    ; ------ Unused / Test libraries
    ;https://github.com/netwizeBE/TFT_eSPI.git
    ;Syslog@^2.0.0       ; Obsoleted
    ;AsyncTCP
    ;https://github.com/me-no-dev/ESPAsyncWebServer/archive/master.zip
    ;https://github.com/me-no-dev/ESPAsyncTCP/archive/master.zip

src_filter = +<*> -<.git/> -<examples/> -<test/> -<tests/> -<stm32f4/> -<lv_font_montserrat_*.c>

[lovyangfx]
lib_deps =
    lovyan03/LovyanGFX@^0.4.17

[tft_espi]
lib_deps =
    bodmer/TFT_eSPI@2.4.51

[goodix]
lib_deps =
    git+https://github.com/netwizeBE/arduino-goodix.git

[ft6336]
lib_deps =
    git+https://github.com/aselectroworks/Arduino-FT6336U.git

[gsl1680]
lib_deps =
    git+https://github.com/arovak/GSL2038.git

[stmpe610]
lib_deps =
    adafruit/Adafruit STMPE610@^1.1.4