Merge pull request 'Develop' (#34) from develop into main
Prepare Build and Testing executable binary / Prepare-Build-Testing-With-CMake (push) Successful in 2m20s
Prepare Build and Testing executable binary / Prepare-Build-Testing-With-Make (push) Successful in 3m49s
Prepare Build and Testing executable binary / Prepare-Build-Testing-With-Meson (push) Successful in 4m53s

Reviewed-on: #34
This commit was merged in pull request #34.
This commit is contained in:
wt
2026-09-17 17:24:02 +07:00
13 changed files with 163 additions and 184 deletions
+19 -26
View File
@@ -4,55 +4,48 @@ on: [push]
jobs: jobs:
Prepare-Build-Testing-With-Make: Prepare-Build-Testing-With-Make:
runs-on: alpine-sdk runs-on: ubuntu-latest
steps: steps:
- name: prepare-container
run: |
echo "192.168.3.113 gitea.home.com" >> /etc/hosts
- name: Check out repository code - name: Check out repository code
uses: actions/checkout@v3 uses: actions/checkout@v4
- name: Building binary with make - name: Building binary with make
run: | run: |
sed -i '1s/^/#define TEST\n/' src/config/config.hpp && \ sed -i '1s/^/#define TEST\n/' src/config/config.hpp && \
echo "#define TEST" >> src/OpenRouter/OpenRouter.hpp && \ echo "#define TEST" >> src/OpenRouter/OpenRouter.hpp && \
make -j$(nproc) make -j$(nproc)
- name: Testing to run binary builded with make - name: Testing to run binary builded with make
run: ./build/openrouter run: ./openrouter
Prepare-Build-Testing-With-CMake: Prepare-Build-Testing-With-CMake:
runs-on: alpine-sdk runs-on: ubuntu-latest
steps: steps:
- name: prepare-container
run: |
echo "192.168.3.113 gitea.home.com" >> /etc/hosts && \
apk add cmake
- name: Check out repository code - name: Check out repository code
uses: actions/checkout@v3 uses: actions/checkout@v4
- name: Building binary with CMake - name: Install build tools
run: apt update && apt install -y cmake
- name: Configure CMake
run: cmake -B ${{gitea.workspace}}/build
- name: Build project
run: | run: |
sed -i '1s/^/#define TEST\n/' src/config/config.hpp && \ sed -i '1s/^/#define TEST\n/' src/config/config.hpp && \
echo "#define TEST" >> src/OpenRouter/OpenRouter.hpp && \ echo "#define TEST" >> src/OpenRouter/OpenRouter.hpp && \
mkdir build && \ cmake --build ${{gitea.workspace}}/build
cd build && \
cmake .. && \
make -j$(nproc)
- name: Testing to run binary builded with CMake - name: Testing to run binary builded with CMake
run: ./build/openrouter run: ./build/openrouter
Prepare-Build-Testing-With-Meson: Prepare-Build-Testing-With-Meson:
runs-on: alpine-sdk runs-on: ubuntu-latest
steps: steps:
- name: prepare-container
run: |
echo "192.168.3.113 gitea.home.com" >> /etc/hosts && \
apk add meson ninja cmake
- name: Check out repository code - name: Check out repository code
uses: actions/checkout@v3 uses: actions/checkout@v4
- name: Building binary with meson - name: Install build tools
run: apt update && apt install -y meson
- name: Configure Project
run: meson setup build --buildtype=release
- name: Build Project
run: | run: |
sed -i '1s/^/#define TEST\n/' src/config/config.hpp && \ sed -i '1s/^/#define TEST\n/' src/config/config.hpp && \
echo "#define TEST" >> src/OpenRouter/OpenRouter.hpp && \ echo "#define TEST" >> src/OpenRouter/OpenRouter.hpp && \
meson setup build && \ meson compile -C build
ninja -C build
- name: Testing to run binary builded with meson - name: Testing to run binary builded with meson
run: ./build/openrouter run: ./build/openrouter
+1
View File
@@ -4,3 +4,4 @@ cmake-build-debug
.idea .idea
.vscode .vscode
.cache .cache
*.o
+20 -61
View File
@@ -1,62 +1,21 @@
CXX=g++ CXX = g++
STRIP=strip CFLAGS = -Wall -g -std=c++20
CXXFLAGS=-Wall -I src/libs -I src -std=c++20 LDFLAGS =
SOURCES=src/openrouter.cpp \ LIBS =
src/security/cors.cpp \ INCLUDES = -I./src/libs -I./src
src/settings/settings.cpp \ SRCS = $(shell find src -type f -name '*.cpp')
src/settings/backup.cpp \ OBJS = $(SRCS:.cpp=.o)
src/settings/telnet/enabled.cpp \ TARGET = openrouter
src/settings/telnet/port.cpp \ BUILD_DIR=./build
src/settings/ssh/status.cpp \ CROSS_COMPILE =
src/settings/ssh/keys.cpp \
src/settings/ssh/port.cpp \ all: $(TARGET)
src/settings/ssh/server.cpp \
src/settings/dns/enabled.cpp \ $(TARGET): $(OBJS)
src/settings/dns/servers.cpp \ $(CROSS_COMPILE)$(CXX) $(LDFLAGS) $^ -o $@ $(LIBS)
src/settings/dns/local_domains.cpp \
src/settings/wifi/status.cpp \ %.o: %.cpp
src/settings/wifi/name.cpp \ $(CROSS_COMPILE)$(CXX) $(CFLAGS) $(INCLUDES) -c $< -o $@
src/settings/wifi/password.cpp \
src/settings/wifi/qr.cpp \
src/settings/wifi/channel.cpp \
src/settings/ftp/ftp.cpp \
src/system/reboot.cpp \
src/system/syslog.cpp \
src/system/uptime.cpp \
src/system/update.cpp \
src/OpenRouter/OpenRouter.cpp \
src/auth/auth.cpp \
src/libs/QR-Code-generator/qrcodegen.cpp \
src/libs/QR-Code-generator/qrtosvg.cpp
TARGET=build/openrouter
default: all
all: build
.PHONY: build
build:
@if [ ! -d build ]; then \
mkdir build; \
fi
$(CXX) -o $(TARGET) $(SOURCES) $(CXXFLAGS)
$(STRIP) $(TARGET)
clean: clean:
@if [ -f $(TARGET) ]; then \ rm -f $(OBJS) $(TARGET)
rm -v $(TARGET); \
fi
install:
@if [ ! -f /usr/bin/openrouter ]; then \
install -v $(TARGET) /usr/bin/openrouter; \
fi
# install -d /usr/share/openrouter
@if [ ! -d /usr/share/openrouter ]; then \
install -dv src/web /usr/share/openrouter/web; \
cp -rv src/web/* /usr/share/openrouter/web; \
fi
uninstall:
@if [ -d /usr/share/openrouter ]; then \
rm -rv /usr/share/openrouter; \
fi
@if [ -f /usr/bin/openrouter ]; then \
rm -v /usr/bin/openrouter; \
fi
+1 -1
View File
@@ -1,5 +1,5 @@
{ {
"auth_service": "http://127.0.0.1:43243", "auth_service": "http://127.0.0.1:8222",
"server": { "server": {
"ip": "0.0.0.0", "ip": "0.0.0.0",
"port": 43244 "port": 43244
+2 -2
View File
@@ -9,11 +9,11 @@ bool authenticate(const std::string &token)
httplib::Client cli(config::config.getConfig()["auth_service"]); httplib::Client cli(config::config.getConfig()["auth_service"]);
std::string body = R"({"token":")" + token + R"("})"; std::string body = R"({"token":")" + token + R"("})";
httplib::Result res = cli.Post("/api/access", body, JSON_TYPE); httplib::Result res = cli.Post("/api/token/verify", body, JSON_TYPE);
if (res->status == httplib::OK_200) if (res->status == httplib::OK_200)
{ {
nlohmann::json resjson = nlohmann::json::parse(res->body); nlohmann::json resjson = nlohmann::json::parse(res->body);
if (resjson["access"] == "reject") if (resjson["valid"] == "true")
{ {
return false; return false;
} }
+2 -2
View File
@@ -2,8 +2,8 @@ const host = window.location.origin;
const prefix = "api"; const prefix = "api";
const routes = { const routes = {
login: () => ["http://localhost:43243", prefix, "token"].join("/"), login: () => ["http://localhost:8222", prefix, "token"].join("/"),
user: () => ["http://localhost:43243", prefix, "users", "user"].join("/"), user: () => ["http://localhost:8222", prefix, "users", "user"].join("/"),
wifi_password_set: () => wifi_password_set: () =>
[host, prefix, "settings", "wifi", "password", "set"].join("/"), [host, prefix, "settings", "wifi", "password", "set"].join("/"),
+92 -92
View File
@@ -8,101 +8,101 @@ unsigned char routes_js[] = {
0x20, 0x3d, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x67, 0x20, 0x3d, 0x20, 0x7b, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x6c, 0x6f, 0x67,
0x69, 0x6e, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x5b, 0x22, 0x69, 0x6e, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x5b, 0x22,
0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x68, 0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x6c,
0x68, 0x6f, 0x73, 0x74, 0x3a, 0x34, 0x33, 0x32, 0x34, 0x33, 0x22, 0x2c, 0x68, 0x6f, 0x73, 0x74, 0x3a, 0x38, 0x32, 0x32, 0x32, 0x22, 0x2c, 0x20,
0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x74, 0x6f, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x74, 0x6f, 0x6b,
0x6b, 0x65, 0x6e, 0x22, 0x5d, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x65, 0x6e, 0x22, 0x5d, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f,
0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x22, 0x29, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x75, 0x73, 0x65, 0x72,
0x72, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x5b, 0x22, 0x68, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x5b, 0x22, 0x68, 0x74,
0x74, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x68, 0x74, 0x70, 0x3a, 0x2f, 0x2f, 0x6c, 0x6f, 0x63, 0x61, 0x6c, 0x68, 0x6f,
0x6f, 0x73, 0x74, 0x3a, 0x34, 0x33, 0x32, 0x34, 0x33, 0x22, 0x2c, 0x20, 0x73, 0x74, 0x3a, 0x38, 0x32, 0x32, 0x32, 0x22, 0x2c, 0x20, 0x70, 0x72,
0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x75, 0x73, 0x65, 0x65, 0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x75, 0x73, 0x65, 0x72, 0x73,
0x72, 0x73, 0x22, 0x2c, 0x20, 0x22, 0x75, 0x73, 0x65, 0x72, 0x22, 0x5d, 0x22, 0x2c, 0x20, 0x22, 0x75, 0x73, 0x65, 0x72, 0x22, 0x5d, 0x2e, 0x6a,
0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x0a, 0x20,
0x0a, 0x20, 0x20, 0x20, 0x20, 0x77, 0x69, 0x66, 0x69, 0x5f, 0x70, 0x61, 0x20, 0x20, 0x20, 0x77, 0x69, 0x66, 0x69, 0x5f, 0x70, 0x61, 0x73, 0x73,
0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x73, 0x65, 0x74, 0x3a, 0x20, 0x77, 0x6f, 0x72, 0x64, 0x5f, 0x73, 0x65, 0x74, 0x3a, 0x20, 0x28, 0x29,
0x28, 0x29, 0x20, 0x3d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x3d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
0x20, 0x20, 0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65,
0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e,
0x67, 0x73, 0x22, 0x2c, 0x20, 0x22, 0x77, 0x69, 0x66, 0x69, 0x22, 0x2c,
0x20, 0x22, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x2c,
0x20, 0x22, 0x73, 0x65, 0x74, 0x22, 0x5d, 0x2e, 0x6a, 0x6f, 0x69, 0x6e,
0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x77,
0x69, 0x66, 0x69, 0x5f, 0x71, 0x72, 0x5f, 0x67, 0x65, 0x74, 0x3a, 0x20,
0x28, 0x29, 0x20, 0x3d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
0x20, 0x20, 0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65,
0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e,
0x67, 0x73, 0x22, 0x2c, 0x20, 0x22, 0x77, 0x69, 0x66, 0x69, 0x22, 0x2c,
0x20, 0x22, 0x71, 0x72, 0x22, 0x2c, 0x20, 0x22, 0x67, 0x65, 0x74, 0x22,
0x5d, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c,
0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e,
0x67, 0x73, 0x5f, 0x67, 0x65, 0x74, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d,
0x3e, 0x20, 0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65,
0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e,
0x67, 0x73, 0x22, 0x2c, 0x20, 0x22, 0x67, 0x65, 0x74, 0x22, 0x5d, 0x2e,
0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x20,
0x20, 0x20, 0x20, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x5f,
0x73, 0x65, 0x74, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x5b,
0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78,
0x2c, 0x20, 0x22, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x22,
0x2c, 0x20, 0x22, 0x73, 0x65, 0x74, 0x22, 0x5d, 0x2e, 0x6a, 0x6f, 0x69,
0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20,
0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x5f, 0x62, 0x61, 0x63,
0x6b, 0x75, 0x70, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x5b,
0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78,
0x2c, 0x20, 0x22, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x22,
0x2c, 0x20, 0x22, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x22, 0x5d, 0x2e,
0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x20,
0x20, 0x20, 0x20, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x5f,
0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65, 0x3a, 0x20, 0x28, 0x29, 0x20,
0x3d, 0x3e, 0x20, 0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72,
0x65, 0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x73, 0x65, 0x74, 0x74, 0x69,
0x6e, 0x67, 0x73, 0x22, 0x2c, 0x20, 0x22, 0x72, 0x65, 0x73, 0x74, 0x6f,
0x72, 0x65, 0x22, 0x5d, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f,
0x22, 0x29, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x73, 0x74,
0x6f, 0x72, 0x65, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x73,
0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20,
0x20, 0x20, 0x20, 0x20, 0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70,
0x72, 0x65, 0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x73, 0x65, 0x74, 0x74,
0x69, 0x6e, 0x67, 0x73, 0x22, 0x2c, 0x20, 0x22, 0x72, 0x65, 0x73, 0x74,
0x6f, 0x72, 0x65, 0x22, 0x2c, 0x20, 0x22, 0x64, 0x65, 0x66, 0x61, 0x75,
0x6c, 0x74, 0x73, 0x22, 0x5d, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22,
0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65,
0x62, 0x6f, 0x6f, 0x74, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20,
0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69,
0x78, 0x2c, 0x20, 0x22, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x22, 0x2c, 0x78, 0x2c, 0x20, 0x22, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73,
0x20, 0x22, 0x72, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x22, 0x5d, 0x2e, 0x6a, 0x22, 0x2c, 0x20, 0x22, 0x77, 0x69, 0x66, 0x69, 0x22, 0x2c, 0x20, 0x22,
0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x20, 0x20, 0x70, 0x61, 0x73, 0x73, 0x77, 0x6f, 0x72, 0x64, 0x22, 0x2c, 0x20, 0x22,
0x20, 0x20, 0x73, 0x79, 0x73, 0x6c, 0x6f, 0x67, 0x3a, 0x20, 0x28, 0x29, 0x73, 0x65, 0x74, 0x22, 0x5d, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22,
0x20, 0x3d, 0x3e, 0x20, 0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x77, 0x69, 0x66,
0x72, 0x65, 0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x73, 0x79, 0x73, 0x74, 0x69, 0x5f, 0x71, 0x72, 0x5f, 0x67, 0x65, 0x74, 0x3a, 0x20, 0x28, 0x29,
0x65, 0x6d, 0x22, 0x2c, 0x20, 0x22, 0x73, 0x79, 0x73, 0x6c, 0x6f, 0x67, 0x20, 0x3d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69,
0x78, 0x2c, 0x20, 0x22, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73,
0x22, 0x2c, 0x20, 0x22, 0x77, 0x69, 0x66, 0x69, 0x22, 0x2c, 0x20, 0x22,
0x71, 0x72, 0x22, 0x2c, 0x20, 0x22, 0x67, 0x65, 0x74, 0x22, 0x5d, 0x2e,
0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x0a,
0x20, 0x20, 0x20, 0x20, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73,
0x5f, 0x67, 0x65, 0x74, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20,
0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69,
0x78, 0x2c, 0x20, 0x22, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73,
0x22, 0x2c, 0x20, 0x22, 0x67, 0x65, 0x74, 0x22, 0x5d, 0x2e, 0x6a, 0x6f,
0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x20, 0x20, 0x20,
0x20, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x5f, 0x73, 0x65,
0x74, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x5b, 0x68, 0x6f,
0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x2c, 0x20,
0x22, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x22, 0x2c, 0x20,
0x22, 0x73, 0x65, 0x74, 0x22, 0x5d, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28,
0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x73, 0x65,
0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x5f, 0x62, 0x61, 0x63, 0x6b, 0x75,
0x70, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x5b, 0x68, 0x6f,
0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x2c, 0x20,
0x22, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x22, 0x2c, 0x20,
0x22, 0x62, 0x61, 0x63, 0x6b, 0x75, 0x70, 0x22, 0x5d, 0x2e, 0x6a, 0x6f,
0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x20, 0x20, 0x20,
0x20, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67, 0x73, 0x5f, 0x72, 0x65,
0x73, 0x74, 0x6f, 0x72, 0x65, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e,
0x20, 0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x66,
0x69, 0x78, 0x2c, 0x20, 0x22, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e, 0x67,
0x73, 0x22, 0x2c, 0x20, 0x22, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72, 0x65,
0x22, 0x5d, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x22, 0x5d, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29,
0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x75, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72,
0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x5b, 0x68, 0x6f, 0x73, 0x65, 0x5f, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74, 0x73, 0x3a, 0x20,
0x74, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20,
0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x22, 0x2c, 0x20, 0x22, 0x75, 0x70, 0x20, 0x20, 0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65,
0x74, 0x69, 0x6d, 0x65, 0x22, 0x5d, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x73, 0x65, 0x74, 0x74, 0x69, 0x6e,
0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x75, 0x67, 0x73, 0x22, 0x2c, 0x20, 0x22, 0x72, 0x65, 0x73, 0x74, 0x6f, 0x72,
0x70, 0x6c, 0x6f, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x3a, 0x65, 0x22, 0x2c, 0x20, 0x22, 0x64, 0x65, 0x66, 0x61, 0x75, 0x6c, 0x74,
0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x5b, 0x68, 0x6f, 0x73, 0x74, 0x73, 0x22, 0x5d, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22,
0x2c, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x73, 0x29, 0x2c, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x72, 0x65, 0x62, 0x6f,
0x79, 0x73, 0x74, 0x65, 0x6d, 0x22, 0x2c, 0x20, 0x22, 0x75, 0x70, 0x64, 0x6f, 0x74, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x5b, 0x68,
0x61, 0x74, 0x65, 0x22, 0x2c, 0x20, 0x22, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x2c,
0x64, 0x22, 0x5d, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x20, 0x22, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x22, 0x2c, 0x20, 0x22,
0x29, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x75, 0x70, 0x64, 0x61, 0x74, 0x72, 0x65, 0x62, 0x6f, 0x6f, 0x74, 0x22, 0x5d, 0x2e, 0x6a, 0x6f, 0x69,
0x65, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x20, 0x20, 0x20, 0x20,
0x3d, 0x3e, 0x20, 0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x73, 0x79, 0x73, 0x6c, 0x6f, 0x67, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d,
0x65, 0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x73, 0x79, 0x73, 0x74, 0x65,
0x6d, 0x22, 0x2c, 0x20, 0x22, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22,
0x2c, 0x20, 0x22, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0x5d, 0x2e,
0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x20,
0x20, 0x20, 0x20, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x72,
0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d,
0x3e, 0x20, 0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x3e, 0x20, 0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65,
0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d,
0x22, 0x2c, 0x20, 0x22, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0x2c, 0x22, 0x2c, 0x20, 0x22, 0x73, 0x79, 0x73, 0x6c, 0x6f, 0x67, 0x22, 0x5d,
0x20, 0x22, 0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, 0x5d,
0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a,
0x7d, 0x3b, 0x0a 0x20, 0x20, 0x20, 0x20, 0x75, 0x70, 0x74, 0x69, 0x6d, 0x65, 0x3a, 0x20,
0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20, 0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c,
0x20, 0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x73, 0x79,
0x73, 0x74, 0x65, 0x6d, 0x22, 0x2c, 0x20, 0x22, 0x75, 0x70, 0x74, 0x69,
0x6d, 0x65, 0x22, 0x5d, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f,
0x22, 0x29, 0x2c, 0x0a, 0x0a, 0x20, 0x20, 0x20, 0x20, 0x75, 0x70, 0x6c,
0x6f, 0x61, 0x64, 0x5f, 0x69, 0x6d, 0x61, 0x67, 0x65, 0x3a, 0x20, 0x28,
0x29, 0x20, 0x3d, 0x3e, 0x20, 0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20,
0x70, 0x72, 0x65, 0x66, 0x69, 0x78, 0x2c, 0x20, 0x22, 0x73, 0x79, 0x73,
0x74, 0x65, 0x6d, 0x22, 0x2c, 0x20, 0x22, 0x75, 0x70, 0x64, 0x61, 0x74,
0x65, 0x22, 0x2c, 0x20, 0x22, 0x75, 0x70, 0x6c, 0x6f, 0x61, 0x64, 0x22,
0x5d, 0x2e, 0x6a, 0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c,
0x0a, 0x20, 0x20, 0x20, 0x20, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f,
0x69, 0x6d, 0x61, 0x67, 0x65, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e,
0x20, 0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x66,
0x69, 0x78, 0x2c, 0x20, 0x22, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x22,
0x2c, 0x20, 0x22, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0x2c, 0x20,
0x22, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0x5d, 0x2e, 0x6a, 0x6f,
0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x20, 0x20, 0x20,
0x20, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x5f, 0x70, 0x72, 0x6f, 0x67,
0x72, 0x65, 0x73, 0x73, 0x3a, 0x20, 0x28, 0x29, 0x20, 0x3d, 0x3e, 0x20,
0x5b, 0x68, 0x6f, 0x73, 0x74, 0x2c, 0x20, 0x70, 0x72, 0x65, 0x66, 0x69,
0x78, 0x2c, 0x20, 0x22, 0x73, 0x79, 0x73, 0x74, 0x65, 0x6d, 0x22, 0x2c,
0x20, 0x22, 0x75, 0x70, 0x64, 0x61, 0x74, 0x65, 0x22, 0x2c, 0x20, 0x22,
0x70, 0x72, 0x6f, 0x67, 0x72, 0x65, 0x73, 0x73, 0x22, 0x5d, 0x2e, 0x6a,
0x6f, 0x69, 0x6e, 0x28, 0x22, 0x2f, 0x22, 0x29, 0x2c, 0x0a, 0x7d, 0x3b,
0x0a
}; };
unsigned int routes_js_len = 1251; unsigned int routes_js_len = 1249;
@@ -0,0 +1 @@
set(CMAKE_CXX_COMPILER aarch64-buildroot-linux-uclibc-g++)
@@ -0,0 +1,12 @@
[binaries]
c = 'aarch64-buildroot-linux-uclibc-gcc'
cpp = 'aarch64-buildroot-linux-uclibc-g++'
ar = 'aarch64-buildroot-linux-uclibc-ar'
strip = 'aarch64-buildroot-linux-uclibc-strip'
ld = 'aarch64-buildroot-linux-uclibc-ld'
[host_machine]
system = 'linux'
cpu_family = 'x86_64'
cpu = 'x86_64'
endian = 'little'
@@ -0,0 +1 @@
set(CMAKE_CXX_COMPILER x86_64-buildroot-linux-uclibc-g++)
@@ -0,0 +1,12 @@
[binaries]
c = 'x86_64-buildroot-linux-uclibc-gcc'
cpp = 'x86_64-buildroot-linux-uclibc-g++'
ar = 'x86_64-buildroot-linux-uclibc-ar'
strip = 'x86_64-buildroot-linux-uclibc-strip'
ld = 'x86_64-buildroot-linux-uclibc-ld'
[host_machine]
system = 'linux'
cpu_family = 'x86_64'
cpu = 'x86_64'
endian = 'little'