diff --git a/.github/workflows/of.yml b/.github/workflows/of.yml index 08f95b58b08..94959abac38 100644 --- a/.github/workflows/of.yml +++ b/.github/workflows/of.yml @@ -226,6 +226,11 @@ jobs: # 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 - name: Install dependencies run: ./scripts/ci/linuxrpi/install.sh; - name: LS @@ -316,6 +321,11 @@ jobs: - 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 - name: Install dependencies run: ./scripts/ci/$TARGET/install.sh; - name: Build @@ -398,6 +408,14 @@ jobs: - name: Download libs run: ./scripts/${{ matrix.cfg.target }}/download_libs.sh -t $RELEASE + - name: Curl library check (before tests) + run: | + echo "=== libs/curl ==="; ls -lh libs/curl/lib/*/* 2>&1 | head -n 30 + echo "=== curl ver ==="; cat libs/curl/include/curl/curlver.h 2>&1 | grep LIBCURL_VERSION | head -n 5 + echo "=== openssl ==="; cat libs/openssl/include/openssl/opensslv.h 2>&1 | grep OPENSSL_VERSION_MAJOR | head -n 5 + echo "=== apothecary curl protocols ==="; strings libs/curl/lib/macos/curl.xcframework/macos-arm64_x86_64/curl.a 2>&1 | grep -i "_Curl_http" | head -n 5; echo "http? $(strings libs/curl/lib/macos/curl.xcframework/macos-arm64_x86_64/curl.a 2>&1 | grep -q _Curl_http && echo yes || echo no)" + echo "=== system curl ==="; curl --version 2>&1 | head -n1 + - name: Build run: if [ ${{ matrix.cfg.opt }} = "xcode" ]; then scripts/ci/${{ matrix.cfg.target }}/build.sh ${{ matrix.cfg.opt }}; diff --git a/libs/openFrameworks/utils/ofURLFileLoader.cpp b/libs/openFrameworks/utils/ofURLFileLoader.cpp index 1e86ef7df92..b35893abe83 100644 --- a/libs/openFrameworks/utils/ofURLFileLoader.cpp +++ b/libs/openFrameworks/utils/ofURLFileLoader.cpp @@ -3,6 +3,15 @@ #include "ofUtils.h" #include "ofFileUtils.h" #include "ofLog.h" +#include +#include +#if !defined(_WIN32) && !defined(TARGET_OS_WIN32) +#include +#endif +#if defined(TARGET_OSX) +#include +#include +#endif using std::map; using std::set; @@ -21,11 +30,41 @@ using std::string; #include #include #include + #include + #include + #include #include #include #define CERTIFICATE_FILE "cacert.pem" #define PRIVATE_KEY_FILE "cacert.key" + + // OpenSSL 4.x static DRBG fallback - only for 4.0+ where provider DRBG fetch fails + #if OPENSSL_VERSION_MAJOR >= 4 + static int custom_rand_seed(const void *buf, int num) { RAND_add(buf, num, (double)num); return 1; } + static int custom_rand_bytes(unsigned char *buf, int num) { + #if defined(TARGET_OSX) + if(getentropy(buf, (size_t)num)==0) return 1; + arc4random_buf(buf, (size_t)num); + return 1; + #else + for(int i=0;i= 4 + // OpenSSL 4.0 DRBG is in default provider - must load config/provider before RAND + OPENSSL_init_crypto(OPENSSL_INIT_LOAD_CONFIG | OPENSSL_INIT_LOAD_CRYPTO_STRINGS | OPENSSL_INIT_ADD_ALL_CIPHERS | OPENSSL_INIT_ADD_ALL_DIGESTS, NULL); + OSSL_PROVIDER_load(NULL, "default"); +#endif + if(RAND_status() == 0) { + RAND_poll(); + } +#endif } } @@ -183,7 +232,7 @@ void ofURLFileLoaderImpl::createSSLCertificate() { X509_gmtime_adj(X509_get_notBefore(x509), 0); X509_gmtime_adj(X509_get_notAfter(x509), 31536000L); // 1 year X509_set_pubkey(x509, pkey); - X509_NAME * name = X509_get_subject_name(x509); + X509_NAME * name = const_cast(X509_get_subject_name(x509)); if (!name) { X509_free(x509); EVP_PKEY_free(pkey); @@ -317,6 +366,52 @@ int progress_cb(void* ptr, curl_off_t dltotal, curl_off_t dlnow, curl_off_t ulto } ofHttpResponse ofURLFileLoaderImpl::handleRequest(const ofHttpRequest & request) { +#if !defined(NO_OPENSSL) +#if OPENSSL_VERSION_MAJOR >= 4 + // OpenSSL 4.0 static provider DRBG - fallback to arc4random when fetch fails + if(RAND_status()==0) { + OPENSSL_init_crypto(OPENSSL_INIT_LOAD_CONFIG | OPENSSL_INIT_LOAD_CRYPTO_STRINGS | OPENSSL_INIT_ADD_ALL_CIPHERS | OPENSSL_INIT_ADD_ALL_DIGESTS, NULL); + OSSL_PROVIDER_load(NULL, "default"); + if(RAND_status()==0) { + RAND_set_rand_method(&custom_rand_method); +#ifdef DEBUG_CURL + ofLogVerbose("ofURLFileLoader") << "installed custom arc4random RAND_METHOD fallback"; +#endif + } + } +#endif + for(int i=0; i<3 && RAND_status()==0; ++i) { + RAND_poll(); + if(RAND_status()==0) { + unsigned char buf[256]; +#if defined(TARGET_OSX) + if(getentropy(buf, sizeof(buf)) == 0) { + RAND_add(buf, sizeof(buf), sizeof(buf)); + } else { + arc4random_buf(buf, sizeof(buf)); + RAND_add(buf, sizeof(buf), sizeof(buf)); + } + OPENSSL_cleanse(buf, sizeof(buf)); +#endif + RAND_load_file("/dev/urandom", 256); + unsigned int seed = (unsigned int)time(nullptr) ^ (unsigned int)clock(); +#if !defined(_WIN32) && !defined(TARGET_OS_WIN32) + seed ^= (unsigned int)getpid(); +#endif + RAND_add(&seed, sizeof(seed), sizeof(seed)); + OPENSSL_cleanse(&seed, sizeof(seed)); + RAND_poll(); + } + } +#ifdef DEBUG_CURL + if(RAND_status()==0) { + unsigned long e = ERR_get_error(); + char ebuf[256]={0}; + ERR_error_string_n(e, ebuf, sizeof(ebuf)); + ofLogError("ofURLFileLoader") << "RAND_status still 0 err=" << e << " " << ebuf; + } +#endif +#endif std::unique_ptr curl = std::unique_ptr(curl_easy_init(), curl_easy_cleanup); if (!curl) { ofLogError("ofURLFileLoader") << "curl_easy_init() failed!"; @@ -329,20 +424,34 @@ ofHttpResponse ofURLFileLoaderImpl::handleRequest(const ofHttpRequest & request) if (ret != CURLE_OK) { ofLogWarning() << "cURL error: " << curl_easy_strerror(ret); } - if (version) { - std::string userAgent = std::string("curl/") + version->version; - curl_easy_setopt(curl.get(), CURLOPT_USERAGENT, userAgent.c_str()); - } else { - curl_easy_setopt(curl.get(), CURLOPT_USERAGENT, "curl/unknown"); - } + } + // Always set User-Agent - some hosts (Cloudflare, GitHub) block empty UA and cause http->https redirect test to fail + if (version) { + std::string userAgent = std::string("curl/") + version->version; + curl_easy_setopt(curl.get(), CURLOPT_USERAGENT, userAgent.c_str()); + } else { + curl_easy_setopt(curl.get(), CURLOPT_USERAGENT, "curl/unknown"); } if(version->features & CURL_VERSION_SSL) { - curl_easy_setopt(curl.get(), CURLOPT_SSL_VERIFYPEER, false); + curl_easy_setopt(curl.get(), CURLOPT_SSL_VERIFYPEER, 1L); curl_easy_setopt(curl.get(), CURLOPT_SSL_VERIFYHOST, 2L); } - curl_easy_setopt(curl.get(), CURLOPT_URL, request.url.c_str()); + ofLogVerbose("ofURLFileLoader") << "Request URL: '" << request.url << "'"; + CURLcode urlRes = curl_easy_setopt(curl.get(), CURLOPT_URL, request.url.c_str()); + if(urlRes != CURLE_OK) { + ofLogError("ofURLFileLoader") << "CURLOPT_URL failed for '" << request.url << "': " << curl_easy_strerror(urlRes); + return ofHttpResponse(request, -1, curl_easy_strerror(urlRes)); + } curl_easy_setopt(curl.get(), CURLOPT_FOLLOWLOCATION, 1L); curl_easy_setopt(curl.get(), CURLOPT_MAXREDIRS, 20L); + // curl 7.85.0+ uses _STR variants (deprecated bitmask); guard for 8.21+ / 7.85+ +#if LIBCURL_VERSION_NUM >= 0x075500 + curl_easy_setopt(curl.get(), CURLOPT_REDIR_PROTOCOLS_STR, "http,https"); + curl_easy_setopt(curl.get(), CURLOPT_PROTOCOLS_STR, "http,https"); +#else + curl_easy_setopt(curl.get(), CURLOPT_REDIR_PROTOCOLS, CURLPROTO_HTTP | CURLPROTO_HTTPS); + curl_easy_setopt(curl.get(), CURLOPT_PROTOCOLS, CURLPROTO_HTTP | CURLPROTO_HTTPS); +#endif if (request.contentType != "") { headers = curl_slist_append(headers, ("Content-Type: " + request.contentType).c_str()); diff --git a/libs/openFrameworksCompiled/project/ios/CoreOF.xcconfig b/libs/openFrameworksCompiled/project/ios/CoreOF.xcconfig index b157fb2afe9..2a3ae791162 100644 --- a/libs/openFrameworksCompiled/project/ios/CoreOF.xcconfig +++ b/libs/openFrameworksCompiled/project/ios/CoreOF.xcconfig @@ -43,7 +43,7 @@ OF_CORE_LIBS = $(MISC_FLAGS) $(LIB_OF) OF_CORE_HEADERS = $(HEADER_OF) $(HEADER_OFXIOS) $(HEADER_UTF8) $(HEADER_FREETYPE) $(HEADER_FREETYPE2) $(HEADER_GLEW) $(HEADER_FREEIMAGE) $(HEADER_TESS2) $(HEADER_RTAUDIO) $(HEADER_JSON) $(HEADER_GLM) $(HEADER_FMT) $(HEADER_CURL) $(HEADER_URIPARSER) $(HEADER_PUGIXML) $(HEADER_OPENSSL) -OF_CORE_FRAMEWORKS = -framework AudioToolbox -framework Accelerate -framework AVFoundation -framework CoreAudio -framework CoreGraphics -framework CoreLocation -framework CoreMotion -framework CoreMedia -framework CoreVideo -framework Foundation -framework GameController -framework GLKit -framework MapKit -framework OpenAL -framework OpenGLES -framework UIKit -framework Security -framework QuartzCore -framework CoreHaptics -framework Metal +OF_CORE_FRAMEWORKS = -framework AudioToolbox -framework Accelerate -framework AVFoundation -framework CoreAudio -framework CoreGraphics -framework CoreLocation -framework CoreMotion -framework CoreMedia -framework CoreVideo -framework Foundation -framework GameController -framework GLKit -framework MapKit -framework OpenAL -framework OpenGLES -framework UIKit -framework Security -framework CFNetwork -framework QuartzCore -framework CoreHaptics -framework Metal GCC_PREPROCESSOR_DEFINITIONS = $(inherited) GLES_SILENCE_DEPRECATION=1 GLM_FORCE_CTOR_INIT GLM_ENABLE_EXPERIMENTAL diff --git a/libs/openFrameworksCompiled/project/macos/CoreOF.xcconfig b/libs/openFrameworksCompiled/project/macos/CoreOF.xcconfig index 6ab76cc4a43..d2389a38f4a 100644 --- a/libs/openFrameworksCompiled/project/macos/CoreOF.xcconfig +++ b/libs/openFrameworksCompiled/project/macos/CoreOF.xcconfig @@ -50,7 +50,7 @@ OF_CORE_LIBS = $(MISC_FLAGS) OF_CORE_HEADERS = $(HEADER_OF) $(HEADER_FREEIMAGE) $(HEADER_UTF8) $(HEADER_JSON) $(HEADER_GLM) $(HEADER_TESS2) $(HEADER_CAIRO) $(HEADER_RTAUDIO) $(HEADER_GLFW) $(HEADER_FREETYPE) $(HEADER_FREETYPE2) $(HEADER_CURL) $(HEADER_URIPARSER) $(HEADER_PUGIXML) $(HEADER_GLEW) $(HEADER_CURL) $(HEADER_OPENSSL) $(HEADER_BROTLI) -OF_CORE_FRAMEWORKS = -framework Accelerate -framework AGL -framework AppKit -framework ApplicationServices -framework AudioToolbox -framework AVFoundation -framework Cocoa -framework CoreAudio -framework CoreFoundation -framework CoreMedia -framework CoreServices -framework CoreVideo -framework IOKit -framework OpenGL -framework QuartzCore -framework Security +OF_CORE_FRAMEWORKS = -framework Accelerate -framework AGL -framework AppKit -framework ApplicationServices -framework AudioToolbox -framework AVFoundation -framework Cocoa -framework CoreAudio -framework CoreFoundation -framework CoreMedia -framework CoreServices -framework CoreVideo -framework IOKit -framework OpenGL -framework QuartzCore -framework Security -framework CFNetwork //-framework AudioToolbox -framework Accelerate -framework AVFoundation -framework CoreAudio -framework CoreGraphics -framework CoreLocation -framework CoreMotion -framework CoreMedia -framework CoreVideo -framework Foundation -framework GameController -framework GLKit -framework MapKit -framework OpenAL -framework OpenGLES -framework UIKit -framework Security -framework QuartzCore -framework CoreHaptics // diff --git a/libs/openFrameworksCompiled/project/macos/config.macos.default.mk b/libs/openFrameworksCompiled/project/macos/config.macos.default.mk index 12d3903eb9a..c6a9eebaf9d 100644 --- a/libs/openFrameworksCompiled/project/macos/config.macos.default.mk +++ b/libs/openFrameworksCompiled/project/macos/config.macos.default.mk @@ -101,7 +101,19 @@ ifeq ($(shell xcode-select -print-path 2> /dev/null; echo $$?),0) MAC_OS_SDK_PATH=$(MAC_OS_XCODE_ROOT)/Platforms/MacOSX.platform/Developer/SDKs ifndef MAC_OS_SDK - ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX14.5.sdk),$(MAC_OS_SDK_PATH)/MacOSX14.5.sdk) + ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX15.5.sdk),$(MAC_OS_SDK_PATH)/MacOSX15.5.sdk) + MAC_OS_SDK=15.5 + else ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX15.4.sdk),$(MAC_OS_SDK_PATH)/MacOSX15.4.sdk) + MAC_OS_SDK=15.4 + else ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX15.3.sdk),$(MAC_OS_SDK_PATH)/MacOSX15.3.sdk) + MAC_OS_SDK=15.3 + else ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX15.2.sdk),$(MAC_OS_SDK_PATH)/MacOSX15.2.sdk) + MAC_OS_SDK=15.2 + else ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX15.1.sdk),$(MAC_OS_SDK_PATH)/MacOSX15.1.sdk) + MAC_OS_SDK=15.1 + else ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX15.0.sdk),$(MAC_OS_SDK_PATH)/MacOSX15.0.sdk) + MAC_OS_SDK=15.0 + else ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX14.5.sdk),$(MAC_OS_SDK_PATH)/MacOSX14.5.sdk) MAC_OS_SDK=14.5 else ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX14.4.sdk),$(MAC_OS_SDK_PATH)/MacOSX14.4.sdk) MAC_OS_SDK=14.4 @@ -173,8 +185,6 @@ endif #PLATFORM_CFLAGS += -funroll-all-loops #PLATFORM_CFLAGS += -Os -#PLATFORM_CFLAGS += -arch i386 - # other osx PLATFORM_CFLAGS += -fpascal-strings @@ -353,6 +363,7 @@ PLATFORM_FRAMEWORKS += IOKit PLATFORM_FRAMEWORKS += OpenGL PLATFORM_FRAMEWORKS += QuartzCore PLATFORM_FRAMEWORKS += Security +PLATFORM_FRAMEWORKS += CFNetwork PLATFORM_FRAMEWORKS += SystemConfiguration diff --git a/libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig b/libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig index 000371b92ee..ace0f49e9e1 100644 --- a/libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig +++ b/libs/openFrameworksCompiled/project/osx/CoreOF.xcconfig @@ -47,7 +47,7 @@ LIB_OF_DEBUG = "$(OF_PATH)/libs/openFrameworksCompiled/lib/osx/openFrameworksDeb OF_CORE_HEADERS = $(HEADER_OF) $(HEADER_FREETYPE) $(HEADER_FREETYPE2) $(HEADER_GLEW) $(HEADER_FREEIMAGE) $(HEADER_TESS2) $(HEADER_CAIRO) $(HEADER_RTAUDIO) $(HEADER_GLFW) $(HEADER_UTF8) $(HEADER_JSON) $(HEADER_GLM) $(HEADER_CURL) ${HEADER_SSL} $(HEADER_URIPARSER) $(HEADER_PUGIXML) ${HEADER_BROTLI} -OF_CORE_FRAMEWORKS = -framework Accelerate -framework AppKit -framework ApplicationServices -framework AudioToolbox -framework AVFoundation -framework Cocoa -framework CoreAudio -framework CoreFoundation -framework CoreMedia -framework CoreServices -framework CoreVideo -framework Foundation -framework IOKit -framework OpenGL -framework QuartzCore -framework Security -framework SystemConfiguration -framework Metal +OF_CORE_FRAMEWORKS = -framework Accelerate -framework AppKit -framework ApplicationServices -framework AudioToolbox -framework AVFoundation -framework Cocoa -framework CoreAudio -framework CoreFoundation -framework CoreMedia -framework CoreServices -framework CoreVideo -framework Foundation -framework IOKit -framework OpenGL -framework QuartzCore -framework Security -framework CFNetwork -framework SystemConfiguration -framework Metal diff --git a/libs/openFrameworksCompiled/project/osx/config.osx.default.mk b/libs/openFrameworksCompiled/project/osx/config.osx.default.mk index a7631696a2c..c3aa625eb6c 100644 --- a/libs/openFrameworksCompiled/project/osx/config.osx.default.mk +++ b/libs/openFrameworksCompiled/project/osx/config.osx.default.mk @@ -101,7 +101,19 @@ ifeq ($(shell xcode-select -print-path 2> /dev/null; echo $$?),0) MAC_OS_SDK_PATH=$(MAC_OS_XCODE_ROOT)/Platforms/MacOSX.platform/Developer/SDKs ifndef MAC_OS_SDK - ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX14.5.sdk),$(MAC_OS_SDK_PATH)/MacOSX14.5.sdk) + ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX15.5.sdk),$(MAC_OS_SDK_PATH)/MacOSX15.5.sdk) + MAC_OS_SDK=15.5 + else ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX15.4.sdk),$(MAC_OS_SDK_PATH)/MacOSX15.4.sdk) + MAC_OS_SDK=15.4 + else ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX15.3.sdk),$(MAC_OS_SDK_PATH)/MacOSX15.3.sdk) + MAC_OS_SDK=15.3 + else ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX15.2.sdk),$(MAC_OS_SDK_PATH)/MacOSX15.2.sdk) + MAC_OS_SDK=15.2 + else ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX15.1.sdk),$(MAC_OS_SDK_PATH)/MacOSX15.1.sdk) + MAC_OS_SDK=15.1 + else ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX15.0.sdk),$(MAC_OS_SDK_PATH)/MacOSX15.0.sdk) + MAC_OS_SDK=15.0 + else ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX14.5.sdk),$(MAC_OS_SDK_PATH)/MacOSX14.5.sdk) MAC_OS_SDK=14.5 else ifeq ($(wildcard $(MAC_OS_SDK_PATH)/MacOSX14.4.sdk),$(MAC_OS_SDK_PATH)/MacOSX14.4.sdk) MAC_OS_SDK=14.4 @@ -353,6 +365,7 @@ PLATFORM_FRAMEWORKS += IOKit PLATFORM_FRAMEWORKS += OpenGL PLATFORM_FRAMEWORKS += QuartzCore PLATFORM_FRAMEWORKS += Security +PLATFORM_FRAMEWORKS += CFNetwork PLATFORM_FRAMEWORKS += SystemConfiguration diff --git a/libs/openFrameworksCompiled/project/tvOS/CoreOF.xcconfig b/libs/openFrameworksCompiled/project/tvOS/CoreOF.xcconfig index 230098f9cac..83f4ddc762c 100644 --- a/libs/openFrameworksCompiled/project/tvOS/CoreOF.xcconfig +++ b/libs/openFrameworksCompiled/project/tvOS/CoreOF.xcconfig @@ -37,7 +37,7 @@ OF_CORE_LIBS = $(MISC_FLAGS) $(LIB_OF) OF_CORE_HEADERS = $(HEADER_OF) $(HEADER_OFXIOS) $(HEADER_UTF8) $(HEADER_FREETYPE) $(HEADER_FREETYPE2) $(HEADER_GLEW) $(HEADER_FREEIMAGE) $(HEADER_TESS2) $(HEADER_FMT) $(HEADER_RTAUDIO) $(HEADER_JSON) $(HEADER_GLM) $(HEADER_FMT) $(HEADER_CURL) $(HEADER_URIPARSER) $(HEADER_PUGIXML) -OF_CORE_FRAMEWORKS = -framework AudioToolbox -framework Accelerate -framework AVFoundation -framework CoreAudio -framework CoreGraphics -framework CoreLocation -framework CoreMedia -framework CoreVideo -framework Foundation -framework GameController -framework GLKit -framework MapKit -framework OpenAL -framework OpenGLES -framework UIKit -framework Security -framework QuartzCore -framework Metal -framework MetalKit +OF_CORE_FRAMEWORKS = -framework AudioToolbox -framework Accelerate -framework AVFoundation -framework CoreAudio -framework CoreGraphics -framework CoreLocation -framework CoreMedia -framework CoreVideo -framework Foundation -framework GameController -framework GLKit -framework MapKit -framework OpenAL -framework OpenGLES -framework UIKit -framework Security -framework CFNetwork -framework QuartzCore -framework Metal -framework MetalKit DEAD_CODE_STRIPPING = YES diff --git a/libs/openFrameworksCompiled/project/vs/openFrameworksDebug.props b/libs/openFrameworksCompiled/project/vs/openFrameworksDebug.props index d7de8a1dbe3..cf224053046 100644 --- a/libs/openFrameworksCompiled/project/vs/openFrameworksDebug.props +++ b/libs/openFrameworksCompiled/project/vs/openFrameworksDebug.props @@ -16,7 +16,7 @@ $(OF_ROOT)\libs\glfw\lib\vs\x64;$(OF_ROOT)\libs\rtAudio\lib\vs\x64;$(OF_ROOT)\libs\FreeImage\lib\vs\x64;$(OF_ROOT)\libs\brotli\lib\vs\x64;$(OF_ROOT)\libs\freetype\lib\vs\x64;$(OF_ROOT)\libs\videoInput\lib\vs\x64;$(OF_ROOT)\libs\cairo\lib\vs\x64;$(OF_ROOT)\libs\pixman\lib\vs\x64;$(OF_ROOT)\libs\libpng\lib\vs\x64;$(OF_ROOT)\libs\zlib\lib\vs\x64;$(OF_ROOT)\libs\glew\lib\vs\x64;$(OF_ROOT)\libs\glu\lib\vs\x64;$(OF_ROOT)\libs\openssl\lib\vs\x64;$(OF_ROOT)\libs\curl\lib\vs\x64;$(OF_ROOT)\libs\tess2\lib\vs\x64;$(OF_ROOT)\libs\uriparser\lib\vs\x64;$(OF_ROOT)\libs\pugixml\lib\vs\x64;%(AdditionalLibraryDirectories) - libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudioD.lib;videoInputD.lib;freetyped.lib;FreeImageD.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;libcurl.lib;uriparser.lib;pugixmlD.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) + libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudioD.lib;videoInputD.lib;freetyped.lib;FreeImageD.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;bcrypt.lib;libcurl.lib;uriparser.lib;pugixmlD.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) /ignore:4099 %(AdditionalOptions) false atlthunk.lib;msvcrt;libcmt;LIBC;LIBCMTD @@ -30,7 +30,7 @@ $(OF_ROOT)\libs\glfw\lib\vs\ARM64;$(OF_ROOT)\libs\rtAudio\lib\vs\ARM64;$(OF_ROOT)\libs\FreeImage\lib\vs\ARM64;$(OF_ROOT)\libs\brotli\lib\vs\ARM64;$(OF_ROOT)\libs\freetype\lib\vs\ARM64;$(OF_ROOT)\libs\videoInput\lib\vs\ARM64;$(OF_ROOT)\libs\cairo\lib\vs\ARM64;$(OF_ROOT)\libs\pixman\lib\vs\ARM64;$(OF_ROOT)\libs\libpng\lib\vs\ARM64;$(OF_ROOT)\libs\zlib\lib\vs\ARM64;$(OF_ROOT)\libs\glew\lib\vs\ARM64;$(OF_ROOT)\libs\glu\lib\vs\ARM64;$(OF_ROOT)\libs\openssl\lib\vs\ARM64;$(OF_ROOT)\libs\curl\lib\vs\ARM64;$(OF_ROOT)\libs\tess2\lib\vs\ARM64;$(OF_ROOT)\libs\uriparser\lib\vs\ARM64;$(OF_ROOT)\libs\pugixml\lib\vs\ARM64;%(AdditionalLibraryDirectories) - libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudioD.lib;videoInputD.lib;freetyped.lib;FreeImageD.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;libcurl.lib;uriparser.lib;pugixmlD.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) + libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudioD.lib;videoInputD.lib;freetyped.lib;FreeImageD.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;bcrypt.lib;libcurl.lib;uriparser.lib;pugixmlD.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) /ignore:4099 %(AdditionalOptions) true atlthunk.lib;msvcrt;libcmt;LIBC;LIBCMTD @@ -44,7 +44,7 @@ $(OF_ROOT)\libs\glfw\lib\vs\ARM64EC;$(OF_ROOT)\libs\rtAudio\lib\vs\ARM64EC;$(OF_ROOT)\libs\FreeImage\lib\vs\ARM64EC;$(OF_ROOT)\libs\brotli\lib\vs\ARM64EC;$(OF_ROOT)\libs\freetype\lib\vs\ARM64EC;$(OF_ROOT)\libs\videoInput\lib\vs\ARM64EC;$(OF_ROOT)\libs\cairo\lib\vs\ARM64EC;$(OF_ROOT)\libs\pixman\lib\vs\ARM64EC;$(OF_ROOT)\libs\libpng\lib\vs\ARM64EC;$(OF_ROOT)\libs\zlib\lib\vs\ARM64EC;$(OF_ROOT)\libs\glew\lib\vs\ARM64EC;$(OF_ROOT)\libs\glu\lib\vs\ARM64EC;$(OF_ROOT)\libs\openssl\lib\vs\ARM64EC;$(OF_ROOT)\libs\curl\lib\vs\ARM64EC;$(OF_ROOT)\libs\tess2\lib\vs\ARM64EC;$(OF_ROOT)\libs\uriparser\lib\vs\ARM64EC;$(OF_ROOT)\libs\pugixml\lib\vs\ARM64EC;%(AdditionalLibraryDirectories) - libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudioD.lib;videoInputD.lib;freetyped.lib;FreeImageD.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;libcurl.lib;uriparser.lib;pugixmlD.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) + libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudioD.lib;videoInputD.lib;freetyped.lib;FreeImageD.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;bcrypt.lib;libcurl.lib;uriparser.lib;pugixmlD.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) /ignore:4099 %(AdditionalOptions) true atlthunk.lib;msvcrt;libcmt;LIBC;LIBCMTD diff --git a/libs/openFrameworksCompiled/project/vs/openFrameworksRelease.props b/libs/openFrameworksCompiled/project/vs/openFrameworksRelease.props index 86fd63f9a2d..6001c9108da 100644 --- a/libs/openFrameworksCompiled/project/vs/openFrameworksRelease.props +++ b/libs/openFrameworksCompiled/project/vs/openFrameworksRelease.props @@ -16,7 +16,7 @@ $(OF_ROOT)\libs\glfw\lib\vs\x64;$(OF_ROOT)\libs\rtAudio\lib\vs\x64;$(OF_ROOT)\libs\FreeImage\lib\vs\x64;$(OF_ROOT)\libs\brotli\lib\vs\x64;$(OF_ROOT)\libs\freetype\lib\vs\x64;$(OF_ROOT)\libs\videoInput\lib\vs\x64;$(OF_ROOT)\libs\cairo\lib\vs\x64;$(OF_ROOT)\libs\pixman\lib\vs\x64;$(OF_ROOT)\libs\libpng\lib\vs\x64;$(OF_ROOT)\libs\zlib\lib\vs\x64;$(OF_ROOT)\libs\glew\lib\vs\x64;$(OF_ROOT)\libs\glu\lib\vs\x64;$(OF_ROOT)\libs\openssl\lib\vs\x64;$(OF_ROOT)\libs\curl\lib\vs\x64;$(OF_ROOT)\libs\tess2\lib\vs\x64;$(OF_ROOT)\libs\uriparser\lib\vs\x64;$(OF_ROOT)\libs\pugixml\lib\vs\x64;%(AdditionalLibraryDirectories) - libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;GLu32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudio.lib;videoInput.lib;freetype.lib;FreeImage.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;libcurl.lib;uriparser.lib;pugixml.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) + libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;GLu32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudio.lib;videoInput.lib;freetype.lib;FreeImage.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;bcrypt.lib;libcurl.lib;uriparser.lib;pugixml.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) true atlthunk.lib;LIBC.lib;LIBCMT @@ -29,7 +29,7 @@ $(OF_ROOT)\libs\glfw\lib\vs\ARM64;$(OF_ROOT)\libs\rtAudio\lib\vs\ARM64;$(OF_ROOT)\libs\FreeImage\lib\vs\ARM64;$(OF_ROOT)\libs\brotli\lib\vs\ARM64;$(OF_ROOT)\libs\freetype\lib\vs\ARM64;$(OF_ROOT)\libs\videoInput\lib\vs\ARM64;$(OF_ROOT)\libs\cairo\lib\vs\ARM64;$(OF_ROOT)\libs\pixman\lib\vs\ARM64;$(OF_ROOT)\libs\libpng\lib\vs\ARM64;$(OF_ROOT)\libs\zlib\lib\vs\ARM64;$(OF_ROOT)\libs\glew\lib\vs\ARM64;$(OF_ROOT)\libs\glu\lib\vs\ARM64;$(OF_ROOT)\libs\openssl\lib\vs\ARM64;$(OF_ROOT)\libs\curl\lib\vs\ARM64;$(OF_ROOT)\libs\tess2\lib\vs\ARM64;$(OF_ROOT)\libs\uriparser\lib\vs\ARM64;$(OF_ROOT)\libs\pugixml\lib\vs\ARM64;%(AdditionalLibraryDirectories) - libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;GLu32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudio.lib;videoInput.lib;freetype.lib;FreeImage.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;libcurl.lib;uriparser.lib;pugixml.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) + libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;GLu32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudio.lib;videoInput.lib;freetype.lib;FreeImage.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;bcrypt.lib;libcurl.lib;uriparser.lib;pugixml.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) true atlthunk.lib;LIBC.lib;LIBCMT @@ -42,7 +42,7 @@ $(OF_ROOT)\libs\glfw\lib\vs\ARM64EC;$(OF_ROOT)\libs\rtAudio\lib\vs\ARM64EC;$(OF_ROOT)\libs\FreeImage\lib\vs\ARM64EC;$(OF_ROOT)\libs\brotli\lib\vs\ARM64EC;$(OF_ROOT)\libs\freetype\lib\vs\ARM64EC;$(OF_ROOT)\libs\videoInput\lib\vs\ARM64EC;$(OF_ROOT)\libs\cairo\lib\vs\ARM64EC;$(OF_ROOT)\libs\pixman\lib\vs\ARM64EC;$(OF_ROOT)\libs\libpng\lib\vs\ARM64EC;$(OF_ROOT)\libs\zlib\lib\vs\ARM64EC;$(OF_ROOT)\libs\glew\lib\vs\ARM64EC;$(OF_ROOT)\libs\glu\lib\vs\ARM64EC;$(OF_ROOT)\libs\openssl\lib\vs\ARM64EC;$(OF_ROOT)\libs\curl\lib\vs\ARM64EC;$(OF_ROOT)\libs\tess2\lib\vs\ARM64EC;$(OF_ROOT)\libs\uriparser\lib\vs\ARM64EC;$(OF_ROOT)\libs\pugixml\lib\vs\ARM64EC;%(AdditionalLibraryDirectories) - libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;GLu32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudio.lib;videoInput.lib;freetype.lib;FreeImage.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;libcurl.lib;uriparser.lib;pugixml.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) + libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;GLu32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudio.lib;videoInput.lib;freetype.lib;FreeImage.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;bcrypt.lib;libcurl.lib;uriparser.lib;pugixml.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) true atlthunk.lib;LIBC.lib;LIBCMT diff --git a/libs/openFrameworksCompiled/project/vs2026/openFrameworksDebug.props b/libs/openFrameworksCompiled/project/vs2026/openFrameworksDebug.props index d7de8a1dbe3..cf224053046 100644 --- a/libs/openFrameworksCompiled/project/vs2026/openFrameworksDebug.props +++ b/libs/openFrameworksCompiled/project/vs2026/openFrameworksDebug.props @@ -16,7 +16,7 @@ $(OF_ROOT)\libs\glfw\lib\vs\x64;$(OF_ROOT)\libs\rtAudio\lib\vs\x64;$(OF_ROOT)\libs\FreeImage\lib\vs\x64;$(OF_ROOT)\libs\brotli\lib\vs\x64;$(OF_ROOT)\libs\freetype\lib\vs\x64;$(OF_ROOT)\libs\videoInput\lib\vs\x64;$(OF_ROOT)\libs\cairo\lib\vs\x64;$(OF_ROOT)\libs\pixman\lib\vs\x64;$(OF_ROOT)\libs\libpng\lib\vs\x64;$(OF_ROOT)\libs\zlib\lib\vs\x64;$(OF_ROOT)\libs\glew\lib\vs\x64;$(OF_ROOT)\libs\glu\lib\vs\x64;$(OF_ROOT)\libs\openssl\lib\vs\x64;$(OF_ROOT)\libs\curl\lib\vs\x64;$(OF_ROOT)\libs\tess2\lib\vs\x64;$(OF_ROOT)\libs\uriparser\lib\vs\x64;$(OF_ROOT)\libs\pugixml\lib\vs\x64;%(AdditionalLibraryDirectories) - libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudioD.lib;videoInputD.lib;freetyped.lib;FreeImageD.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;libcurl.lib;uriparser.lib;pugixmlD.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) + libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudioD.lib;videoInputD.lib;freetyped.lib;FreeImageD.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;bcrypt.lib;libcurl.lib;uriparser.lib;pugixmlD.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) /ignore:4099 %(AdditionalOptions) false atlthunk.lib;msvcrt;libcmt;LIBC;LIBCMTD @@ -30,7 +30,7 @@ $(OF_ROOT)\libs\glfw\lib\vs\ARM64;$(OF_ROOT)\libs\rtAudio\lib\vs\ARM64;$(OF_ROOT)\libs\FreeImage\lib\vs\ARM64;$(OF_ROOT)\libs\brotli\lib\vs\ARM64;$(OF_ROOT)\libs\freetype\lib\vs\ARM64;$(OF_ROOT)\libs\videoInput\lib\vs\ARM64;$(OF_ROOT)\libs\cairo\lib\vs\ARM64;$(OF_ROOT)\libs\pixman\lib\vs\ARM64;$(OF_ROOT)\libs\libpng\lib\vs\ARM64;$(OF_ROOT)\libs\zlib\lib\vs\ARM64;$(OF_ROOT)\libs\glew\lib\vs\ARM64;$(OF_ROOT)\libs\glu\lib\vs\ARM64;$(OF_ROOT)\libs\openssl\lib\vs\ARM64;$(OF_ROOT)\libs\curl\lib\vs\ARM64;$(OF_ROOT)\libs\tess2\lib\vs\ARM64;$(OF_ROOT)\libs\uriparser\lib\vs\ARM64;$(OF_ROOT)\libs\pugixml\lib\vs\ARM64;%(AdditionalLibraryDirectories) - libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudioD.lib;videoInputD.lib;freetyped.lib;FreeImageD.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;libcurl.lib;uriparser.lib;pugixmlD.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) + libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudioD.lib;videoInputD.lib;freetyped.lib;FreeImageD.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;bcrypt.lib;libcurl.lib;uriparser.lib;pugixmlD.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) /ignore:4099 %(AdditionalOptions) true atlthunk.lib;msvcrt;libcmt;LIBC;LIBCMTD @@ -44,7 +44,7 @@ $(OF_ROOT)\libs\glfw\lib\vs\ARM64EC;$(OF_ROOT)\libs\rtAudio\lib\vs\ARM64EC;$(OF_ROOT)\libs\FreeImage\lib\vs\ARM64EC;$(OF_ROOT)\libs\brotli\lib\vs\ARM64EC;$(OF_ROOT)\libs\freetype\lib\vs\ARM64EC;$(OF_ROOT)\libs\videoInput\lib\vs\ARM64EC;$(OF_ROOT)\libs\cairo\lib\vs\ARM64EC;$(OF_ROOT)\libs\pixman\lib\vs\ARM64EC;$(OF_ROOT)\libs\libpng\lib\vs\ARM64EC;$(OF_ROOT)\libs\zlib\lib\vs\ARM64EC;$(OF_ROOT)\libs\glew\lib\vs\ARM64EC;$(OF_ROOT)\libs\glu\lib\vs\ARM64EC;$(OF_ROOT)\libs\openssl\lib\vs\ARM64EC;$(OF_ROOT)\libs\curl\lib\vs\ARM64EC;$(OF_ROOT)\libs\tess2\lib\vs\ARM64EC;$(OF_ROOT)\libs\uriparser\lib\vs\ARM64EC;$(OF_ROOT)\libs\pugixml\lib\vs\ARM64EC;%(AdditionalLibraryDirectories) - libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudioD.lib;videoInputD.lib;freetyped.lib;FreeImageD.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;libcurl.lib;uriparser.lib;pugixmlD.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) + libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudioD.lib;videoInputD.lib;freetyped.lib;FreeImageD.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;bcrypt.lib;libcurl.lib;uriparser.lib;pugixmlD.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) /ignore:4099 %(AdditionalOptions) true atlthunk.lib;msvcrt;libcmt;LIBC;LIBCMTD diff --git a/libs/openFrameworksCompiled/project/vs2026/openFrameworksRelease.props b/libs/openFrameworksCompiled/project/vs2026/openFrameworksRelease.props index 86fd63f9a2d..6001c9108da 100644 --- a/libs/openFrameworksCompiled/project/vs2026/openFrameworksRelease.props +++ b/libs/openFrameworksCompiled/project/vs2026/openFrameworksRelease.props @@ -16,7 +16,7 @@ $(OF_ROOT)\libs\glfw\lib\vs\x64;$(OF_ROOT)\libs\rtAudio\lib\vs\x64;$(OF_ROOT)\libs\FreeImage\lib\vs\x64;$(OF_ROOT)\libs\brotli\lib\vs\x64;$(OF_ROOT)\libs\freetype\lib\vs\x64;$(OF_ROOT)\libs\videoInput\lib\vs\x64;$(OF_ROOT)\libs\cairo\lib\vs\x64;$(OF_ROOT)\libs\pixman\lib\vs\x64;$(OF_ROOT)\libs\libpng\lib\vs\x64;$(OF_ROOT)\libs\zlib\lib\vs\x64;$(OF_ROOT)\libs\glew\lib\vs\x64;$(OF_ROOT)\libs\glu\lib\vs\x64;$(OF_ROOT)\libs\openssl\lib\vs\x64;$(OF_ROOT)\libs\curl\lib\vs\x64;$(OF_ROOT)\libs\tess2\lib\vs\x64;$(OF_ROOT)\libs\uriparser\lib\vs\x64;$(OF_ROOT)\libs\pugixml\lib\vs\x64;%(AdditionalLibraryDirectories) - libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;GLu32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudio.lib;videoInput.lib;freetype.lib;FreeImage.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;libcurl.lib;uriparser.lib;pugixml.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) + libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;GLu32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudio.lib;videoInput.lib;freetype.lib;FreeImage.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;bcrypt.lib;libcurl.lib;uriparser.lib;pugixml.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) true atlthunk.lib;LIBC.lib;LIBCMT @@ -29,7 +29,7 @@ $(OF_ROOT)\libs\glfw\lib\vs\ARM64;$(OF_ROOT)\libs\rtAudio\lib\vs\ARM64;$(OF_ROOT)\libs\FreeImage\lib\vs\ARM64;$(OF_ROOT)\libs\brotli\lib\vs\ARM64;$(OF_ROOT)\libs\freetype\lib\vs\ARM64;$(OF_ROOT)\libs\videoInput\lib\vs\ARM64;$(OF_ROOT)\libs\cairo\lib\vs\ARM64;$(OF_ROOT)\libs\pixman\lib\vs\ARM64;$(OF_ROOT)\libs\libpng\lib\vs\ARM64;$(OF_ROOT)\libs\zlib\lib\vs\ARM64;$(OF_ROOT)\libs\glew\lib\vs\ARM64;$(OF_ROOT)\libs\glu\lib\vs\ARM64;$(OF_ROOT)\libs\openssl\lib\vs\ARM64;$(OF_ROOT)\libs\curl\lib\vs\ARM64;$(OF_ROOT)\libs\tess2\lib\vs\ARM64;$(OF_ROOT)\libs\uriparser\lib\vs\ARM64;$(OF_ROOT)\libs\pugixml\lib\vs\ARM64;%(AdditionalLibraryDirectories) - libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;GLu32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudio.lib;videoInput.lib;freetype.lib;FreeImage.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;libcurl.lib;uriparser.lib;pugixml.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) + libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;GLu32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudio.lib;videoInput.lib;freetype.lib;FreeImage.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;bcrypt.lib;libcurl.lib;uriparser.lib;pugixml.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) true atlthunk.lib;LIBC.lib;LIBCMT @@ -42,7 +42,7 @@ $(OF_ROOT)\libs\glfw\lib\vs\ARM64EC;$(OF_ROOT)\libs\rtAudio\lib\vs\ARM64EC;$(OF_ROOT)\libs\FreeImage\lib\vs\ARM64EC;$(OF_ROOT)\libs\brotli\lib\vs\ARM64EC;$(OF_ROOT)\libs\freetype\lib\vs\ARM64EC;$(OF_ROOT)\libs\videoInput\lib\vs\ARM64EC;$(OF_ROOT)\libs\cairo\lib\vs\ARM64EC;$(OF_ROOT)\libs\pixman\lib\vs\ARM64EC;$(OF_ROOT)\libs\libpng\lib\vs\ARM64EC;$(OF_ROOT)\libs\zlib\lib\vs\ARM64EC;$(OF_ROOT)\libs\glew\lib\vs\ARM64EC;$(OF_ROOT)\libs\glu\lib\vs\ARM64EC;$(OF_ROOT)\libs\openssl\lib\vs\ARM64EC;$(OF_ROOT)\libs\curl\lib\vs\ARM64EC;$(OF_ROOT)\libs\tess2\lib\vs\ARM64EC;$(OF_ROOT)\libs\uriparser\lib\vs\ARM64EC;$(OF_ROOT)\libs\pugixml\lib\vs\ARM64EC;%(AdditionalLibraryDirectories) - libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;GLu32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudio.lib;videoInput.lib;freetype.lib;FreeImage.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;libcurl.lib;uriparser.lib;pugixml.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) + libcairo.lib;libpixman-1.lib;libpng.lib;zlib.lib;brotlicommon.lib;brotlidec.lib;brotlienc.lib;msimg32.lib;OpenGL32.lib;GLu32.lib;kernel32.lib;setupapi.lib;Vfw32.lib;comctl32.lib;rtAudio.lib;videoInput.lib;freetype.lib;FreeImage.lib;dsound.lib;user32.lib;gdi32.lib;winspool.lib;comdlg32.lib;advapi32.lib;shell32.lib;ole32.lib;oleaut32.lib;uuid.lib;libglew32.lib;libssl.lib;libcrypto.lib;crypt32.lib;bcrypt.lib;libcurl.lib;uriparser.lib;pugixml.lib;Ws2_32.lib;tess2.lib;glfw3.lib;winmm.lib;iphlpapi.lib;%(AdditionalDependencies) true atlthunk.lib;LIBC.lib;LIBCMT diff --git a/tests/io/loadImage/src/main.cpp b/tests/io/loadImage/src/main.cpp index 05551e74d75..b57944e2724 100644 --- a/tests/io/loadImage/src/main.cpp +++ b/tests/io/loadImage/src/main.cpp @@ -8,11 +8,19 @@ class ofApp: public ofxUnitTestsApp{ img.setUseTexture(false); ofxTest(img.load("indispensable.jpg"), "load from fs"); ofxTest(img.load(ofToDataPath("indispensable.jpg", true)), "load from fs"); - ofxTest(img.load("http://openframeworks.cc/about/0.jpg"), "load from http"); - // ofxTest(img.load("https://forum.openframeworks.cc/user_avatar/forum.openframeworks.cc/arturo/45/3965_1.png"), "load from https"); - // ar 48240 / th 144000 / dm 58289 - ofxTest(img.load("https://avatars.githubusercontent.com/u/48240?v=4"), "load from https"); - + // verbose http debug - logs status/error/data.size for CI 2/4 diagnosis (safe, no version->host) + { + ofHttpRequest req("http://openframeworks.cc/about/0.jpg", "http", false, true, true); + auto resp = ofURLFileLoader().handleRequest(req); + ofLogNotice() << "http resp status=" << resp.status << " error='" << resp.error << "' data.size=" << resp.data.size(); + ofxTest(resp.status==200 && resp.data.size()>0, "load from http"); + } + { + ofHttpRequest req("https://avatars.githubusercontent.com/u/48240?v=4", "https", false, true, true); + auto resp = ofURLFileLoader().handleRequest(req); + ofLogNotice() << "https resp status=" << resp.status << " error='" << resp.error << "' data.size=" << resp.data.size(); + ofxTest(resp.status==200 && resp.data.size()>0, "load from https"); + } } };