1
0
forked from me/IronOS

./workspace/TS100 -> ./source/

This commit is contained in:
Ben V. Brown
2021-01-17 09:43:55 +11:00
parent ad37c752cc
commit 184b2c909f
325 changed files with 41 additions and 441 deletions

View File

@@ -1,6 +1,6 @@
name: CI name: CI
on: [push,pull_request] on: [push, pull_request]
jobs: jobs:
build_TS80: build_TS80:
@@ -10,8 +10,8 @@ jobs:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- name: chmod - name: chmod
run: chmod +x setup.sh && chmod +x workspace/TS100/build.sh && sudo mkdir -p /build/cache && sudo chmod -R 777 /build run: chmod +x setup.sh && chmod +x source/build.sh && sudo mkdir -p /build/cache && sudo chmod -R 777 /build
- name: Cached compiler source files - name: Cached compiler source files
uses: actions/cache@v2 uses: actions/cache@v2
env: env:
@@ -27,15 +27,15 @@ jobs:
run: ./setup.sh run: ./setup.sh
- name: build TS80 - name: build TS80
run: cd workspace/TS100 && ./build.sh -m TS80 run: cd source && ./build.sh -m TS80
- name: Archive TS80 artifacts - name: Archive TS80 artifacts
uses: actions/upload-artifact@v2 uses: actions/upload-artifact@v2
with: with:
name: TS80 name: TS80
path: | path: |
workspace/TS100/Hexfile/TS80_*.hex source/Hexfile/TS80_*.hex
workspace/TS100/Hexfile/TS80_*.bin source/Hexfile/TS80_*.bin
if-no-files-found: error if-no-files-found: error
build_TS80P: build_TS80P:
runs-on: ubuntu-latest runs-on: ubuntu-latest
@@ -44,7 +44,7 @@ jobs:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- name: chmod - name: chmod
run: chmod +x setup.sh && chmod +x workspace/TS100/build.sh && sudo mkdir -p /build/cache && sudo chmod -R 777 /build run: chmod +x setup.sh && chmod +x source/build.sh && sudo mkdir -p /build/cache && sudo chmod -R 777 /build
- name: Cached compiler source files - name: Cached compiler source files
uses: actions/cache@v2 uses: actions/cache@v2
@@ -61,15 +61,15 @@ jobs:
run: ./setup.sh run: ./setup.sh
- name: build TS80P - name: build TS80P
run: cd workspace/TS100 && ./build.sh -m TS80P run: cd source && ./build.sh -m TS80P
- name: Archive TS80P artifacts - name: Archive TS80P artifacts
uses: actions/upload-artifact@v2 uses: actions/upload-artifact@v2
with: with:
name: TS80P name: TS80P
path: | path: |
workspace/TS100/Hexfile/TS80P_*.hex source/Hexfile/TS80P_*.hex
workspace/TS100/Hexfile/TS80P_*.bin source/Hexfile/TS80P_*.bin
if-no-files-found: error if-no-files-found: error
build_TS100: build_TS100:
runs-on: ubuntu-latest runs-on: ubuntu-latest
@@ -78,8 +78,8 @@ jobs:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- name: chmod - name: chmod
run: chmod +x setup.sh && chmod +x workspace/TS100/build.sh && sudo mkdir -p /build/cache && sudo chmod -R 777 /build run: chmod +x setup.sh && chmod +x source/build.sh && sudo mkdir -p /build/cache && sudo chmod -R 777 /build
- name: Cached compiler source files - name: Cached compiler source files
uses: actions/cache@v2 uses: actions/cache@v2
env: env:
@@ -95,15 +95,15 @@ jobs:
run: ./setup.sh run: ./setup.sh
- name: build TS100 - name: build TS100
run: cd workspace/TS100 && ./build.sh -m TS100 run: cd source && ./build.sh -m TS100
- name: Archive TS100 artifacts - name: Archive TS100 artifacts
uses: actions/upload-artifact@v2 uses: actions/upload-artifact@v2
with: with:
name: TS100 name: TS100
path: | path: |
workspace/TS100/Hexfile/TS100_*.hex source/Hexfile/TS100_*.hex
workspace/TS100/Hexfile/TS100_*.bin source/Hexfile/TS100_*.bin
if-no-files-found: error if-no-files-found: error
build_Pinecil: build_Pinecil:
@@ -113,8 +113,8 @@ jobs:
- uses: actions/checkout@v2 - uses: actions/checkout@v2
- name: chmod - name: chmod
run: chmod +x setup.sh && chmod +x workspace/TS100/build.sh && sudo mkdir -p /build/cache && sudo chmod -R 777 /build run: chmod +x setup.sh && chmod +x source/build.sh && sudo mkdir -p /build/cache && sudo chmod -R 777 /build
- name: Cached compiler source files - name: Cached compiler source files
uses: actions/cache@v2 uses: actions/cache@v2
env: env:
@@ -130,13 +130,13 @@ jobs:
run: ./setup.sh run: ./setup.sh
- name: build Pinecil - name: build Pinecil
run: cd workspace/TS100 && ./build.sh -m Pinecil run: cd source && ./build.sh -m Pinecil
- name: Archive Pinecil artifacts - name: Archive Pinecil artifacts
uses: actions/upload-artifact@v2 uses: actions/upload-artifact@v2
with: with:
name: Pinecil name: Pinecil
path: | path: |
workspace/TS100/Hexfile/Pinecil_*.hex source/Hexfile/Pinecil_*.hex
workspace/TS100/Hexfile/Pinecil_*.bin source/Hexfile/Pinecil_*.bin
if-no-files-found: error if-no-files-found: error

25
.gitignore vendored
View File

@@ -27,46 +27,32 @@
*.app *.app
*.i*86 *.i*86
*.x86_64 *.x86_64
workspace/*.hex
# Debug files # Debug files
*.dSYM/ *.dSYM/
*.su *.su
workspace/ts100/Debug/* source/.metadata/*
workspace/.metadata/*
workspace/ts100/.settings/language.settings.xml
workspace/ts100/.cproject
TS100/KiCad/TS100.bak TS100/KiCad/TS100.bak
Logo GUI/TS100 Logo Editor/TS100 Logo Editor/obj/ Logo GUI/TS100 Logo Editor/TS100 Logo Editor/obj/
Logo GUI/TS100 Logo Editor/TS100 Logo Editor/bin/ Logo GUI/TS100 Logo Editor/TS100 Logo Editor/bin/
workspace/ts100/ts100.xml
workspace/ts100_old/*
*.cache *.cache
workspace/TS100/.settings/language.settings.xml
workspace/TS100A/Release/TS100A.map
workspace/TS100A/Release/TS100A.list
workspace/TS100A/Release/TS100A.hex
workspace/TS100A/.settings/language.settings.xml
workspace/TS100A/.metadata/
Translation Editor/.vscode/ Translation Editor/.vscode/
Translation Editor/__pycache__/ Translation Editor/__pycache__/
*.pyc *.pyc
*.lst *.lst
*.mk *.mk
*.list *.list
workspace/TS100/Release/ source/Hexfile/
workspace/TS100/Hexfile/ source/Objects/
workspace/RemoteSystemsTempFiles/
workspace/TS100/.settings/
workspace/TS100/TS80/
ci/artefacts/ ci/artefacts/
ci/secrets/unencrypted/ ci/secrets/unencrypted/
codeship.aes codeship.aes
.vscode/settings.json .vscode/settings.json
# Auto generated files # Auto generated files
workspace/TS100/Core/Inc/unit.h source/Core/Inc/unit.h
# IDE configs # IDE configs
.vs/* .vs/*
.settings/* .settings/*
@@ -189,4 +175,3 @@ fabric.properties
CoreCompileInputs.cache CoreCompileInputs.cache
.vscode/settings.json .vscode/settings.json
workspace/TS100/TS100/

View File

@@ -4,11 +4,14 @@ Building this software can be performed two ways, using the STMCubeIDE or using
## STM Cube IDE ## STM Cube IDE
The repository is setup to try and make this painless, when starting the IDE you can import the project by pointing the internal search to the workspace folder of this repository. If you start with a fresh installation, close the welcome screen tab, and then in the left sidebar, there is an option to "import". Select General -> Import existing projects -> Set the top location option to this repositories workspace -> Should find the TS100 project. The easiest way to start working using the STM Cube IDE is to create a new project for the STM32F103RCTx.
Then once this is created remove the auto-generated source code.
Next drag the contents of the `source` folder into the project and choose to link to files.
You will need to update the build settings for include paths & point to the new `.ld` linker file
## Developing with command line tools & building a release ## Developing with command line tools & building a release
In the `workspace/TS100` folder there is a makefile that can be used to build the repository using command line tools. In the `source` folder there is a makefile that can be used to build the repository using command line tools.
when running the `make` command, specify which model of the device & the language you would like to use. when running the `make` command, specify which model of the device & the language you would like to use.
`make -j8 lang=EN model=TS80` `make -j8 lang=EN model=TS80`
@@ -23,4 +26,5 @@ To update the language translation files & associated font map, execute the `mak
I highly reccomend using the command line tools and using docker to run the compiler. I highly reccomend using the command line tools and using docker to run the compiler.
Its a bit more fussy on setup than the STM tooling and this is by far the easiest way. Its a bit more fussy on setup than the STM tooling and this is by far the easiest way.
If you _need_ an IDE I have used [Nuclei's IDE](https://nucleisys.com/download.php) If you _need_ an IDE I have used [Nuclei's IDE](https://nucleisys.com/download.php)
And follow same idea as the STM Cube IDE notes above.

View File

@@ -509,9 +509,7 @@ def writeUnit(languageCode, defs, f, UnitCodes):
def readVersion(): def readVersion():
with open( with open(os.path.relpath(jsonDir + "/../source/version.h"), "r") as version_file:
os.path.relpath(jsonDir + "/../workspace/TS100/version.h"), "r"
) as version_file:
try: try:
for line in version_file: for line in version_file:
if re.findall(r"^.*(?<=(#define)).*(?<=(BUILD_VERSION))", line): if re.findall(r"^.*(?<=(#define)).*(?<=(BUILD_VERSION))", line):
@@ -551,13 +549,13 @@ def read_opts():
if len(sys.argv) > 2: if len(sys.argv) > 2:
outFileTranslationCPP = sys.argv[2] outFileTranslationCPP = sys.argv[2]
else: else:
outDir = os.path.relpath(jsonDir + "/../workspace/TS100/Core/Gen") outDir = os.path.relpath(jsonDir + "/../source/Core/Gen")
outFileTranslationCPP = os.path.join(outDir, TRANSLATION_CPP) outFileTranslationCPP = os.path.join(outDir, TRANSLATION_CPP)
if len(sys.argv) > 3: if len(sys.argv) > 3:
outFileUnitH = sys.argv[3] outFileUnitH = sys.argv[3]
else: else:
outDir = os.path.relpath(jsonDir + "/../workspace/TS100/Core/Inc") outDir = os.path.relpath(jsonDir + "/../source/Core/Inc")
outFileUnitH = os.path.join(outDir, UNIT_H) outFileUnitH = os.path.join(outDir, UNIT_H)
if len(sys.argv) > 4: if len(sys.argv) > 4:

View File

@@ -5,9 +5,9 @@ set -u
mkdir -p /build/ci/artefacts mkdir -p /build/ci/artefacts
# Build STM code # Build STM code
cd /build/source/workspace/TS100/ cd /build/source/source/
bash ./build.sh || exit 1 bash ./build.sh || exit 1
echo "All Firmware built" echo "All Firmware built"
# Copy out all the final resulting files we would like to store for the next op # Copy out all the final resulting files we would like to store for the next op
cp -r /build/source/workspace/TS100/Hexfile/*.hex /build/ci/artefacts/ cp -r /build/source/source/Hexfile/*.hex /build/ci/artefacts/
cp -r /build/source/workspace/TS100/Hexfile/*.bin /build/ci/artefacts/ cp -r /build/source/source/Hexfile/*.bin /build/ci/artefacts/

View File

View File

View File

View File

View File

View File

View File

View File

Some files were not shown because too many files have changed in this diff Show More