I rule this software but there's a lot of bugs in the way

thats why I need to always drink and write
This commit is contained in:
2026-07-05 15:21:42 +02:00
parent 9eae8e8fd2
commit cb862520de
5 changed files with 22 additions and 8 deletions

View File

@@ -1,25 +1,36 @@
CC=gcc
CXX=g++
AR=ar
CFLAGS=-Wall -Wextra
LD_FLAGS=
TARGET=libcarbon.so
BASE_PATH=./src/main/org/neoflock/NeoNucleus
JAVA_HOME=/usr/lib/jvm/java-25-openjdk/
BASE_NPATH=./src/native/
BASE_NPATH=./src/native
JAVA_SRCS = $(wildcard ./src/main/org/neoflock/NeoNucleus/*.java)
JAVA_CLASSES = $(wildcard ./src/main/org/neoflock/NeoNucleus/*.class)
TLA_PATH=./src/tla-static
NN_PATH=NeoNucleus/src
NN_FLAGS=-std=gnu11 -O2 -fPIC -I$(TLA_PATH)/foreign/lua54
NN_SRC=$(NN_PATH)/neonucleus.c $(NN_PATH)/ncomplib.c $(NN_PATH)/luaarch.c
NN_OBJS=neonucleus.o ncomplib.o luaarch.o
CPP_SRCS = $(wildcard ${BASE_NPATH}/*.cpp)
OBJS = $(CPP_SRCS:.cpp=.o)
NATIVE_NAME=main
all: java $(TARGET)
$(TARGET): $(OBJS)
src/native/libneonucleus.a: $(NN_SRC)
$(CC) -c $(NN_SRC) $(NN_FLAGS)
$(AR) rcs src/native/libneonucleus.a $(NN_OBJS)
$(TARGET): $(OBJS) src/native/libneonucleus.a
$(CXX) -shared -o ${BASE_NPATH}/$(TARGET) \
$(OBJS) ${BASE_NPATH}/libneonucleus.a $(TLA_PATH)/libtla.a $(TLA_PATH)/foreign/lua54/liblua.a -lc $(LD_FLAGS)
$(OBJS) src/native/libneonucleus.a $(TLA_PATH)/foreign/lua54/liblua.a -lc $(LD_FLAGS)
%.o: %.cpp
$(CXX) -c -fPIC -I${JAVA_HOME}/include -I${JAVA_HOME}/include/linux $(CFLAGS) \
$< -o $@
@@ -31,7 +42,8 @@ run: all
cd src/main && java -cp . -Djava.library.path=${PWD}/${BASE_NPATH} -Xcheck:jni org.neoflock.NeoNucleus.NativeBindings
clean:
rm nn.o
rm ${JAVA_CLASSES}
rm $(OBJS) $(BASE_NPATH)/$(TARGET)
.PHONY: all clean
.PHONY: all clean