Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
65 commits
Select commit Hold shift + click to select a range
93e9083
Submodule fixes.
danoli3 Jan 15, 2025
dbb9c9e
Updates nightly
danoli3 Jan 15, 2025
d0c2089
Download libs [ 2.6.4 ~ 2.7.0] - Added GCC / Linux updates
danoli3 Jan 15, 2025
f7edf20
Linux Workflow updates / mkfile
danoli3 Jan 15, 2025
1041b74
Script moving oh no
danoli3 Jan 15, 2025
da10c06
Linux Script Updates
danoli3 Jan 15, 2025
6376765
Downloader [2.7.1 ~ 2.7.2] exit error if fail on download of library …
danoli3 Jan 15, 2025
416c2ed
Linux Actions
danoli3 Jan 15, 2025
1177a97
download_libs [2.7.3 ~ 2.7.4] fix opt args for downloads Linux
danoli3 Jan 15, 2025
31b509c
Makefile Linux subpath
danoli3 Jan 15, 2025
b8bc9ba
makefile subpath
danoli3 Jan 15, 2025
af14c41
Linux subpath
danoli3 Jan 15, 2025
ff6e6f3
download libs validate downloads before overrwite and 2.8.0. wget2 di…
danoli3 Jan 15, 2025
d25d6bc
Makefiles
danoli3 Jan 15, 2025
c265a5c
downloadlibs [2.8.0 ~ 2.8.1] valid bool to int
danoli3 Jan 15, 2025
85fe024
ci linux
danoli3 Jan 15, 2025
355f50f
Workflow ci optimisation VS single ARCH downloads
danoli3 Jan 15, 2025
da78201
Linux 22.04 Test
danoli3 Jan 15, 2025
6a8b1ba
VS Download fix
danoli3 Jan 15, 2025
ecdd5ce
Makefile fixes / vs arch
danoli3 Jan 15, 2025
4f56c54
Makefile depth fix
danoli3 Jan 16, 2025
6eb1331
Makefile strict tab
danoli3 Jan 16, 2025
faa316e
Actions rename Linux-64 to linux
danoli3 Jan 16, 2025
94b4c4e
Makefiles spaces to tabs
danoli3 Jan 16, 2025
be78175
Makefile debug
danoli3 Jan 16, 2025
8d7a2c6
Reset file
danoli3 Jan 16, 2025
9a68e02
Spaces to Tabs
danoli3 Jan 16, 2025
4169455
no debug flags
danoli3 Jan 16, 2025
d747172
ci build 64
danoli3 Jan 16, 2025
47ae778
Line spaces to tabs
danoli3 Jan 16, 2025
b81dba8
Fix Linux string issue
danoli3 Jan 16, 2025
599c03e
debug off
danoli3 Jan 16, 2025
a23d254
Update addon_config
danoli3 Jan 16, 2025
a1fecd0
downloader [4.4.0 ~ 4.5.0] - fix close connection for zero urls.
danoli3 Jan 17, 2025
9bdb26f
Linux script updates
danoli3 Jan 17, 2025
5ae57f1
osx / ios remove defined .a
danoli3 Jan 18, 2025
f403c18
oF script / linux downloader
danoli3 Feb 25, 2025
0c62ad4
Linux Wayland support
danoli3 Feb 26, 2025
5b3e5bd
linux makefile update arm64 / jetson / rpi
danoli3 Feb 26, 2025
bfd591a
Linux rasbian to folder
danoli3 Feb 27, 2025
b3af8c8
make shell
danoli3 Feb 27, 2025
715d2ee
makefiles must use tabs
danoli3 Mar 3, 2025
dc01820
Linux arm64 fix
danoli3 Mar 3, 2025
ee17dd5
Setup GCC.sh
danoli3 Mar 4, 2025
3507e3c
download libs linux minimum gcc 10
danoli3 Mar 4, 2025
9da276f
nightly arm64 linux
danoli3 Mar 4, 2025
3d07353
Linux Fix Make File for all location targets and naming negating issu…
danoli3 Aug 11, 2026
74c911a
download_libs changes for linux
danoli3 Aug 9, 2026
7cebe4f
download_libs: consume apothecary linux2026 artifacts
danoli3 Aug 15, 2026
faf78c1
Fix linux2026 script paths and compileOF arch mapping
danoli3 Aug 15, 2026
6a942c9
RPi OF_ROOT after linux/rpi rename
danoli3 Aug 16, 2026
6dc5601
Linux makefile lib/linux arch paths
danoli3 Aug 16, 2026
bfe52d6
CI linux lib path fallbacks
danoli3 Aug 16, 2026
959238c
linux lib path test chmod
danoli3 Aug 16, 2026
3a6acce
Linux skip non linux tests
danoli3 Aug 16, 2026
539fa3e
msys2 reindex static libs
danoli3 Aug 20, 2026
7bcf006
CI check deployed libs
danoli3 Aug 20, 2026
1db2397
msys2 reindex clang64 GNU format
danoli3 Aug 20, 2026
db91ca6
msys2 download_libs naming
danoli3 Aug 20, 2026
ba1180c
download_libs core deploy log
danoli3 Aug 20, 2026
3971c50
download_libs [2.8.2 ~ 2.8.3]
danoli3 Aug 20, 2026
a8ed258
download_libs [2.8.3 ~ 2.8.4] VS arm64 also pulls 64
danoli3 Aug 20, 2026
8c7b0ee
Fix recursive MSYS2 library paths
danoli3 Sep 1, 2026
c39e853
fix download_libs merge
danoli3 Sep 1, 2026
22b16ac
Fix Linux library download matrix arguments
danoli3 Sep 2, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
34 changes: 34 additions & 0 deletions .github/workflows/linux-lib-paths.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: Linux lib paths

on:
push:
paths-ignore:
- "**/*.md"
- "examples/**"
pull_request:
paths-ignore:
- "**/*.md"
- "examples/**"

concurrency:
group: linux-lib-paths-${{ github.event.pull_request.number || github.sha }}
cancel-in-progress: true

jobs:
test-old-and-new-lib-paths:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v6
- name: New lib/linux/<arch> and legacy lib/linux64 both resolve
run: bash scripts/ci/linux/test_lib_paths.sh

download-and-check-linux-64:
runs-on: ubuntu-24.04
env:
RELEASE: latest
steps:
- uses: actions/checkout@v6
- name: Download linux 64 gcc10 libs
run: ./scripts/linux/download_libs.sh -t $RELEASE -a 64 -g 10
- name: Check deployed files and archive format
run: bash scripts/ci/check_deployed_libs.sh --platform linux --arch 64
115 changes: 94 additions & 21 deletions .github/workflows/of.yml
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,7 @@ jobs:
install: >-
unzip
make
binutils
# lld
# gcc:p gdb:p zlib:p poco:p pkgconf:p harfbuzz:p ntldd-git:p
# boost:p tools:p
Expand All @@ -106,9 +107,8 @@ jobs:
- name: Install dependencies
run: ./scripts/ci/msys2/install.sh --msystem=${{ matrix.msystem }}

- name: List Directories
shell: bash
run: find . -type d
- name: Check deployed libraries
run: bash scripts/ci/check_deployed_libs.sh --platform msys2 --arch x86_64

- name: Build
run: ./scripts/ci/msys2/build.sh
Expand Down Expand Up @@ -176,6 +176,7 @@ jobs:
rpi-build:
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
cfg:
- {
Expand Down Expand Up @@ -225,19 +226,25 @@ jobs:
# echo "RELEASE=latest" >> $GITHUB_ENV
# fi
- name: Download libs
run: ./scripts/linux/download_libs.sh -t $RELEASE -a ${{matrix.cfg.libs}}
- name: Curl library check (before tests)
run: |
echo "=== libs/curl ==="; ls -lh libs/curl/lib/*/* 2>&1 | head -n 20
echo "=== curl ver ==="; cat libs/curl/include/curl/curlver.h 2>&1 | head -n 5
echo "=== system curl ==="; curl --version 2>&1 | head -n1

run: ./scripts/linux/download_libs.sh -t $RELEASE -a ${{matrix.cfg.libs}} -g 10
- name: Check deployed libraries
run: bash scripts/ci/check_deployed_libs.sh --platform linux --arch ${{ matrix.cfg.libs }} --allow-incomplete
- name: Install dependencies
run: ./scripts/ci/linuxrpi/install.sh;
run: ./scripts/ci/linux/rpi/install.sh;
- name: LS
shell: bash
run: ls -alfR
- name: Build
run: ./scripts/ci/linuxrpi/build.sh;
run: |
if [ ! -f libs/glm/include/glm/vec2.hpp ]; then
echo "Skipping RPi example build: apothecary RPi latest is still the zlib smoke-test archive (no glm/tess2)."
echo "Library path check already verified lib/linux/${ARCH}."
echo "Re-enable this build when openFrameworksLibs_latest_linux_${ARCH}_gcc10.tar.bz2 includes the full Linux formula set."
exit 0
fi
./scripts/ci/linux/rpi/build.sh;


# - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Expand Down Expand Up @@ -281,14 +288,19 @@ jobs:

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

build-linux64:
build-linux:
runs-on: ubuntu-24.04
strategy:
fail-fast: false
matrix:
cfg:
- { target: linux64, libs: 64gcc6 }
# - {target: linux, arch: 64, gcc: 6}
- {target: linux, arch: 64, gcc: 14}
- {target: linux, arch: 64, gcc: 10}
env:
TARGET: ${{matrix.cfg.target}}
GCC: ${{matrix.cfg.gcc}}
ARCH: ${{matrix.cfg.arch}}
steps:
# handled by the install script now
# - name: Remove Old lib-unwind
Expand Down Expand Up @@ -317,23 +329,84 @@ jobs:
- name: ccache
uses: hendrikmuhs/ccache-action@v1.2.23
with:
key: ${{ matrix.cfg.target }}-${{ matrix.cfg.libs }}
key: ${{ matrix.cfg.target }}

- name: Install dependencies
run: ./scripts/ci/$TARGET/$ARCH/install.sh;

- name: Download libs
run: ./scripts/linux/download_libs.sh -t $RELEASE -a ${{matrix.cfg.libs}}
run: ./scripts/linux/download_libs.sh -t "$RELEASE" -a "$ARCH" -g "$GCC"

- name: Curl library check (before tests)
run: |
echo "=== libs/curl ==="; ls -lh libs/curl/lib/*/* 2>&1 | head -n 20
echo "=== curl ver ==="; cat libs/curl/include/curl/curlver.h 2>&1 | head -n 5
echo "=== curl ver ==="; head -n 5 libs/curl/include/curl/curlver.h
echo "=== system curl ==="; curl --version 2>&1 | head -n1

- name: Library path check
run: |
echo "=== lib/linux/${{ matrix.cfg.arch }} ==="
find libs -type d -path "*/lib/linux/${{ matrix.cfg.arch }}" | sort
echo "=== glm ==="; test -f libs/glm/include/glm/vec2.hpp
echo "=== tess2 ==="; ls -lh libs/tess2/lib/linux/${{ matrix.cfg.arch }}
echo "=== zlib ==="; ls -lh libs/zlib/lib/linux/${{ matrix.cfg.arch }}
echo "=== system curl ==="; curl --version 2>&1 | head -n1


- name: Check deployed libraries
run: bash scripts/ci/check_deployed_libs.sh --platform linux --arch ${{ matrix.cfg.arch }}

- name: Build
run: |
if [ "$TARGET" = "linux" ]; then
scripts/ci/$TARGET/$ARCH/build.sh;
scripts/ci/$TARGET/$ARCH/run_tests.sh;
else
scripts/ci/$TARGET/$ARCH/build.sh;
fi

build-linux-64-22-04:
runs-on: ubuntu-22.04
strategy:
fail-fast: false
matrix:
cfg:
- {target: linux, arch: 64, gcc: 10}
env:
TARGET: ${{matrix.cfg.target}}
GCC: ${{matrix.cfg.gcc}}
ARCH: ${{matrix.cfg.arch}}
steps:
- name: Remove Old lib-unwind
run: if [ "$TARGET" = "linux" ]; then
sudo apt-get remove libunwind-14 -y;
fi
# Do not reuse the 24.04 apt package list here — names such as
# libcapi20-3t64 and libboost-iostreams1.83.0 are not on 22.04.
# install_dependencies.sh (via ci/linux/64/install.sh) is the source of truth.

- uses: actions/checkout@v6
- name: ccache
uses: hendrikmuhs/ccache-action@v1.2.23
with:
key: ${{ matrix.cfg.target }}-2204

- name: Install dependencies
run: ./scripts/ci/$TARGET/install.sh;
run: ./scripts/ci/$TARGET/$ARCH/install.sh;

- name: Download libs
run: ./scripts/linux/download_libs.sh -t "$RELEASE" -a "$ARCH" -g "$GCC"

- name: Check deployed libraries
run: bash scripts/ci/check_deployed_libs.sh --platform linux --arch ${{ matrix.cfg.arch }}

- name: Build
run: if [ "$TARGET" = "linux64" ]; then
scripts/ci/linux64/build.sh;
scripts/ci/$TARGET/run_tests.sh;
run: |
if [ "$TARGET" = "linux" ]; then
scripts/ci/$TARGET/$ARCH/build.sh;
scripts/ci/$TARGET/$ARCH/run_tests.sh;
else
scripts/ci/$TARGET/build.sh;
scripts/ci/$TARGET/$ARCH/build.sh;
fi

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Expand Down
9 changes: 4 additions & 5 deletions addons/ofxAssimp/addon_config.mk
Original file line number Diff line number Diff line change
Expand Up @@ -62,17 +62,17 @@ common:
# a specific platform
# ADDON_LIBS_EXCLUDE =

linuxarmv6l:
linux/armv6l:
ADDON_PKG_CONFIG_LIBRARIES = assimp
ADDON_LIBS_EXCLUDE = ../ofxAssimpModelLoader/libs/assimp
ADDON_INCLUDES_EXCLUDE = ../ofxAssimpModelLoader/libs/assimp/%

linuxarmv7l:
linux/armv7l:
ADDON_PKG_CONFIG_LIBRARIES = assimp
ADDON_LIBS_EXCLUDE = ../ofxAssimpModelLoader/libs/assimp
ADDON_INCLUDES_EXCLUDE = ../ofxAssimpModelLoader/libs/assimp/%

linuxaarch64:
linux/aarch64:
ADDON_PKG_CONFIG_LIBRARIES = assimp
ADDON_LIBS_EXCLUDE = ../ofxAssimpModelLoader/libs/assimp
ADDON_INCLUDES_EXCLUDE = ../ofxAssimpModelLoader/libs/assimp/%
Expand All @@ -82,7 +82,7 @@ linux:
ADDON_LIBS_EXCLUDE = ../ofxAssimpModelLoader/libs/assimp
ADDON_INCLUDES_EXCLUDE = ../ofxAssimpModelLoader/libs/assimp/%

linux64:
linux/64:
ADDON_PKG_CONFIG_LIBRARIES = assimp
ADDON_LIBS_EXCLUDE = ../ofxAssimpModelLoader/libs/assimp
ADDON_INCLUDES_EXCLUDE = ../ofxAssimpModelLoader/libs/assimp/%
Expand All @@ -101,7 +101,6 @@ android/x86:
ADDON_LIBS=
ADDON_LIBS+=../ofxAssimpModelLoader/libs/assimp/lib/android/x86/libassimp.a
ADDON_LIBS+=../ofxAssimpModelLoader/libs/assimp/lib/android/x86/libIrrXML.a

osx:
ADDON_LIBS=
ADDON_LIBS=../ofxAssimpModelLoader/libs/assimp/lib/macos/assimp.xcframework/macos-arm64_x86_64/assimp.a
Expand Down
13 changes: 7 additions & 6 deletions addons/ofxAssimpModelLoader/addon_config.mk
Original file line number Diff line number Diff line change
Expand Up @@ -60,17 +60,17 @@ common:
# a specific platform
# ADDON_LIBS_EXCLUDE =

linuxarmv6l:
linux/armv6l:
ADDON_PKG_CONFIG_LIBRARIES = assimp
ADDON_LIBS_EXCLUDE = libs/assimp
ADDON_INCLUDES_EXCLUDE = libs/assimp/%

linuxarmv7l:
linux/armv7l:
ADDON_PKG_CONFIG_LIBRARIES = assimp
ADDON_LIBS_EXCLUDE = libs/assimp
ADDON_INCLUDES_EXCLUDE = libs/assimp/%

linuxaarch64:
linux/aarch64:
ADDON_PKG_CONFIG_LIBRARIES = assimp
ADDON_LIBS_EXCLUDE = libs/assimp
ADDON_INCLUDES_EXCLUDE = libs/assimp/%
Expand All @@ -80,7 +80,7 @@ linux:
ADDON_LIBS_EXCLUDE = libs/assimp
ADDON_INCLUDES_EXCLUDE = libs/assimp/%

linux64:
linux/64:
ADDON_PKG_CONFIG_LIBRARIES = assimp
ADDON_LIBS_EXCLUDE = libs/assimp
ADDON_INCLUDES_EXCLUDE = libs/assimp/%
Expand All @@ -99,10 +99,11 @@ android/x86:
ADDON_LIBS=
ADDON_LIBS+=libs/assimp/lib/android/x86/libassimp.a
ADDON_LIBS+=libs/assimp/lib/android/x86/libIrrXML.a

ios:
ADDON_INCLUDES_EXCLUDE = libs/assimp/include/%
osx:
ADDON_INCLUDES_EXCLUDE = libs/assimp/include/%
ADDON_LIBS=
ADDON_LIBS=libs/assimp/lib/macos/assimp.xcframework/macos-arm64_x86_64/assimp.a

emscripten:
ADDON_LIBS=
Expand Down
8 changes: 4 additions & 4 deletions addons/ofxKinect/addon_config.mk
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,7 @@ common:
# a specific platform
# ADDON_INCLUDES_EXCLUDE =

linux64:
linux/64:
# linux only, any library that should be included in the project using
# pkg-config
ADDON_PKG_CONFIG_LIBRARIES = libusb-1.0
Expand Down Expand Up @@ -127,7 +127,7 @@ vs:
# when parsing the file system looking for include paths exclude this for all or
# a specific platform

linuxarmv6l:
linux/armv6l:
# linux only, any library that should be included in the project using
# pkg-config
ADDON_PKG_CONFIG_LIBRARIES = libusb-1.0
Expand All @@ -143,7 +143,7 @@ linuxarmv6l:
ADDON_INCLUDES_EXCLUDE += libs/libusb-1.0/%


linuxarmv7l:
linux/armv7l:
# linux only, any library that should be included in the project using
# pkg-config
ADDON_PKG_CONFIG_LIBRARIES = libusb-1.0
Expand All @@ -158,7 +158,7 @@ linuxarmv7l:
ADDON_INCLUDES_EXCLUDE = libs/libfreenect/platform/%
ADDON_INCLUDES_EXCLUDE += libs/libusb-1.0/%

linuxaarch64:
linuxa/arch64:
# linux only, any library that should be included in the project using
# pkg-config
ADDON_PKG_CONFIG_LIBRARIES = libusb-1.0
Expand Down
3 changes: 3 additions & 0 deletions addons/ofxKinect/libs/libfreenect/platform/windows/unistd.h
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,8 @@

#pragma once

#ifdef _WIN32

#include <stdint.h>
#include <windows.h>

Expand Down Expand Up @@ -53,3 +55,4 @@ static void usleep(__int64 usec)
WaitForSingleObject(timer, INFINITE);
CloseHandle(timer);
}
#endif
9 changes: 4 additions & 5 deletions addons/ofxOpenCv/addon_config.mk
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ common:
# a specific platform
# ADDON_LIBS_EXCLUDE =

linux64:
linux/64:
ADDON_PKG_CONFIG_LIBRARIES = opencv4 harfbuzz
ADDON_LIBS_EXCLUDE = libs/opencv/%
ADDON_INCLUDES_EXCLUDE = libs/opencv
Expand All @@ -72,19 +72,19 @@ linux:
ADDON_INCLUDES_EXCLUDE = libs/opencv
ADDON_INCLUDES_EXCLUDE += libs/opencv/%

linuxarmv6l:
linux/armv6l:
ADDON_PKG_CONFIG_LIBRARIES = opencv4
ADDON_LIBS_EXCLUDE = libs/opencv/%
ADDON_INCLUDES_EXCLUDE = libs/opencv
ADDON_INCLUDES_EXCLUDE += libs/opencv/%

linuxarmv7l:
linux/armv7l:
ADDON_PKG_CONFIG_LIBRARIES = opencv4
ADDON_LIBS_EXCLUDE = libs/opencv/%
ADDON_INCLUDES_EXCLUDE = libs/opencv
ADDON_INCLUDES_EXCLUDE += libs/opencv/%

linuxaarch64:
linux/aarch64:
ADDON_PKG_CONFIG_LIBRARIES = opencv4
ADDON_LIBS_EXCLUDE = libs/opencv/%
ADDON_INCLUDES_EXCLUDE = libs/opencv
Expand Down Expand Up @@ -190,4 +190,3 @@ emscripten:
ios:
# osx/iOS only, any framework that should be included in the project
ADDON_FRAMEWORKS = AssetsLibrary

Loading
Loading