libsheepy

C lib for handling text files, strings and json like data structure with an object oriented system
git clone https://spartatek.se/git/libsheepy.git
Log | Files | Refs | README | LICENSE

commit 99fc598068825661fa07f5a1b6e9c63df0d21c9f
parent df1f85b6edb655a5b922bbd82ef6e4cee9848940
Author: Remy Noulin <loader2x@gmail.com>
Date:   Tue,  9 Jul 2019 16:17:29 +0200

add build command for musl libc

README.md               | 10 ++++++++++
buildMusl.sh            | 30 ++++++++++++++++++++++++++++++
example/README.template | 10 ++++++++++
3 files changed, 50 insertions(+)

Diffstat:
MREADME.md | 10++++++++++
AbuildMusl.sh | 30++++++++++++++++++++++++++++++
Mexample/README.template | 10++++++++++
3 files changed, 50 insertions(+), 0 deletions(-)

diff --git a/README.md b/README.md @@ -128,6 +128,16 @@ The compiled lib and headers are in release/ after `make all` or `build.sh` succ The lib is installed in `/usr/local/` and in `/data/data/com.termux/files/usr/` in Termux +On systems using glibc, it is possible to link against the musl libc (musl libc must be installed in the system, typically on /usr/local/) by running: + +``` +./clean.sh +./buildMusl.sh +./install.sh +``` + +For the musl libc setup in sheepy, see [README.md](https://spartatek.se/r/sheepy/file/README.md.html) in the sheepy repo + # Examples This code shows some features of the smallArray and smallJson classes: diff --git a/buildMusl.sh b/buildMusl.sh @@ -0,0 +1,30 @@ +CC="gcc -ggdb -std=gnu99 -fPIC -pipe -mrdrnd -pthread -specs /usr/local/musl/lib/musl-gcc.specs -DMUSL_LIBC=1" +STATIC="ar -cvq" +DYNAMIC="-shared" + +echo "Compiling C files" +$CC -c release/libsheepy.c +$CC -c release/libsheepySmall.c +$CC -c src/json/libsheepyObject.c +$CC -c src/json/libsheepyCSmallJson.c +$CC -c src/json/libsheepyCUndefined.c +$CC -c src/json/libsheepyCSmallDict.c +$CC -c src/json/libsheepyCSmallArray.c +$CC -c src/json/libsheepyCSmallBytes.c +$CC -c src/json/libsheepyCSmallBool.c +$CC -c src/json/libsheepyCSmallContainer.c +$CC -c src/json/libsheepyCSmallDouble.c +$CC -c src/json/libsheepyCSmallInt.c +$CC -c src/json/libsheepyCSmallString.c +$CC -c src/json/laxjson.c +$CC -c src/json/ymlParser.c +$CC -c src/json/ymlApi.c +$CC -c src/json/ymlScanner.c +$CC -c src/json/ymlReader.c +$CC -c src/tpool.c + +echo "Building static lib" +$STATIC release/libsheepy.a libsheepy.o libsheepySmall.o libsheepyObject.o libsheepyCSmallJson.o libsheepyCUndefined.o libsheepyCSmallDict.o libsheepyCSmallArray.o libsheepyCSmallBytes.o libsheepyCSmallBool.o libsheepyCSmallContainer.o libsheepyCSmallDouble.o libsheepyCSmallInt.o libsheepyCSmallString.o laxjson.o ymlParser.o ymlApi.o ymlScanner.o ymlReader.o tpool.o + +echo "Building dynamic lib" +$CC $DYNAMIC -o release/libsheepy.so release/libsheepy.c release/libsheepySmall.c src/json/libsheepyObject.c src/json/libsheepyCSmallJson.c src/json/libsheepyCUndefined.c src/json/libsheepyCSmallDict.c src/json/libsheepyCSmallArray.c src/json/libsheepyCSmallBytes.c src/json/libsheepyCSmallBool.c src/json/libsheepyCSmallContainer.c src/json/libsheepyCSmallDouble.c src/json/libsheepyCSmallInt.c src/json/libsheepyCSmallString.c src/json/laxjson.c src/json/ymlParser.c src/json/ymlApi.c src/json/ymlScanner.c src/json/ymlReader.c src/tpool.c diff --git a/example/README.template b/example/README.template @@ -128,6 +128,16 @@ The compiled lib and headers are in release/ after `make all` or `build.sh` succ The lib is installed in `/usr/local/` and in `/data/data/com.termux/files/usr/` in Termux +On systems using glibc, it is possible to link against the musl libc (musl libc must be installed in the system, typically on /usr/local/) by running: + +``` +./clean.sh +./buildMusl.sh +./install.sh +``` + +For the musl libc setup in sheepy, see [README.md](https://spartatek.se/r/sheepy/file/README.md.html) in the sheepy repo + # Examples This code shows some features of the smallArray and smallJson classes: