Merge pull request #3382 from 3d-gussner/MK3_3.11.0_Fix_PF-build
Update PF-build.sh for MK2.5/S community languages and build-server fixes
This commit is contained in:
commit
42ac9c0ec3
44
PF-build.sh
44
PF-build.sh
@ -56,7 +56,7 @@
|
|||||||
# Some may argue that this is only used by a script, BUT as soon someone accidentally or on purpose starts Arduino IDE
|
# Some may argue that this is only used by a script, BUT as soon someone accidentally or on purpose starts Arduino IDE
|
||||||
# it will use the default Arduino IDE folders and so can corrupt the build environment.
|
# it will use the default Arduino IDE folders and so can corrupt the build environment.
|
||||||
#
|
#
|
||||||
# Version: 2.0.0-Build_67
|
# Version: 2.0.0-Build_69
|
||||||
# Change log:
|
# Change log:
|
||||||
# 12 Jan 2019, 3d-gussner, Fixed "compiler.c.elf.flags=-w -Os -Wl,-u,vfprintf -lprintf_flt -lm -Wl,--gc-sections" in 'platform.txt'
|
# 12 Jan 2019, 3d-gussner, Fixed "compiler.c.elf.flags=-w -Os -Wl,-u,vfprintf -lprintf_flt -lm -Wl,--gc-sections" in 'platform.txt'
|
||||||
# 16 Jan 2019, 3d-gussner, Build_2, Added development check to modify 'Configuration.h' to prevent unwanted LCD messages that Firmware is unknown
|
# 16 Jan 2019, 3d-gussner, Build_2, Added development check to modify 'Configuration.h' to prevent unwanted LCD messages that Firmware is unknown
|
||||||
@ -169,8 +169,13 @@
|
|||||||
# 21 Jan 2022, 3d-gussner, Sort variants
|
# 21 Jan 2022, 3d-gussner, Sort variants
|
||||||
# Add Arduino 1.8.19 as an option
|
# Add Arduino 1.8.19 as an option
|
||||||
# 25 Jan 2022, 3d-gussner, Allow upper and lower case for MK404
|
# 25 Jan 2022, 3d-gussner, Allow upper and lower case for MK404
|
||||||
|
# 09 Feb 2022, 3d-gussner, Add community language firmware files for MK2.5/S
|
||||||
|
# Add selection of language in MK404 for MK2.5/S
|
||||||
|
# 10 Feb 2022, 3d-gussner, Add SRCDIR for compatibility with build server
|
||||||
|
|
||||||
|
|
||||||
SCRIPT_PATH="$( cd "$(dirname "$0")" ; pwd -P )"
|
SCRIPT_PATH="$( cd "$(dirname "$0")" ; pwd -P )"
|
||||||
|
export SRCDIR=$SCRIPT_PATH
|
||||||
|
|
||||||
#### Start: Failures
|
#### Start: Failures
|
||||||
failures()
|
failures()
|
||||||
@ -224,7 +229,7 @@ while getopts b:c:d:g:h:i:j:l:m:n:o:p:v:x:y:?h flag
|
|||||||
# '?' 'h' argument usage and help
|
# '?' 'h' argument usage and help
|
||||||
if [ "$help_flag" == "1" ] ; then
|
if [ "$help_flag" == "1" ] ; then
|
||||||
echo "***************************************"
|
echo "***************************************"
|
||||||
echo "* PF-build.sh Version: 2.0.0-Build_67 *"
|
echo "* PF-build.sh Version: 2.0.0-Build_69 *"
|
||||||
echo "***************************************"
|
echo "***************************************"
|
||||||
echo "Arguments:"
|
echo "Arguments:"
|
||||||
echo "$(tput setaf 2)-b$(tput sgr0) Build/commit number"
|
echo "$(tput setaf 2)-b$(tput sgr0) Build/commit number"
|
||||||
@ -1321,25 +1326,24 @@ create_multi_firmware()
|
|||||||
cp -f firmware.hex $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME.hex
|
cp -f firmware.hex $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME.hex
|
||||||
cp -f $BUILD_PATH/Firmware.ino.elf $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME.elf
|
cp -f $BUILD_PATH/Firmware.ino.elf $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME.elf
|
||||||
else
|
else
|
||||||
echo "$(tput setaf 2)Zip multi language firmware for MK2.5/miniRAMbo board to PF-build-hex folder$(tput sgr 0)"
|
#Search for created firmware languages
|
||||||
cp -f firmware_cz.hex $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME-cz.hex
|
langs=$(find firmware_*.hex | cut -d "_" -f2 | cut -d "." -f1)
|
||||||
cp -f firmware_de.hex $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME-de.hex
|
#Copy found firmware_*.hex files
|
||||||
cp -f firmware_es.hex $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME-es.hex
|
for la in $langs; do
|
||||||
cp -f firmware_fr.hex $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME-fr.hex
|
cp -f firmware_$la.hex $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME-$la.hex
|
||||||
cp -f firmware_it.hex $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME-it.hex
|
done
|
||||||
cp -f firmware_pl.hex $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME-pl.hex
|
|
||||||
cp -f firmware_nl.hex $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME-nl.hex
|
|
||||||
cp -f $BUILD_PATH/Firmware.ino.elf $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME.elf
|
cp -f $BUILD_PATH/Firmware.ino.elf $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME.elf
|
||||||
|
echo "$(tput setaf 2)Zip multi language firmware for MK2.5/miniRAMbo board to PF-build-hex folder$(tput sgr 0)"
|
||||||
if [ $TARGET_OS == "windows" ]; then
|
if [ $TARGET_OS == "windows" ]; then
|
||||||
zip a $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME.zip $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME-??.hex
|
zip a $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME.zip $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME-??.hex
|
||||||
rm $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME-??.hex
|
#rm $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME-??.hex
|
||||||
elif [ $TARGET_OS == "linux" ]; then
|
elif [ $TARGET_OS == "linux" ]; then
|
||||||
# Make a copy for MK404 sim of MK2, MK2.5, MK2.5S firmware
|
# Make a copy for MK404 sim of MK2, MK2.5, MK2.5S firmware
|
||||||
if [ ! -z "$mk404_flag" ]; then
|
if [ ! -z "$mk404_flag" ]; then
|
||||||
cp -f firmware_de.hex $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME.hex
|
cp -f firmware_de.hex $SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME.hex
|
||||||
fi
|
fi
|
||||||
# End of MK2, MK2.5, MK2.5S firmware copy
|
# End of MK2, MK2.5, MK2.5S firmware copy
|
||||||
zip -m -j ../../$OUTPUT_FOLDER/$OUTPUT_FILENAME.zip ../../$OUTPUT_FOLDER/$OUTPUT_FILENAME-??.hex
|
zip -j ../../$OUTPUT_FOLDER/$OUTPUT_FILENAME.zip ../../$OUTPUT_FOLDER/$OUTPUT_FILENAME-??.hex
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
@ -1500,11 +1504,6 @@ fi
|
|||||||
|
|
||||||
if [[ ! -z "$mk404_flag" && "$variant_flag" != "All " ]]; then
|
if [[ ! -z "$mk404_flag" && "$variant_flag" != "All " ]]; then
|
||||||
|
|
||||||
# For Prusa MK2, MK2.5/S
|
|
||||||
if [ "$MOTHERBOARD" == "BOARD_RAMBO_MINI_1_3" ]; then
|
|
||||||
MK404_PRINTER="${MK404_PRINTER}_mR13"
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Run MK404 with 'debugcore' and/or 'bootloader-file'
|
# Run MK404 with 'debugcore' and/or 'bootloader-file'
|
||||||
if [ ! -z "$board_mem_flag" ]; then
|
if [ ! -z "$board_mem_flag" ]; then
|
||||||
MK404_options="-x $board_mem_flag"
|
MK404_options="-x $board_mem_flag"
|
||||||
@ -1535,7 +1534,16 @@ if [[ ! -z "$mk404_flag" && "$variant_flag" != "All " ]]; then
|
|||||||
|
|
||||||
#Decide which hex file to use EN_ONLY or Multi language
|
#Decide which hex file to use EN_ONLY or Multi language
|
||||||
if [ "$LANGUAGES" == "ALL" ]; then
|
if [ "$LANGUAGES" == "ALL" ]; then
|
||||||
MK404_firmware_file=$SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME.hex
|
if [[ "$MK404_PRINTER" == "MK3" || "$MK404_PRINTER" == "MK3S" ]]; then
|
||||||
|
MK404_firmware_file=$SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME.hex
|
||||||
|
else
|
||||||
|
PS3="Select a language:"
|
||||||
|
select lan in ${langs[@]}
|
||||||
|
do
|
||||||
|
MK404_firmware_file=$SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME-$lan.hex
|
||||||
|
break
|
||||||
|
done
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
MK404_firmware_file=$SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME-EN_ONLY.hex
|
MK404_firmware_file=$SCRIPT_PATH/../$OUTPUT_FOLDER/$OUTPUT_FILENAME-EN_ONLY.hex
|
||||||
fi
|
fi
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
# Version 1.0.1 Build 9
|
# Version 1.0.1 Build 10
|
||||||
#
|
#
|
||||||
# config.sh - multi-language support configuration script
|
# config.sh - multi-language support configuration script
|
||||||
# Definition of absolute paths etc.
|
# Definition of absolute paths etc.
|
||||||
@ -19,8 +19,16 @@
|
|||||||
# and use these. More flexible for different build
|
# and use these. More flexible for different build
|
||||||
# scripts
|
# scripts
|
||||||
# Check correctly if files or dirs exist
|
# Check correctly if files or dirs exist
|
||||||
|
# 10 Feb. 2022, 3d-gussner, Add SRCDIR for compatibility with build server
|
||||||
#############################################################################
|
#############################################################################
|
||||||
#
|
#
|
||||||
|
if [ -z "$SRCDIR" ]; then
|
||||||
|
export SRCDIR=".."
|
||||||
|
fi
|
||||||
|
|
||||||
|
LNGDIR="$( cd "$(dirname "$0")" ; pwd -P )"
|
||||||
|
export LNGDIR=$LNGDIR
|
||||||
|
|
||||||
# Arduino main folder:
|
# Arduino main folder:
|
||||||
if [ -z "$ARDUINO" ]; then
|
if [ -z "$ARDUINO" ]; then
|
||||||
export ARDUINO=../../PF-build-env-1.0.6/1.8.5-1.0.4-linux-64 #C:/arduino-1.8.5
|
export ARDUINO=../../PF-build-env-1.0.6/1.8.5-1.0.4-linux-64 #C:/arduino-1.8.5
|
||||||
@ -68,15 +76,15 @@ fi
|
|||||||
MAX_COMMINITY_LANG=10 # Total 16 - 6 default
|
MAX_COMMINITY_LANG=10 # Total 16 - 6 default
|
||||||
COMMUNITY_LANGUAGES=""
|
COMMUNITY_LANGUAGES=""
|
||||||
#Search Firmware/config.h for active community group
|
#Search Firmware/config.h for active community group
|
||||||
COMMUNITY_LANG_GROUP=$(grep --max-count=1 "^#define COMMUNITY_LANG_GROUP" ../Firmware/config.h| cut -d ' ' -f3)
|
COMMUNITY_LANG_GROUP=$(grep --max-count=1 "^#define COMMUNITY_LANG_GROUP" $SRCDIR/Firmware/config.h| cut -d ' ' -f3)
|
||||||
|
|
||||||
# Search Firmware/config.h for active community languanges
|
# Search Firmware/config.h for active community languanges
|
||||||
if [ "$COMMUNITY_LANG_GROUP" = "1" ]; then
|
if [ "$COMMUNITY_LANG_GROUP" = "1" ]; then
|
||||||
COMMUNITY_LANGUAGES=$(grep --max-count=$MAX_COMMINITY_LANG "^#define COMMUNITY_LANG_GROUP1_" ../Firmware/config.h| cut -d '_' -f4 |cut -d ' ' -f1 |tr '[:upper:]' '[:lower:]'| tr '\n' ' ')
|
COMMUNITY_LANGUAGES=$(grep --max-count=$MAX_COMMINITY_LANG "^#define COMMUNITY_LANG_GROUP1_" $SRCDIR/Firmware/config.h| cut -d '_' -f4 |cut -d ' ' -f1 |tr '[:upper:]' '[:lower:]'| tr '\n' ' ')
|
||||||
elif [ "$COMMUNITY_LANG_GROUP" = "2" ]; then
|
elif [ "$COMMUNITY_LANG_GROUP" = "2" ]; then
|
||||||
COMMUNITY_LANGUAGES=$(grep --max-count=$MAX_COMMINITY_LANG "^#define COMMUNITY_LANG_GROUP2_" ../Firmware/config.h| cut -d '_' -f4 |cut -d ' ' -f1 |tr '[:upper:]' '[:lower:]'| tr '\n' ' ')
|
COMMUNITY_LANGUAGES=$(grep --max-count=$MAX_COMMINITY_LANG "^#define COMMUNITY_LANG_GROUP2_" $SRCDIR/Firmware/config.h| cut -d '_' -f4 |cut -d ' ' -f1 |tr '[:upper:]' '[:lower:]'| tr '\n' ' ')
|
||||||
elif [ "$COMMUNITY_LANG_GROUP" = "3" ]; then
|
elif [ "$COMMUNITY_LANG_GROUP" = "3" ]; then
|
||||||
COMMUNITY_LANGUAGES=$(grep --max-count=$MAX_COMMINITY_LANG "^#define COMMUNITY_LANG_GROUP3_" ../Firmware/config.h| cut -d '_' -f4 |cut -d ' ' -f1 |tr '[:upper:]' '[:lower:]'| tr '\n' ' ')
|
COMMUNITY_LANGUAGES=$(grep --max-count=$MAX_COMMINITY_LANG "^#define COMMUNITY_LANG_GROUP3_" $SRCDIR/Firmware/config.h| cut -d '_' -f4 |cut -d ' ' -f1 |tr '[:upper:]' '[:lower:]'| tr '\n' ' ')
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "$COMMUNITY_LANGUAGES" ]; then
|
if [ -z "$COMMUNITY_LANGUAGES" ]; then
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
#
|
#
|
||||||
# Version 1.0.2 Build 25
|
# Version 1.0.2 Build 27
|
||||||
#
|
#
|
||||||
# lang-build.sh - multi-language support script
|
# lang-build.sh - multi-language support script
|
||||||
# generate lang_xx.bin (language binary file)
|
# generate lang_xx.bin (language binary file)
|
||||||
@ -56,6 +56,7 @@
|
|||||||
# to get Build Nr
|
# to get Build Nr
|
||||||
# 25 Jan. 2022, 3d-gussner, Fix check
|
# 25 Jan. 2022, 3d-gussner, Fix check
|
||||||
# Update documentation
|
# Update documentation
|
||||||
|
# 10 Feb. 2022, 3d-gussner, Use SRCDIR for compatibility with build server
|
||||||
#############################################################################
|
#############################################################################
|
||||||
#
|
#
|
||||||
# Config:
|
# Config:
|
||||||
@ -170,7 +171,7 @@ generate_binary()
|
|||||||
#Calculate the number of strings and save to temporary file
|
#Calculate the number of strings and save to temporary file
|
||||||
echo $count >lang_en.cnt
|
echo $count >lang_en.cnt
|
||||||
#read the allowed maxsize from "../Firmware/config.h" and save to temporary file
|
#read the allowed maxsize from "../Firmware/config.h" and save to temporary file
|
||||||
maxsize=$(($(grep "#define LANG_SIZE_RESERVED" ../Firmware/config.h|sed -e's/ */ /g' |cut -d ' ' -f3)))
|
maxsize=$(($(grep "#define LANG_SIZE_RESERVED" $SRCDIR/Firmware/config.h|sed -e's/ */ /g' |cut -d ' ' -f3)))
|
||||||
|
|
||||||
echo "maxsize="$maxsize >&2
|
echo "maxsize="$maxsize >&2
|
||||||
echo $maxsize >lang_en.max
|
echo $maxsize >lang_en.max
|
||||||
|
Loading…
Reference in New Issue
Block a user