Commit graph

556 commits

Author SHA1 Message Date
rfm
956eb5b303 Fix check for object pointer depending on alignment requirement. 2025-02-27 12:15:15 +00:00
rfm
a1a3f42ec0 Make use of new KVO implementation configurable 2024-11-29 11:55:47 +00:00
Riccardo Mottola
c0a11aed8b fix minor typos 2024-11-18 15:38:57 +01:00
Hugo Melder
273776a3c6
Fix CI and make libcurl a hard-dependency when using libobjc2 (#447)
* Do not enable Win32 threads and locks when using GCC

* Fix compiler check when CC has arguments appended

* Add NSConstantString literal as global variable to avoid linker error

* Make libcurl a hard-dependency on ObjC 2.0 Toolchain

* Bump TOOLS_WINDOWS_MSVC_RELEASE_TAG

* Remove x86 runner for MSVC toolchain

* Add libcurl to MinGW x64 Clang toolchain

* MSVC toolchain requires Windows 1903 and newer but windows-2019 runner is Redstone 5 (1809)

* MinGW GCC adds .exe suffix

* Some tests timeout after 30s. Increase timeout

* Mark late unregister as hopeful on Win32 with GCC

* Mark NSURL test depending on network connection as hopeful
2024-10-10 11:16:47 +02:00
rfm
ed4e305026
NSURLSession rewrite (#422)
* clang-format: Do not use tabs

* Ignore clangd cache and compile_commands

* NSBlockOperation: Fix memory leak

* NSHTTPCookie: Fix expires date parsing

* NSHTTPCookie: Release DateFormatter after use

* NSOperation: Remove all objects at end of execution

* Reimplementation of NSURLSession

* NSURLSession: Update expiration dates in test

* Update ChangeLog

* Fix trivial compiler warning caused by missing import

* Import GSDispatch.h for definition of DISPATCH_QUEUE_SERIAL

* Import common.h early to avoid header conflict

* Fix import order to avoid conflicts and ensure we have correct localisation macro

* Check for presence of dispatch_cancel

* Cancel timer using dispatch_source_cancel() if dispatch_cancel() is missing.

* NSURLSession: Replace dispatch_io with dispatch_source in unit test HTTP server

---------

Co-authored-by: hmelder <service@hugomelder.com>
2024-08-16 14:08:41 +02:00
Hugo Melder
7cc7fc54e6
Modernise Windows Paths in configure.ac and use 'short' output of relative_paths.sh by default (#431)
* Modernise m4 scripts

* Replace "C:\Documents and Settings" with "C:\Users"
2024-08-13 15:53:10 +02:00
rfm
72c975c543 Simple diagrams in documentation 2024-08-07 16:12:22 +01:00
rfm
a2b9be6287 update config for recent autoconf 2024-07-16 14:20:38 +01:00
Frederik Carlier
7f12e86f57
Use absolute paths in ./configure 2024-05-31 17:26:25 +02:00
Frederik Seiffert
94a6cb9919 Fix Unicode includes in NSString.m
Fixes compilation using ICU bundled with Windows.
2024-05-15 17:09:00 +02:00
hmelder
53b02bab91 Generate configure and config.h.in 2024-04-28 23:22:20 +02:00
Frederik Carlier
e0af8f8035
Use AC_SEARCH_LIBS instead of AC_CHECK_LIB for sframe
Make it optional, this library is not available on Enterprise linux
2024-04-20 20:07:56 +00:00
rfm
dc688a1586 restore accidentally deleted check 2024-04-14 14:20:43 +01:00
rfm
4515e4a28b libsframe needed on some systems 2024-04-14 14:14:55 +01:00
rfm
6df6b1cb97 Add libzstd because newer bfd libraries depend on it 2024-04-12 14:32:29 +01:00
Frederik Carlier
07d17a16a7 Generate pkg-config configuration file for libs-base
This commit generates a `gnustep-base.pc` file which is installed in `/lib/pkgconfig` and contains the GNUstep base version number, the libraries to link (equivalent to `gnustep-config --base-libs`) with and the C flags to use (equivalent to `gnustep-config --objc-flags`).
2024-03-30 15:56:22 +00:00
rfm
ae9892db11 Use closefrom() if available 2023-11-14 11:34:55 +00:00
Richard Frith-Macdonald
24653e63c3 Ensure sockaddr_any is future proof for new socket addresse sizes on
platforms where sockaddr_storage is provided
2023-09-24 12:26:59 +01:00
Hugo Melder
3830a17321 Regenerate autoconf 2022-08-24 03:28:58 -07:00
Hugo Melder
05495a0206 Use pkg-config to detect libcurl on MinGW and Windows 2022-08-24 01:08:44 -07:00
Hugo Melder
90798bf84d Regenerate autoconf 2022-08-23 09:55:40 -07:00
Hugo Melder
c53f41cc27 Regenerate autoconf 2022-08-23 03:53:54 -07:00
Richard Frith-Macdonald
5ecd7fe1b2 Fix problem finding libbfd support on some systems 2021-11-23 14:08:42 +00:00
Riccardo Mottola
0bc09a8a73 also add include parameter for checking iconv library, or libc and gnulibiconv might get mixed 2021-11-16 01:23:57 +01:00
Richard Frith-Macdonald
5162d888dc timezone updates for version2 files 2021-08-11 08:43:20 +01:00
Frederik Seiffert
b41953d274 More robust check for Windows ICU
Also ensure that we don't include both unicode/*.h and icu.h.
2021-08-08 17:27:40 +02:00
Frederik Seiffert
b969347587 Use pkgconfig to find libxslt 2021-08-03 16:55:56 +02:00
Frederik Seiffert
dc32970502 Add support for using ICU DLL from Windows 10
Requires Windows 10 version 1903 (May 2019 Update):
https://docs.microsoft.com/en-us/windows/win32/intl/international-components-for-unicode--icu-

Also adds missing configure check for unicode/utext.h.
2021-08-03 16:52:38 +02:00
Frederik Seiffert
abfe4e2a04 Use native threading and locking APIs on Windows
Removes dependency on pthread library and uses fast Slim Reader/Writer (SRW) locks for NSLock/NSRecursiveLock/NSCondition/NSConditionLock as well as all internal locks. Adds GS_MUTEX_*() macros in GSPThread.h, that are being used for all internal locking instead of pthread APIs.

Also adds support for thread priorities on Windows, fixes method signature of +[NSThread setThreadPriority:] to match Apple platforms, and adds error handling in same method.
2021-07-29 14:22:27 +02:00
Richard Frith-Macdonald
3b8bbb00ba Try to make timezone parsing more robust: always use standard header for posix time zone files. 2021-07-29 10:35:19 +01:00
Richard Frith-Macdonald
782e7aed31 Fix for -setHTTPMaximumConnectionLifetime: 2021-05-05 12:04:28 +01:00
Richard Frith-Macdonald
b489f9b82b Changes to detect that bfd_get_section_vma has changed to bfd_section_vma and make corresponding changes so we can support use of binutils 2.34 and later. 2021-03-18 21:35:34 +00:00
Frederik Seiffert
5c562c546f Windows MSVC fixes 2021-02-12 14:33:04 +01:00
Frederik Seiffert
61709e6101 Support building on Windows with Clang MSVC target 2021-02-03 15:02:27 +01:00
Riccardo Mottola
ece6fc97ff Add check for statbuf.st_mtim if available and use statbuf.st_mtim to get nanosecond precision in modification date, also fix conversion of nanoseconds in creation date. 2021-02-02 23:30:18 +01:00
Frederik Seiffert
3a4948e1a2 Disable libcurl support when headers are not found 2020-12-15 20:08:38 +01:00
Frederik Seiffert
c12716913a Detect objc.lib and add libdir to path on Windows.
Also removed further obsolete checks for garbage collecting runtime (no longer supported).
2020-11-30 17:18:07 +01:00
Frederik Seiffert
ad43ad9092 Prefer dispatch/dispatch.h over dispatch.h. 2020-11-30 17:18:07 +01:00
Richard Frith-Macdonald
1b7bf26bea Merge changes for NSURLSession from EngageHub (formerly Brainstorm). 2020-11-29 06:57:47 -05:00
Richard Frith-Macdonald
d015cebbf3 Remove obsolete checks for garbage collecting runtime (no longer supported) 2020-11-28 04:11:31 -05:00
Riccardo Mottola
24261fdc45 explicitely allow disabling unwind, test for header and function too 2020-07-28 01:02:55 +02:00
rfm
69c9e77afb
Merge pull request #146 from gnustep/msys-fix
Fix MSYS2-32
2020-07-08 13:59:07 +01:00
Riccardo Mottola
b879e0835b explicitely test for ws2tcpip.h header, fix library detection on windows for inet_ntop with corrent library, guard includes and definitions with configure results, cleanup header inclusion 2020-06-09 13:44:42 +02:00
Frederik Seiffert
0b689d4df4 Fix finding libiconv via cross.config. 2020-06-07 11:00:37 +02:00
Riccardo Mottola
21c79c3500 Use utimensat() to set file modification date, if available. 2020-05-01 02:03:25 +02:00
Riccardo
e23ab3b394
Merge pull request #123 from gnustep/master
keep up with master
2020-04-30 11:14:10 +02:00
Richard Frith-Macdonald
d048dfbea5 Fix use of OBJC_RUNTIME_LIB before it was initialised.
Thanks to J. Brakensiek for spotting this.
2020-04-16 10:26:48 +01:00
Richard Frith-Macdonald
fc0c0da188 Remove last vestiges of MIXED ABI support (it didn't really work), and change code to assume that use of the apple runtime means we have the nonfragile ABI (true for modern apple systems we may be interested in using). Regenerate configure script. 2020-04-14 14:56:17 +01:00
Riccardo Mottola
624140d0fc Add tests for non-POSIX lstat() struct members 2020-04-09 09:05:46 +02:00
fredkiefer
4b5594c63d Use pkg-config to check for libxml. 2020-02-05 23:10:53 +01:00