diff --git a/Makefile b/Makefile index f82352da..8799c822 100644 --- a/Makefile +++ b/Makefile @@ -29,7 +29,7 @@ BINDIR=$(PREFIX)/bin # TODO - when api is finalized, only export public symbols instead of using rdynamic # which exports all symbols. -CFLAGS=-std=c99 -Wall -Wextra -Isrc/include -rdynamic -s -O2 +CFLAGS=-std=c99 -Wall -Wextra -Isrc/include -rdynamic -O2 CLIBS=-lm -ldl PREFIX=/usr/local DST_TARGET=dst @@ -81,17 +81,13 @@ DST_ALL_SOURCES=$(DST_ASM_SOURCES) \ $(DST_MAINCLIENT_SOURCES) \ $(DST_PARSER_SOURCES) -$(DST_TARGET): $(DST_ALL_SOURCES) $(DST_ALL_HEADERS) - $(CC) $(CFLAGS) -o $(DST_TARGET) $(DST_ALL_SOURCES) $(CLIBS) +DST_ALL_OBJECTS=$(patsubst %.c,%.o,$(DST_ALL_SOURCES)) -####################### -##### C Libraries ##### -####################### +%.o: %.c $(DST_ALL_HEADERS) + $(CC) $(CFLAGS) -o $@ -c $< -# DST_C_LIBS=$(addprefix libs/,testlib.so) - -%.so: %.c $(DST_HEADERS) - $(CC) $(CFLAGS) -DDST_LIB -shared -undefined dynamic_lookup -o $@ $< +$(DST_TARGET): $(DST_ALL_OBJECTS) + $(CC) $(CFLAGS) -o $(DST_TARGET) $(DST_ALL_OBJECTS) $(CLIBS) ################### ##### Testing ##### diff --git a/src/mainclient/main.c b/src/mainclient/main.c index 7ef104c2..47bcafeb 100644 --- a/src/mainclient/main.c +++ b/src/mainclient/main.c @@ -36,13 +36,11 @@ int main(int argc, char **argv) { env = dst_stl_env(); dst_gcroot(dst_wrap_table(env)); - /* Create process tuple */ + /* Create args tuple */ args = dst_array(argc); for (i = 0; i < argc; i++) { dst_array_push(args, dst_cstringv(argv[i])); } - - /* Allow access to runtime argument */ dst_env_def(env, "args", dst_wrap_array(args)); /* Expose line getter */