ObjFW  Timeline

50 events by user js occurring around 2021-07-10 09:52:11.

More ↑
2021-09-04
14:34
Merge trunk into 1.0 branch check-in: 2a8507370a user: js tags: 1.0
14:30
Set lib version to 0.0 until we have a stable ABI check-in: a065c1add8 user: js tags: trunk
10:25
Update buildsys check-in: 68a0ba29be user: js tags: trunk
08:30
configure: Re-enable integrated assembler on x86 check-in: c003df4a8d user: js tags: trunk
2021-09-03
01:06
objfw.spec: Improve compability with openSUSE check-in: ae5cb371c3 user: js tags: trunk
2021-09-02
19:07
objfw.spec: Install LICENSE files check-in: dbd14f4ac5 user: js tags: trunk
18:52
Merge trunk into 1.0 branch check-in: fb7b9709b8 user: js tags: 1.0
17:49
runtime: Don't use asm for PowerPC64 ELF v2 ABI check-in: 98b8a4cc1d user: js tags: trunk
17:21
objfw.spec: Disable rpath check-in: df2fab63dd user: js tags: trunk
17:06
Update buildsys check-in: f310e7dd1f user: js tags: trunk
2021-08-31
23:43
tests: Work around a warning in new Clang versions check-in: 658a499d4e user: js tags: trunk
21:36
Add initial objfw.spec check-in: 7aaddd545b user: js tags: trunk
2021-08-14
20:44
configure: Extend check for broken -Wdocumentation check-in: fee9c3ebb8 user: js tags: trunk
2021-08-09
16:41
OFStreamTests: Work around Apple GCC 4.0.1 bug check-in: 826147d4e9 user: js tags: trunk
16:03
configure: Work around autoconf 2.61 bug check-in: aeedc99550 user: js tags: trunk
2021-08-08
01:08
Fix OFData/OFString documentation for freeWhenDone check-in: 591f1da073 user: js tags: trunk
01:02
OFUTF8String: Fix leak in case of exception check-in: 3c21284980 user: js tags: trunk
2021-08-07
23:31
Make autorelease.m work with old Apple runtimes check-in: f04894828e user: js tags: trunk
23:25
Make Apple GCC 4.0.1 happy again check-in: 176e97bd4d user: js tags: trunk
22:51
OFSystemInfo: Use if (@available(...)) check-in: f372f73c49 user: js tags: trunk
16:45 Closed ticket [15bcaa7d13]: Add helper functions for time intervals plus 4 other changes artifact: a84bd97cc4 user: js
2021-07-25
17:38
Merge trunk into branch "amiga-library" check-in: 9e80543412 user: js tags: amiga-library
17:18
OFTLSKey.m: Fix typo check-in: 48a536b2a4 user: js tags: trunk
2021-07-13
17:52
Change version from 1.1-dev to 1.1 check-in: 8fb4f1bfce user: js tags: trunk
2021-07-10
09:52 Edit reply: Porting Obj-FW to a Hobby OS artifact: 6ce3774ad2 user: js

Interesting project! I like the themes 🙂. Side note, though: Why are there only ZIP files of the source checked into the Git repo?

On topic: ObjFW should be a perfect fit for this, given that it supports a large range of very different OSes already, some of them having what can barely qualify as an excuse for a libc 😉. As well as running on embedded.

To get started, I would recommend to run configure with something like this:

./configure --host=x86_64-pc-unknown-elf --disable-shared --disable-threads --disable-sockets --disable-files
(Replace --host=x86_64-pc-unknown-elf with whatever triple your cross-compiler uses)

This should give you an ObjFW that requires no functionality from the OS and only a somewhat working libc for memory allocation etc. If you run into any problems with basically all features disabled, please provide compilation logs / describe errors, and I can see to make ObjFW not use what you are currently missing. It's possible that it currently requires something that all platforms happened to have in common by pure chance, though I think that's quite unlikely.

The next step then is probably that you want files, as those also give you the standard input and outputs. ObjFW currently assumes that there is open(), read(), write() and close() for this, though if it's helpful, I could also let it fall back to fopen(), fread(), fwrite() and fclose(). But so far, I have not found a system that only has the f* variant, despite the f* ones being C99 and the ones without f only being POSIX.

I suppose sockets aren't supported by your OS, so that probably should be kept disabled. Threads either use an OS-specific API or, if it does not know about an OS-specific API, checks if the OS supports pthreads. Shared library support just requires your OS to support, well, shared libraries (it assumes you are on ELF and use .so files if it does not know the OS).

09:49 Reply: Porting Obj-FW to a Hobby OS artifact: 1b2e2b81f9 user: js

Interesting project! I like the themes 🙂. Side note, though: Why are there only ZIP files of the source checked into the Git repo?

On topic: ObjFW should be a perfect fit for this, given that it supports a large range of very different OSes already, some of them having what can barely qualify as an excuse for a libc 😉. As well as running on embedded.

To get started, I would recommend to run configure with something like this:

./configure --host=x86_64-pc-unknown-elf --disable-shared --disable-threads --disable-sockets --disable-files
(Replace --host=x86_64-pc-unknown-elf with whatever triple your cross-compiler uses)

This should give you an ObjFW that requires no functionality from the OS and only a somewhat working libc for memory allocation etc. If you run into any problems with basically all features disabled, please provide compilation logs / describe errors, and I can see to make ObjFW not use what you are currently missing. It's possible that it currently requires something that all platforms happened to have in common by pure chance, though I think that's quite unlikely.

The next step then is probably that you want files, as those also give you the standard input and outputs. ObjFW currently assumes that there is open(),read(),write()andclose()for this, though if it's helpful, I could also let it fall back tofopen(),fread(),fwrite()andfclose(). But so far, I have not found a system that only has thef*variant, despite thef*ones being C99 and the ones withoutf` only being POSIX.

I suppose sockets aren't supported by your OS, so that probably should be kept disabled. Threads either use an OS-specific API or, if it does not know about an OS-specific API, checks if the OS supports pthreads. Shared library support just requires your OS to support, well, shared libraries (it assumes you are on ELF and use .so files if it does not know the OS).

2021-07-09
21:23
ofhash: Update usage to reflect changed reality check-in: 405f056137 user: js tags: trunk
2021-07-04
16:39 New ticket [b6496181dc] ofarc: Support extracting all types in TAR files. artifact: f17f3f7eee user: js
16:36 New ticket [3dd59df85a] Support symlinks in LHA files. artifact: 457e15f509 user: js
16:31
ofarc: Fix adding symlinks to directories check-in: ecb2dfa803 user: js tags: trunk
16:29
Fix symlink handling in subpathsOfDirectoryAtPath: check-in: ae44655c61 user: js tags: trunk
16:19
ofarc: Fix creating LHA files with directories check-in: d6bb16aa3b user: js tags: trunk
11:54
ofarc: Add support for adding files recursively check-in: e57ecc4311 user: js tags: trunk
2021-07-03
13:56
Add -[OFFileManager subpathsOfDirectoryAtPath:] check-in: 6985da09c8 user: js tags: trunk
2021-05-24
22:37
OFStream.h: Remove double nonatomic check-in: 4d656c340e user: js tags: trunk
22:27
runtime: Add lookup-asm-powerpc64-elf.S check-in: 05d65abf96 user: js tags: trunk
2021-05-13
20:13
Merge trunk into branch "amiga-library" check-in: 08361ff875 user: js tags: amiga-library
20:07
tests: Use +[OFSystem temporaryDirectoryPath] check-in: b30979ffc9 user: js tags: trunk
20:04
OFSystemInfo: Exclude \0 returned by confstr() check-in: f0528dda03 user: js tags: trunk
19:56
Add +[OFSystemInfo temporaryDirectoryPath] check-in: 7227005db8 user: js tags: trunk
15:55
OFBlock.h: Add missing nullability check-in: 8f918a505b user: js tags: trunk
15:44
OFDNSResourceRecord.h: Document C functions check-in: da6a89fa23 user: js tags: trunk
15:32
Move OFRunLoop constants to a separate file check-in: 15662dd417 user: js tags: trunk
15:31
Move OFFileManager constants to a separate file check-in: 2bdf205dfd user: js tags: trunk
15:26
Rename library.xml to amiga-library.xml check-in: f5f489641f user: js tags: trunk
15:22
OFStrPTime.h: Add missing nullability check-in: 2c53019def user: js tags: trunk
15:20
Add OFLogV() check-in: 323ec38f36 user: js tags: trunk
15:13
OFList.h: Add missing "extern" and nullability check-in: bfde3fa05c user: js tags: trunk
2021-05-09
18:32 Ticket [4c4b0ddef1] Fix sockets on AmigaOS status still Open with 3 other changes artifact: 20eded59f3 user: js
18:11
runtime: Fix lookup for systems without ASM lookup check-in: ed10c3b404 user: js tags: trunk
More ↓