mulle-objc / MulleObjC

πŸ’Ž A collection of Objective-C root classes for mulle-objc
https://www.mulle-kybernetik.com/mulle-objc
Other
51 stars 6 forks source link
classes mulle-objc nsobject

MulleObjC

πŸ’Ž A collection of Objective-C root classes for mulle-objc

MulleObjC supplies the most basic runtime components like NSObject or NSThread to build a foundation on top of it. MulleObjC depends on standard C libraries only and for instance not on <unistd.h>.

Release Version Release Notes
Mulle kybernetiK tag Build Status RELEASENOTES

API

Classes

Protocol and Protocolclasses

Functions

It does all the interfacing with the mulle-objc runtime. Any library code above MulleObjC ideally, should not be using the mulle-objc runtime directly. Creating a foundation on top of mulle-objc without using MulleObjC is a foolhardy endeavor IMO.

MulleObjC must be compiled with the mulle-clang compiler, or a compiler which supports the metaABI required for the mulle-objc runtime.

You are here

Overview

Requirements

Requirement Release Version Description
mulle-objc-runtime Mulle kybernetiK tag Build Status ⏩ A fast, portable Objective-C runtime written 100% in C11
mulle-objc-debug Mulle kybernetiK tag Build Status 🐞 Debug support for the mulle-objc-runtime
mulle-objc-cc Mulle kybernetiK tag Build Status ⏩ make mulle-clang the default Objective-C compiler
mulle-objc-list Mulle kybernetiK tag Build Status πŸ“’ Lists mulle-objc runtime information contained in executables.

Add

Add as an individual component

Use mulle-sde to add MulleObjC to your project:

mulle-sde add github:mulle-objc/MulleObjC

To only add the sources of MulleObjC with dependency sources use clib:

clib install --out src/mulle-objc mulle-objc/MulleObjC

Add -isystem src/mulle-objc to your CFLAGS and compile all the sources that were downloaded with your project.

Install

Install with mulle-sde

Use mulle-sde to build and install MulleObjC and all dependencies:

mulle-sde install --prefix /usr/local \
   https://github.com/mulle-objc/MulleObjC/archive/latest.tar.gz

Manual Installation

Install the Requirements and then install MulleObjC with cmake:

cmake -B build \
      -DCMAKE_INSTALL_PREFIX=/usr/local \
      -DCMAKE_PREFIX_PATH=/usr/local \
      -DCMAKE_BUILD_TYPE=Release &&
cmake --build build --config Release &&
cmake --install build --config Release

Author

Nat! for Mulle kybernetiK