18 CPPFLAGS
= $(EXTRA_CPPFLAGS
) -Isljit_src
19 CFLAGS
+= -O2
-Wall
-Wextra
-Wconversion
-Wsign-compare
-Werror
20 REGEX_CFLAGS
+= $(CFLAGS
) -fshort-wchar
21 LDFLAGS
= $(EXTRA_LDFLAGS
)
27 EXAMPLEDIR
= doc
/tutorial
29 TARGET
= $(BINDIR
)/sljit_test
$(BINDIR
)/regex_test
30 EXAMPLE_TARGET
= $(BINDIR
)/func_call
$(BINDIR
)/first_program
$(BINDIR
)/branch
$(BINDIR
)/loop
$(BINDIR
)/array_access
$(BINDIR
)/func_call
$(BINDIR
)/struct_access
$(BINDIR
)/temp_var
$(BINDIR
)/brainfuck
32 SLJIT_HEADERS
= $(SRCDIR
)/sljitLir.h
$(SRCDIR
)/sljitConfig.h
$(SRCDIR
)/sljitConfigInternal.h
34 SLJIT_LIR_FILES
= $(SRCDIR
)/sljitLir.c
$(SRCDIR
)/sljitUtils.c \
35 $(SRCDIR
)/sljitExecAllocator.c
$(SRCDIR
)/sljitProtExecAllocator.c
$(SRCDIR
)/sljitWXExecAllocator.c \
36 $(SRCDIR
)/sljitNativeARM_32.c
$(SRCDIR
)/sljitNativeARM_T2_32.c
$(SRCDIR
)/sljitNativeARM_64.c \
37 $(SRCDIR
)/sljitNativeMIPS_common.c
$(SRCDIR
)/sljitNativeMIPS_32.c
$(SRCDIR
)/sljitNativeMIPS_64.c \
38 $(SRCDIR
)/sljitNativePPC_common.c
$(SRCDIR
)/sljitNativePPC_32.c
$(SRCDIR
)/sljitNativePPC_64.c \
39 $(SRCDIR
)/sljitNativeRISCV_common.c
$(SRCDIR
)/sljitNativeRISCV_32.c
$(SRCDIR
)/sljitNativeRISCV_64.c \
40 $(SRCDIR
)/sljitNativeS390X.c \
41 $(SRCDIR
)/sljitNativeX86_common.c
$(SRCDIR
)/sljitNativeX86_32.c
$(SRCDIR
)/sljitNativeX86_64.c
43 .PHONY
: all clean examples
48 -$(RM
) $(BINDIR
)/*.o
$(BINDIR
)/sljit_test
$(BINDIR
)/regex_test
$(EXAMPLE_TARGET
)
54 $(BINDIR
)/sljitLir.o
: $(BINDIR
)/.keep
$(SLJIT_LIR_FILES
) $(SLJIT_HEADERS
)
55 $(CC
) $(CPPFLAGS
) $(CFLAGS
) -c
-o
$@
$(SRCDIR
)/sljitLir.c
57 $(BINDIR
)/sljitMain.o
: $(TESTDIR
)/sljitMain.c
$(BINDIR
)/.keep
$(SLJIT_HEADERS
)
58 $(CC
) $(CPPFLAGS
) $(CFLAGS
) -c
-o
$@
$(TESTDIR
)/sljitMain.c
60 $(BINDIR
)/regexMain.o
: $(REGEXDIR
)/regexMain.c
$(BINDIR
)/.keep
$(SLJIT_HEADERS
)
61 $(CC
) $(CPPFLAGS
) $(REGEX_CFLAGS
) -c
-o
$@
$(REGEXDIR
)/regexMain.c
63 $(BINDIR
)/regexJIT.o
: $(REGEXDIR
)/regexJIT.c
$(BINDIR
)/.keep
$(SLJIT_HEADERS
) $(REGEXDIR
)/regexJIT.h
64 $(CC
) $(CPPFLAGS
) $(REGEX_CFLAGS
) -c
-o
$@
$(REGEXDIR
)/regexJIT.c
66 $(BINDIR
)/sljit_test
: $(BINDIR
)/.keep
$(BINDIR
)/sljitMain.o
$(TESTDIR
)/sljitTest.c
$(SRCDIR
)/sljitLir.c
$(SLJIT_LIR_FILES
) $(SLJIT_HEADERS
) $(TESTDIR
)/sljitConfigPre.h
$(TESTDIR
)/sljitConfigPost.h
67 $(CC
) $(CPPFLAGS
) -DSLJIT_HAVE_CONFIG_PRE
=1 -I
$(TESTDIR
) $(CFLAGS
) $(LDFLAGS
) $(BINDIR
)/sljitMain.o
$(TESTDIR
)/sljitTest.c
$(SRCDIR
)/sljitLir.c
-o
$@
-lm
-lpthread
69 $(BINDIR
)/regex_test
: $(BINDIR
)/.keep
$(BINDIR
)/regexMain.o
$(BINDIR
)/regexJIT.o
$(BINDIR
)/sljitLir.o
70 $(CC
) $(CFLAGS
) $(LDFLAGS
) $(BINDIR
)/regexMain.o
$(BINDIR
)/regexJIT.o
$(BINDIR
)/sljitLir.o
-o
$@
-lm
-lpthread
72 examples
: $(EXAMPLE_TARGET
)
74 $(BINDIR
)/first_program
: $(EXAMPLEDIR
)/first_program.c
$(BINDIR
)/.keep
$(BINDIR
)/sljitLir.o
75 $(CC
) $(CPPFLAGS
) $(LDFLAGS
) $(EXAMPLEDIR
)/first_program.c
$(BINDIR
)/sljitLir.o
-o
$@
-lm
-lpthread
77 $(BINDIR
)/branch
: $(EXAMPLEDIR
)/branch.c
$(BINDIR
)/.keep
$(BINDIR
)/sljitLir.o
78 $(CC
) $(CPPFLAGS
) $(LDFLAGS
) $(EXAMPLEDIR
)/branch.c
$(BINDIR
)/sljitLir.o
-o
$@
-lm
-lpthread
80 $(BINDIR
)/loop
: $(EXAMPLEDIR
)/loop.c
$(BINDIR
)/.keep
$(BINDIR
)/sljitLir.o
81 $(CC
) $(CPPFLAGS
) $(LDFLAGS
) $(EXAMPLEDIR
)/loop.c
$(BINDIR
)/sljitLir.o
-o
$@
-lm
-lpthread
83 $(BINDIR
)/array_access
: $(EXAMPLEDIR
)/array_access.c
$(BINDIR
)/.keep
$(BINDIR
)/sljitLir.o
84 $(CC
) $(CPPFLAGS
) $(LDFLAGS
) $(EXAMPLEDIR
)/array_access.c
$(BINDIR
)/sljitLir.o
-o
$@
-lm
-lpthread
86 $(BINDIR
)/func_call
: $(EXAMPLEDIR
)/func_call.c
$(BINDIR
)/.keep
$(BINDIR
)/sljitLir.o
87 $(CC
) $(CPPFLAGS
) $(LDFLAGS
) $(EXAMPLEDIR
)/func_call.c
$(BINDIR
)/sljitLir.o
-o
$@
-lm
-lpthread
89 $(BINDIR
)/struct_access
: $(EXAMPLEDIR
)/struct_access.c
$(BINDIR
)/.keep
$(BINDIR
)/sljitLir.o
90 $(CC
) $(CPPFLAGS
) $(LDFLAGS
) $(EXAMPLEDIR
)/struct_access.c
$(BINDIR
)/sljitLir.o
-o
$@
-lm
-lpthread
92 $(BINDIR
)/temp_var
: $(EXAMPLEDIR
)/temp_var.c
$(BINDIR
)/.keep
$(BINDIR
)/sljitLir.o
93 $(CC
) $(CPPFLAGS
) $(LDFLAGS
) $(EXAMPLEDIR
)/temp_var.c
$(BINDIR
)/sljitLir.o
-o
$@
-lm
-lpthread
95 $(BINDIR
)/brainfuck
: $(EXAMPLEDIR
)/brainfuck.c
$(BINDIR
)/.keep
$(BINDIR
)/sljitLir.o
96 $(CC
) $(CPPFLAGS
) $(LDFLAGS
) $(EXAMPLEDIR
)/brainfuck.c
$(BINDIR
)/sljitLir.o
-o
$@
-lm
-lpthread