Skip to content
Snippets Groups Projects
Select Git revision
  • c35125400a829a919717813bf23cd4056c947d6d
  • master default protected
  • wdt-fix
  • appDb-store-timing
  • wdt
  • koalo/bhi160
  • genofire/ble-rewrite
  • rahix/simple_menu
  • ch3/splashscreen
  • koalo/bhi160-works-but-dirty
  • ios-workarounds
  • koalo/wip/i2c-for-python
  • renze/safe_mode
  • renze/hatchery_apps
  • schneider/fundamental-test
  • koalo/factory-reset
  • msgctl/gfx_rle
  • msgctl/faultscreen
  • msgctl/textbuffer_api
  • schneider/bonding
  • schneider/bootloader-update-9a0d158
  • v1.3
  • v1.2
  • v1.1
  • v1.0
  • release-1
  • bootloader-v1
  • v0.0
28 results

api_caller.h

Blame
  • Forked from card10 / firmware
    Source project has a limited visibility.
    gen-qstr.sh 1.24 KiB
    #!/bin/bash
    set -e
    
    PYTHON="$1"
    SOURCE_DIR="$2"
    PROJECT_SRC="$3"
    OUTPUT="$4"
    CUSTOM_QSTR="$5"
    
    shift 5
    
    OUTPUT_DIR="$(dirname "$OUTPUT")"
    
    mkdir -p "$OUTPUT_DIR/genhdr"
    ln -sfr "$OUTPUT" "$OUTPUT_DIR/genhdr/$(basename "$OUTPUT")"
    
    # call gcc -E to generate qstr.i.last
    gcc -E -DNO_QSTR -I"$SOURCE_DIR/micropython" -I"$PROJECT_SRC" -I"$OUTPUT_DIR" "$@" >"$OUTPUT_DIR/qstr.i.last"
    
    # Generate qstr.split
    "$PYTHON" "$SOURCE_DIR/micropython/py/makeqstrdefs.py" split \
        "$OUTPUT_DIR/qstr.i.last" "$OUTPUT_DIR/qstr" "$OUTPUT_DIR/qstrdefs.collected.h" >/dev/null
    
    # Generate qstr.collected.h
    "$PYTHON" "$SOURCE_DIR/micropython/py/makeqstrdefs.py" cat \
        "$OUTPUT_DIR/qstr.i.last" "$OUTPUT_DIR/qstr" "$OUTPUT_DIR/qstrdefs.collected.h" >/dev/null
    
    # Preprocess Header ... I did not come up with this, this is code copied from
    #    the official make file.  Seriously.
    cat "$SOURCE_DIR/micropython/py/qstrdefs.h" "$CUSTOM_QSTR" "$OUTPUT_DIR/qstrdefs.collected.h" \
        | sed 's/^Q(.*)/"&"/' \
        | gcc -E -I"$SOURCE_DIR/micropython" -I"$PROJECT_SRC" -I"$OUTPUT_DIR" - \
        | sed 's/^\"\(Q(.*)\)\"/\1/' \
        >"$OUTPUT_DIR/qstrdefs.preprocessed.h"
    
    # Call makeqstrdata
    "$PYTHON" "$SOURCE_DIR/micropython/py/makeqstrdata.py" "$OUTPUT_DIR/qstrdefs.preprocessed.h" >"$OUTPUT"