Commit graph

356 commits

Author SHA1 Message Date
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
Hugh McMaster
27b95a3f05 configure.ac: Use PKG_CHECK_MODULES to detect libxml2, falling back to xml2-config if necessary 2020-02-01 19:17:16 +11:00
Frederik Seiffert
0eedef5080 Added NSException symbolication support using libunwind.
This is used when backtrace() is unavailable.
2019-11-18 10:47:47 +01:00
Richard Frith-Macdonald
dd36855923 Improved memory usage reporting mechanisms 2019-08-08 17:20:25 +01:00
Frederik Seiffert
3b60b1a8be Added support for asset loading on Android.
Requires passing the activity's AssetManager object from Java to GNUstep by calling +[NSBundle setJavaAssetManager:withJNIEnv:], which then enables the following features:

- NSBundle main bundle resource paths support for Android assets, e.g. for pathForResource:ofType:, URLForResource:ofType: and related methods.
- NSBundle main bundle info dictionary support if Info.plist exists in Android assets.
- -initWithContentsOfFile: and related methods support for reading Android assets from main bundle in various classes (e.g. NSData, NSDictionary, NSArray, etc.).
- NSFileManager fileExistsAtPath:(isDirectory:) and isReadableFileAtPath: return YES for main bundle asset / asset directory paths.
- NSFileHandle support for reading Android assets from main bundle.
- NSDirectoryEnumerator support for enumerating Android assets from main bundle. Note that recursion into subdirectories is currently not supported by the native Android asset manager API (see https://issuetracker.google.com/issues/37002833).

Also adds support for automatic NSProcessInfo initialization on Android with a fake executable path "/data/data/<app identifier>/exe" (as Android apps don't have a real executable path), and tweaks main bundle initialization to allow that path. Main bundle resource paths are prefixed by "/data/data/<app identifier>/Resources".
2019-05-23 15:44:07 +02:00
rfm
5ce5899da2
Merge pull request #41 from triplef/swift-corelibs-libdispatch-compat
Add compatibility for Swift corelibs libdispatch release
2019-05-20 14:54:46 +01:00
Frederik Seiffert
43c5ccaef6 Add compatibility for Swift corelibs libdispatch release
This updates the libdispatch runloop integration to be compatible with the Swift corelibs libdispatch release:
https://github.com/apple/swift-corelibs-libdispatch

In that release, the main queue handle and drain functions have been renamed with a "_4CF" (for CoreFoundation) suffix and have moved to private.h, so we now check for the existance of this header and function names.

Note that libdispatch must be compiled with INSTALL_PRIVATE_HEADERS=YES.

Also fixes the checks for the HAVE_LIBDISPATCH_RUNLOOP define (was inverted) and ensures that both the handle and drain functions are available.
2019-05-10 16:17:53 +02:00
Frederik Seiffert
8a5756cf13 Fixed libdispatch configuration switch.
Passing --enable-libdispatch was incorrectly disabling libdispatch.
2019-05-07 16:05:17 +02:00
fsb4000
3f305d6973 Decrease ICU version requirements to 49 2019-03-29 17:14:11 +07:00
Ivan Vučica
a2938b3104 configure.ac: Require ICU 5.0.
ChangeLog: Use tabs in the previous entry.
2019-01-06 20:45:31 +00:00
Hugh McMaster
f54ac5ce84 Use pkg-config to detect icu 2018-12-31 22:47:29 +11:00
Riccardo Mottola
e87f59a429 When checking for pthread_np.h include pthread.h if available or it may fail (e.g. OpenBSD) 2018-08-08 11:29:05 +02:00
Richard Frith-Macdonald
053862f652 We now use -fobjc-runtime=gcc to target the gnu/gcc runtime ABI 2018-07-10 10:49:31 +01:00
Riccardo Mottola
6f7e480913 Detect if platform is missing spin locks and provide an dummy implementation. Emit warning during compilation and runtime (in debug) 2018-04-23 20:37:28 +02:00
Wolfgang Lux
9f1fce3612 Include pkg.m4 which was missing from configure.ac leading to potential configuration failures 2018-01-15 11:59:30 +01:00
Richard Frith-Macdonald
5bdcd3c698 fix recent pkg-config change so we still work with older versions 2018-01-15 10:45:16 +00:00
Richard Frith-Macdonald
925f1dd5e1 Add Yavor Doganov's patches for tests and config. Add fixes for GSXML
validation of xml documents
2018-01-14 12:30:13 +00:00
Richard Frith-Macdonald
38fc2bde82 Remove --enable-objc-nonfragile-abi because David says it's obsolete and
doesn't work as expected.
2017-12-20 13:25:41 +00:00
Niels Grewe
f9540e172e Improve support for loading encrypted private keys
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40139 72102866-910b-0410-8b05-ffd578937521
2016-10-11 11:59:04 +00:00
Richard Frith-MacDonald
33ed35331b Various configure/build tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@40062 72102866-910b-0410-8b05-ffd578937521
2016-08-19 12:20:24 +00:00
Richard Frith-MacDonald
39cc09e2ca Sort algorithms should always be built, and be selectable at runtime
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39998 72102866-910b-0410-8b05-ffd578937521
2016-07-15 11:30:07 +00:00
Richard Frith-MacDonald
5b360d8a83 Remove the obsolete openssl bundle code.
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39937 72102866-910b-0410-8b05-ffd578937521
2016-06-28 10:40:33 +00:00
Richard Frith-MacDonald
ecfbd24d8e Changed to restructure subdirectory layout for binaries and system dependent
resources in a non-flattened installation.  First step towards seamless
Debian multiarch support.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39918 72102866-910b-0410-8b05-ffd578937521
2016-06-25 07:12:41 +00:00
Richard Frith-MacDonald
f5288bdf6b Simplify bfd code
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39763 72102866-910b-0410-8b05-ffd578937521
2016-05-14 14:47:43 +00:00
Niels Grewe
c0282c4073 If libdispatch provides integration hooks for the main queue
(i.e. nickhutchinson/libdispatch), use these to drain the main
queue using the main run loop.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39617 72102866-910b-0410-8b05-ffd578937521
2016-04-04 08:17:08 +00:00
Richard Frith-MacDonald
d40d219015 removal of garbage collection
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39608 72102866-910b-0410-8b05-ffd578937521
2016-03-25 11:15:28 +00:00
Richard Frith-MacDonald
6e18501b77 stack trace tweaks
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39529 72102866-910b-0410-8b05-ffd578937521
2016-03-11 16:48:31 +00:00
Richard Frith-MacDonald
e2763be5fa Add some checks that the runtime supports features we need for ng
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39443 72102866-910b-0410-8b05-ffd578937521
2016-03-02 14:42:43 +00:00
Richard Frith-MacDonald
8fe8af2d57 Implement versdion check for new ICU code
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39424 72102866-910b-0410-8b05-ffd578937521
2016-02-29 10:05:36 +00:00
Richard Frith-MacDonald
4851131f49 Update to check for minimum icu version
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@39403 72102866-910b-0410-8b05-ffd578937521
2016-02-20 17:30:11 +00:00
Richard Frith-MacDonald
11aac47960 fixup config test for older clang
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38990 72102866-910b-0410-8b05-ffd578937521
2015-09-16 13:21:21 +00:00
Richard Frith-MacDonald
252bbf1ba2 check flags used at make configure time
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38967 72102866-910b-0410-8b05-ffd578937521
2015-09-03 14:23:20 +00:00
Richard Frith-MacDonald
0f44f60d7c Check that LDFLAGS environment variable is consistent with the one used for make
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38962 72102866-910b-0410-8b05-ffd578937521
2015-08-31 05:39:23 +00:00
Richard Frith-MacDonald
78c05bfc01 Avoid compiler warnrings
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38888 72102866-910b-0410-8b05-ffd578937521
2015-08-16 10:42:48 +00:00
Richard Frith-MacDonald
5c4c80a8df Compiler consistency fixup
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38886 72102866-910b-0410-8b05-ffd578937521
2015-08-16 10:04:46 +00:00
Richard Frith-MacDonald
869d6ad439 configuration updates
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38720 72102866-910b-0410-8b05-ffd578937521
2015-06-30 08:28:00 +00:00
Richard Frith-MacDonald
ddb219cb99 add next gen (ng) runtime library designation for libobjc2 plus latest compiler
options


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38532 72102866-910b-0410-8b05-ffd578937521
2015-05-24 19:32:18 +00:00
Richard Frith-MacDonald
0a526fad04 minor autoconf tweak
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38491 72102866-910b-0410-8b05-ffd578937521
2015-05-13 10:57:56 +00:00
Wolfgang Lux
8d21c4cdbb Fix comment syntax in configure script
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38446 72102866-910b-0410-8b05-ffd578937521
2015-04-01 08:44:17 +00:00
Wolfgang Lux
6dbc805c58 Use standard operator in test command
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38445 72102866-910b-0410-8b05-ffd578937521
2015-04-01 08:29:19 +00:00
Richard Frith-MacDonald
a79dd60102 Impement test for main thread on linux
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38443 72102866-910b-0410-8b05-ffd578937521
2015-03-31 09:45:40 +00:00
Richard Frith-MacDonald
8a265fe615 Improve thread ID and name code to match OSX. Add some initial getaddrinfo code
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38442 72102866-910b-0410-8b05-ffd578937521
2015-03-31 09:14:01 +00:00
Richard Frith-MacDonald
022c5be3eb NSLog updates for consistency with latest OSX
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38370 72102866-910b-0410-8b05-ffd578937521
2015-03-01 19:37:28 +00:00
Wolfgang Lux
0ef7e6d9f0 Restore documentation changes lost during merge
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38267 72102866-910b-0410-8b05-ffd578937521
2014-12-28 13:32:13 +00:00
Wolfgang Lux
becd0e8a83 Fix detection of the proper pthread_setname_np and pthread_set_name_np
variants on FreeBSD, OpenBSD and Darwin.


git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38266 72102866-910b-0410-8b05-ffd578937521
2014-12-28 13:19:19 +00:00
Richard Frith-MacDonald
076f856b01 use round braces instead of curly, and fix missing comma
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38260 72102866-910b-0410-8b05-ffd578937521
2014-12-24 16:29:57 +00:00
Richard Frith-MacDonald
6d14b42b1c attempt fix for pthread_set_name_np() not providing a success status
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38259 72102866-910b-0410-8b05-ffd578937521
2014-12-24 14:00:36 +00:00
Richard Frith-MacDonald
1192760742 change tests for pthread_setname_np
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38221 72102866-910b-0410-8b05-ffd578937521
2014-12-02 06:52:55 +00:00
Richard Frith-MacDonald
e6ed085192 integrate patch from johannes@brilliantservice.co.jp
git-svn-id: svn+ssh://svn.gna.org/svn/gnustep/libs/base/trunk@38212 72102866-910b-0410-8b05-ffd578937521
2014-11-28 18:38:24 +00:00