diff options
author | Tiago Conceição <Tiago_caza@hotmail.com> | 2022-10-30 02:52:49 +0300 |
---|---|---|
committer | Tiago Conceição <Tiago_caza@hotmail.com> | 2022-10-30 02:52:49 +0300 |
commit | 6dc26f74342411760a5905860ef863ece03a3239 (patch) | |
tree | 5e706336595126cccc175c7af4c182df9ce4f6a0 /build | |
parent | 38201dfb83e46ee269cd940c5684dd4e97bc61fe (diff) |
v3.8.0v3.8.0
- **File formats:**
- (Add) Property: DisplayTotalOnTime
- (Add) Property: DisplayTotalOffTime
- (Add) SL1File Property: high_viscosity_tilt_time
- **Tools**
- **I printed this file**
- (Add) Display on time for the print information
- (Improvement) Labels on numeric box
- (Improvement) Show print time label formatted as hh:mm:ss
- **PCB Exposure:**
- (Improvement) Increase "Exposure time" maximum from 200s to 1000s (#592)
- (Fix) Set `BottomLightHeight` to 0
- (Fix) Set `TransitionLayerCount` to 0
- **Issues:**
- (Improvement) Overhang detection by using a dynamic cross kernel
- (Improvement) Bring back the discard logic of "false-positive" islands based on overhang detection but improve the threshold of the detection to be safer (#591, #591)
- **PrusaSlicer:**
- (Change) Elegoo Mars 2 to use file version 4
- (Change) Elegoo Mars 2 Pro to use file version 4
- (Add) Status bar: On and Off time (hh:mm:ss) as tooltip in the Print time label
- (Improvement) When any of libcvextern dependencies are missing, it try to show the missing libraries in the error message (Linux only)
- (Improvement) Auto-upgrade procedure for non-Windows systems
- (Improvement) macOS arm64 (M1/M2) can now run natively if installed via the auto installer script
- (Fix) Error on Mat cache manager when file have only one layer
- (Fix) Suggestion "Transition layer count" shows as never applied when using with file formats that use in-firmware transition layers
- (Upgrade) openCV from 4.5.4 to 4.6.0
- Custom library is now built to strip unused dependencies and reduce library size
- (Remove) arch and rhel packages in favor of a generic linux
Diffstat (limited to 'build')
-rw-r--r-- | build/createRelease.ps1 | 37 | ||||
-rw-r--r-- | build/createRelease.sh | 11 | ||||
-rw-r--r-- | build/libcvextern.sh | 38 | ||||
-rw-r--r-- | build/platforms/legacy/arch-x64/libcvextern.so (renamed from build/platforms/rhel-x64/libcvextern.zip) | bin | 46389798 -> 50936872 bytes | |||
-rw-r--r-- | build/platforms/legacy/arch-x64/libcvextern.zip (renamed from build/platforms/arch-x64/libcvextern.zip) | bin | 46389798 -> 46389798 bytes | |||
-rw-r--r-- | build/platforms/legacy/rhel-x64/libcvextern.zip | bin | 0 -> 20605992 bytes | |||
-rw-r--r-- | build/platforms/linux-arm64/libcvextern.zip | bin | 24340822 -> 26459677 bytes | |||
-rw-r--r-- | build/platforms/linux-x64/libcvextern.zip | bin | 46389798 -> 23182686 bytes | |||
-rw-r--r-- | build/platforms/osx-arm64/libcvextern.zip | bin | 17285772 -> 4239567 bytes | |||
-rw-r--r-- | build/platforms/osx-x64/libcvextern.zip | bin | 19399577 -> 18969728 bytes | |||
-rw-r--r-- | build/platforms/osx/Info.plist | 2 | ||||
-rw-r--r-- | build/platforms/win-x64/cvextern.dll | bin | 0 -> 37360128 bytes |
12 files changed, 50 insertions, 38 deletions
diff --git a/build/createRelease.ps1 b/build/createRelease.ps1 index a9e95b9..dee38d5 100644 --- a/build/createRelease.ps1 +++ b/build/createRelease.ps1 @@ -261,23 +261,23 @@ $runtimes = "win-x64" = @{ "extraCmd" = "" "exclude" = @("UVtools.sh") - "include" = @() + "include" = @("cvextern.dll") } "linux-x64" = @{ "extraCmd" = "" "exclude" = @() "include" = @("libcvextern.so") } - "arch-x64" = @{ - "extraCmd" = "" - "exclude" = @() - "include" = @("libcvextern.so") - } - "rhel-x64" = @{ - "extraCmd" = "" - "exclude" = @() - "include" = @("libcvextern.so") - } + #"arch-x64" = @{ + # "extraCmd" = "" + # "exclude" = @() + # "include" = @("libcvextern.so") + #} + #"rhel-x64" = @{ + # "extraCmd" = "" + # "exclude" = @() + # "include" = @("libcvextern.so") + #} #"linux-arm64" = @{ # "extraCmd" = "" # "exclude" = @() @@ -360,9 +360,10 @@ foreach ($obj in $runtimes.GetEnumerator()) { if($runtime.StartsWith("win-")) { - $targetZip = "$publishPath/${software}_${runtime}_v$version.zip" # Target zip filename + $targetZipName = "${software}_${runtime}_v$version.zip" # Target zip filename + $targetZipPath = "$publishPath/$targetZipName" # Target zip filename Remove-Item "$publishCurrentPath" -Recurse -ErrorAction Ignore - Remove-Item "$targetZip" -ErrorAction Ignore + Remove-Item "$targetZipPath" -ErrorAction Ignore # Deploy Write-Output "################################ @@ -383,19 +384,19 @@ foreach ($obj in $runtimes.GetEnumerator()) { foreach ($excludeObj in $obj.Value.exclude) { Write-Output "Excluding: $excludeObj" - Remove-Item "$publishPath\$runtime\$excludeObj" -Recurse -ErrorAction Ignore + Remove-Item "$publishCurrentPath\$excludeObj" -Recurse -ErrorAction Ignore } foreach ($includeObj in $obj.Value.include) { Write-Output "Including: $includeObj" - Copy-Item "$platformsPath\$runtime\$includeObj" -Destination "$publishCurrentPath" -Recurse -ErrorAction Ignore - Copy-Item "$platformsPath\$runtime\$includeObj" -Destination "$publishCurrentPath" -Recurse -ErrorAction Ignore + Copy-Item "$platformsPath\$runtime\$includeObj" -Destination "$publishCurrentPath" -Recurse -ErrorAction Ignore + Copy-Item "$platformsPath\$runtime\$includeObj" -Destination "$publishCurrentPath" -Recurse -ErrorAction Ignore } if($null -ne $zipPackages -and $zipPackages) { - Write-Output "Compressing $runtime to: $targetZip" - wsl --cd "$publishCurrentPath" pwd `&`& zip -rq "../../$targetZip" . + Write-Output "Compressing $runtime to: $targetZipName" + wsl --cd "$publishCurrentPath" pwd `&`& zip -rq "../$targetZipName" . } } else diff --git a/build/createRelease.sh b/build/createRelease.sh index 3bba087..e2dbb42 100644 --- a/build/createRelease.sh +++ b/build/createRelease.sh @@ -8,15 +8,14 @@ # usage 2: ./createRelease.sh -b osx-x64 # usage 3: ./createRelease.sh -b -z osx-x64 # -cd "$(dirname "$0")" -cd .. +cd "$(dirname "$0")/.." [ ! -d "UVtools.Core" ] && echo "UVtools.Core not found!" && exit -1 testcmd() { command -v "$1" &> /dev/null; } #runtime=$1 for runtime in $@; do :; done # Get last argument -rootDir="$(pwd)" +rootDir="$PWD" buildDir="$rootDir/build" coreDir="$rootDir/UVtools.Core" #version="$(grep -oP '<Version>\K(\d\.\d\.\d)(?=<\/Version>)' "$coreDir/UVtools.Core.csproj")" # Not supported on recent macos! @@ -75,19 +74,19 @@ fi if [ -z "$runtime" ]; then echo "Error: No runtime selected, please pick one of the following:" - ls "$platformsDir" + ls "$platformsDir" | grep - exit -1 fi if [[ "$runtime" != *-* && $runtime != *-arm && $runtime != *-x64 && $runtime != *-x86 ]]; then echo "Error: The runtime '$runtime' is not valid, please pick one of the following:" - ls "$platformsDir" + ls "$platformsDir" | grep - exit -1 fi if [ "$runtime" != "win-x64" -a ! -d "$platformsDir/$runtime" ]; then echo "Error: The runtime '$runtime' is not valid, please pick one of the following:" - ls "$platformsDir" + ls "$platformsDir" | grep - exit -1 fi diff --git a/build/libcvextern.sh b/build/libcvextern.sh index 2233b0f..1f95e62 100644 --- a/build/libcvextern.sh +++ b/build/libcvextern.sh @@ -8,7 +8,8 @@ # usage 3: ./libcvextern.sh # usage 3: ./libcvextern.sh 4.6.0 # -cd "$(dirname "$0")" +#cd "$(dirname "$0")" +echo $PWD directory="emgucv" arch="$(uname -m)" osVariant="" @@ -26,6 +27,7 @@ for lastArg in $@; do :; done # Get last argument if [ $lastArg == "clean" ]; then echo "Cleaning $directory directory" rm -rf "$directory" 2>/dev/null + rm -rf "$directory-"* 2>/dev/null exit fi @@ -43,6 +45,12 @@ done echo "Script to build libcvextern.so|dylib on $(uname -a) $arch" +if testcmd ldconfig; then + if [ -z "$(ldconfig -p | grep libpng)" -o -z "$(ldconfig -p | grep libgdiplus)" -o -z "$(ldconfig -p | grep libavcodec)" -o -z "$(command -v git)" -o -z "$(command -v cmake)" ]; then + installDependencies=true + fi +fi + echo "- Detecting OS" [ "$installDependencies" == true ] && echo "- Installing all the dependencies" if [ "${OSTYPE:0:6}" == "darwin" ]; then @@ -61,7 +69,7 @@ if [ "${OSTYPE:0:6}" == "darwin" ]; then [ -z "$(command -v dotnet)" ] && brew install --cask dotnet-sdk elif testcmd apt-get; then osVariant="debian" - if [ -z "$(ldconfig -p | grep libpng)" -o -z "$(ldconfig -p | grep libgdiplus)" -o -z "$(ldconfig -p | grep libavcodec)" -o -z "$(command -v git)" -o -z "$(command -v cmake)" -o "$installDependencies" == true ]; then + if [ "$installDependencies" == true ]; then sudo apt-get update sudo apt-get -y install git build-essential libgtk-3-dev libgstreamer1.0-dev libavcodec-dev libswscale-dev libavformat-dev libdc1394-dev libv4l-dev cmake-curses-gui ocl-icd-dev freeglut3-dev libgeotiff-dev libusb-1.0-0-dev sudo apt-get install -y apt-transport-https @@ -70,16 +78,18 @@ elif testcmd apt-get; then fi elif testcmd pacman; then osVariant="arch" - if [ -z "$(ldconfig -p | grep libpng)" -o -z "$(ldconfig -p | grep libgdiplus)" -o -z "$(ldconfig -p | grep libavcodec)" -o -z "$(command -v git)" -o -z "$(command -v cmake)" -o "$installDependencies" == true ]; then + if [ "$installDependencies" == true ]; then sudo pacman -Syu sudo pacman -S git base-devel cmake msbuild gtk3 gstreamer ffmpeg libdc1394 v4l-utils ocl-icd freeglut libgeotiff libusb dotnet-sdk fi -elif testcmd yum; then +elif testcmd dnf; then osVariant="rhel" - if [ -z "$(ldconfig -p | grep libpng)" -o -z "$(ldconfig -p | grep libgdiplus)" -o -z "$(ldconfig -p | grep libavcodec)" -o -z "$(command -v git)" -o -z "$(command -v cmake)" -o "$installDependencies" == true ]; then - sudo yum update -y - sudo yum groupinstall -y "Development Tools" "Development Libraries" - sudo yum install -y git cmake gcc-c++ gtk3-devel gstreamer1-devel ffmpeg ffmpeg-devel libdc1394 libv4l-devel cmake-gui ocl-icd-devel freeglut libgeotiff libusb dotnet-sdk-6.0 + if [ "$installDependencies" == true ]; then + sudo dnf update -y + sudo dnf install -y https://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-$(rpm -E %fedora).noarch.rpm + sudo dnf install -y https://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-$(rpm -E %fedora).noarch.rpm + sudo dnf groupinstall -y "Development Tools" "Development Libraries" + sudo dnf install -y git cmake gcc-c++ gtk3-devel gstreamer1-devel ffmpeg ffmpeg-devel libdc1394 libv4l-devel cmake-gui ocl-icd-devel freeglut libgeotiff libusb dotnet-sdk-6.0 fi fi @@ -94,6 +104,11 @@ if ! testcmd cmake; then exit -1 fi +if ! testcmd dotnet; then + echo "Error: dotnet not installed. Please re-run this script with -i flag." + exit -1 +fi + if [ -z "$osVariant" ]; then echo "Error: Unable to detect your Operative System." exit -1 @@ -111,15 +126,12 @@ if [ ! -d "$directory" ]; then fi fi -cd "$directory" echo "- Bulding" if [ osVariant == "macOS" ]; then - cd "platforms/macos" - ./configure $arch $build_package + "$directory/platforms/macos/configure" $arch $build_package else - cd "platforms/ubuntu/22.04" - ./cmake_configure $build_package + "$directory/platforms/ubuntu/22.04/cmake_configure" $build_package fi echo "Completed - Check for errors but also for libcvextern presence on $directory/libs" diff --git a/build/platforms/rhel-x64/libcvextern.zip b/build/platforms/legacy/arch-x64/libcvextern.so Binary files differindex fe79060..bf140f8 100644 --- a/build/platforms/rhel-x64/libcvextern.zip +++ b/build/platforms/legacy/arch-x64/libcvextern.so diff --git a/build/platforms/arch-x64/libcvextern.zip b/build/platforms/legacy/arch-x64/libcvextern.zip Binary files differindex fe79060..fe79060 100644 --- a/build/platforms/arch-x64/libcvextern.zip +++ b/build/platforms/legacy/arch-x64/libcvextern.zip diff --git a/build/platforms/legacy/rhel-x64/libcvextern.zip b/build/platforms/legacy/rhel-x64/libcvextern.zip Binary files differnew file mode 100644 index 0000000..5d9e8f7 --- /dev/null +++ b/build/platforms/legacy/rhel-x64/libcvextern.zip diff --git a/build/platforms/linux-arm64/libcvextern.zip b/build/platforms/linux-arm64/libcvextern.zip Binary files differindex 8ac48c1..ebd44ce 100644 --- a/build/platforms/linux-arm64/libcvextern.zip +++ b/build/platforms/linux-arm64/libcvextern.zip diff --git a/build/platforms/linux-x64/libcvextern.zip b/build/platforms/linux-x64/libcvextern.zip Binary files differindex fe79060..3e1915f 100644 --- a/build/platforms/linux-x64/libcvextern.zip +++ b/build/platforms/linux-x64/libcvextern.zip diff --git a/build/platforms/osx-arm64/libcvextern.zip b/build/platforms/osx-arm64/libcvextern.zip Binary files differindex 6f3bbdc..9744155 100644 --- a/build/platforms/osx-arm64/libcvextern.zip +++ b/build/platforms/osx-arm64/libcvextern.zip diff --git a/build/platforms/osx-x64/libcvextern.zip b/build/platforms/osx-x64/libcvextern.zip Binary files differindex ffb34c4..bbe4350 100644 --- a/build/platforms/osx-x64/libcvextern.zip +++ b/build/platforms/osx-x64/libcvextern.zip diff --git a/build/platforms/osx/Info.plist b/build/platforms/osx/Info.plist index f5e8719..f35958d 100644 --- a/build/platforms/osx/Info.plist +++ b/build/platforms/osx/Info.plist @@ -33,4 +33,4 @@ <key>NSHumanReadableCopyright</key> <string>Copyright © 2020 PTRTECH. All rights reserved.</string> </dict> -</plist> +</plist>
\ No newline at end of file diff --git a/build/platforms/win-x64/cvextern.dll b/build/platforms/win-x64/cvextern.dll Binary files differnew file mode 100644 index 0000000..20540b7 --- /dev/null +++ b/build/platforms/win-x64/cvextern.dll |