Browse Source

doc: Adding badges and binary links

Matthias Ladkau 3 years ago
parent
commit
4c0dd5296a
3 changed files with 22 additions and 1 deletions
  1. 6 0
      Makefile
  2. 11 1
      README.md
  3. 5 0
      examples/fib/pack.sh

+ 6 - 0
Makefile

@@ -45,30 +45,36 @@ dist: build build-win build-mac build-arm7 build-arm8
 
 	mkdir -p dist/$(NAME)_linux_amd64
 	mv $(NAME) dist/$(NAME)_linux_amd64
+
+	cp -fR examples dist/$(NAME)_linux_amd64
 	cp LICENSE dist/$(NAME)_linux_amd64
 	cp NOTICE dist/$(NAME)_linux_amd64
 	tar --directory=dist -cz $(NAME)_linux_amd64 > dist/$(NAME)_$(TAG)_linux_amd64.tar.gz
 
 	mkdir -p dist/$(NAME)_darwin_amd64
 	mv $(NAME).mac dist/$(NAME)_darwin_amd64/$(NAME)
+	cp -fR examples dist/$(NAME)_darwin_amd64
 	cp LICENSE dist/$(NAME)_darwin_amd64
 	cp NOTICE dist/$(NAME)_darwin_amd64
 	tar --directory=dist -cz $(NAME)_darwin_amd64 > dist/$(NAME)_$(TAG)_darwin_amd64.tar.gz
 
 	mkdir -p dist/$(NAME)_windows_amd64
 	mv $(NAME).exe dist/$(NAME)_windows_amd64
+	cp -fR examples dist/$(NAME)_windows_amd64
 	cp LICENSE dist/$(NAME)_windows_amd64
 	cp NOTICE dist/$(NAME)_windows_amd64
 	tar --directory=dist -cz $(NAME)_windows_amd64 > dist/$(NAME)_$(TAG)_windows_amd64.tar.gz
 
 	mkdir -p dist/$(NAME)_arm7
 	mv $(NAME).arm7 dist/$(NAME)_arm7
+	cp -fR examples dist/$(NAME)_arm7
 	cp LICENSE dist/$(NAME)_arm7
 	cp NOTICE dist/$(NAME)_arm7
 	tar --directory=dist -cz $(NAME)_arm7 > dist/$(NAME)_$(TAG)_arm7.tar.gz
 
 	mkdir -p dist/$(NAME)_arm8
 	mv $(NAME).arm8 dist/$(NAME)_arm8
+	cp -fR examples dist/$(NAME)_arm8
 	cp LICENSE dist/$(NAME)_arm8
 	cp NOTICE dist/$(NAME)_arm8
 	tar --directory=dist -cz $(NAME)_arm8 > dist/$(NAME)_$(TAG)_arm8.tar.gz

+ 11 - 1
README.md

@@ -7,6 +7,14 @@ ECAL
 
 ECAL is an ECA (Event Condition Action) language for concurrent event processing. ECAL can define event-based systems using rules which are triggered by events. ECAL is intended to be embedded into other software to provide an easy to use scripting language which can react to external events.
 
+<p>
+<a href="https://void.devt.de/pub/ecal/coverage.txt"><img src="https://void.devt.de/pub/ecal/test_result.svg" alt="Code coverage"></a>
+<a href="https://goreportcard.com/report/devt.de/krotik/ecal">
+<img src="https://goreportcard.com/badge/devt.de/krotik/ecal?style=flat-square" alt="Go Report Card"></a>
+<a href="https://godoc.org/devt.de/krotik/ecal">
+<img src="https://godoc.org/devt.de/krotik/ecal?status.svg" alt="Go Doc"></a>
+</p>
+
 Features
 --------
 - Simple intuitive syntax
@@ -18,7 +26,7 @@ Features
 
 ### Getting started
 
-Clone the repository and build the ECAL executable with a simple `make` command. You need Go 1.14 or higher.
+You can either download a pre-compiled package for Windows (win64) or Linux (amd64) [here](https://void.devt.de/pub/ecal) or clone the repository and build the ECAL executable with a simple `make` command. You need Go 1.14 or higher.
 
 Run `./ecal` to start an interactive session. You can now write simple one line statements and evaluate them:
 
@@ -73,6 +81,8 @@ $ sh run.sh
 
 The interpreter can be run in debug mode which adds debug commands to the console. Run the ECAL program in debug mode with: `sh debug.sh` - this will also start a debug server which external development environments can connect to. There is a [VSCode integration](ecal-support/README.md) available which allows debugging via a graphical interface.
 
+It is possible to package your ECAL project into an executable that can be run without a separate ECAL interpreter. Run the `sh pack.sh` and see the script for details.
+
 ### Embedding ECAL
 
 The primary purpose of ECAL is to be a simple multi-purpose language which can be embedded into other software:

+ 5 - 0
examples/fib/pack.sh

@@ -0,0 +1,5 @@
+#!/bin/sh
+mkdir pack
+cp fib.ecal pack
+cp -fR lib pack
+../../ecal pack -dir pack fib.ecal