summaryrefslogtreecommitdiff
path: root/platformio/common/make_static.sh
diff options
context:
space:
mode:
authorEvgeny Zinoviev <me@ch1p.io>2023-09-27 00:54:57 +0300
committerEvgeny Zinoviev <me@ch1p.io>2023-09-27 00:54:57 +0300
commitd3a295872c49defb55fc8e4e43e55550991e0927 (patch)
treeb9dca15454f9027d5a9dad0d4443a20de04dbc5d /platformio/common/make_static.sh
parentb7cbc2571c1870b4582ead45277d0aa7f961bec8 (diff)
parentbdbb296697f55f4c3a07af43c9aaf7a9ea86f3d0 (diff)
Merge branch 'master' of ch1p.io:homekit
Diffstat (limited to 'platformio/common/make_static.sh')
-rwxr-xr-xplatformio/common/make_static.sh89
1 files changed, 0 insertions, 89 deletions
diff --git a/platformio/common/make_static.sh b/platformio/common/make_static.sh
deleted file mode 100755
index d207e57..0000000
--- a/platformio/common/make_static.sh
+++ /dev/null
@@ -1,89 +0,0 @@
-#!/bin/bash
-
-#set -x
-#set -e
-
-COMMON_DIR="$(cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd)"
-PROJECT_DIR="$(pwd)"
-
-fw_version="$(cat "$PROJECT_DIR/src/config.def.h" | grep "^#define FW_VERSION" | awk '{print $3}')"
-header="$PROJECT_DIR/src/static.h"
-source="$PROJECT_DIR/src/static.cpp"
-
-[ -f "$header" ] && rm "$header"
-[ -f "$source" ] && rm "$source"
-
-is_minifyable() {
- local ext="$1"
- [ "$ext" = "html" ] || [ "$ext" = "css" ] || [ "$ext" = "js" ]
-}
-
-minify() {
- local ext="$1"
- local bin="$(realpath "$COMMON_DIR"/../../tools/minify.js)"
- "$bin" --type "$ext"
-}
-
-# .h header
-cat <<EOF >> "$header"
-/**
- * This file is autogenerated with make_static.sh script
- */
-
-#pragma once
-
-#include <stdlib.h>
-
-namespace homekit::files {
-
-typedef struct {
- size_t size;
- const uint8_t* content;
-} StaticFile;
-
-EOF
-
-cat <<EOF >> "$source"
-/**
- * This file is autogenerated with make_static.sh script
- */
-
-#include "static.h"
-
-namespace homekit::files {
-
-EOF
-
-# loop over files
-for ext in html js css ico; do
- for f in "$COMMON_DIR"/static/*.$ext; do
- filename="$(basename "$f")"
- echo "processing ${filename}..."
- filename="${filename/./_}"
-
- # write .h
- echo "extern const StaticFile $filename;" >> "$header"
-
- # write .c
- {
- echo "static const uint8_t ${filename}_content[] PROGMEM = {"
-
- cat "$f" |
- ( [ "$ext" = "html" ] && sed "s/{version}/$fw_version/" || cat ) |
- ( is_minifyable "$ext" && minify "$ext" || cat ) |
- gzip |
- xxd -ps -c 16 |
- sed 's/.\{2\}/0x&, /g' |
- sed 's/^/ /' |
- sed 's/[ \t]*$//'
-
- echo "};"
- echo "const StaticFile $filename PROGMEM = {(sizeof(${filename}_content)/sizeof(${filename}_content[0])), ${filename}_content};"
- echo ""
- } >> "$source"
- done
-done
-
-# end of homekit::files
-( echo ""; echo "}" ) >> "$header"
-echo "}" >> "$source"