2022-02-15 11:05:11 +00:00
|
|
|
COMPILER = ocamlopt
|
|
|
|
EXT = .cmx
|
|
|
|
AEXT = .cmxa
|
|
|
|
|
|
|
|
STANDARD_FLAGS = -nopervasives -O3
|
|
|
|
STANDARD_COMPILE = $(COMPILER) $(STANDARD_FLAGS) -c
|
|
|
|
STANDARD_COMPILE_WITH_C = $(COMPILER) -ccopt -fPIC -c
|
2022-01-20 09:07:42 +00:00
|
|
|
LIB_NAME = library
|
2022-01-05 06:51:48 +00:00
|
|
|
|
2022-02-15 11:05:11 +00:00
|
|
|
COMPILED_FILES = general$(EXT) fatal$(EXT) int$(EXT) float$(EXT) option$(EXT) stack$(EXT) list$(EXT) map$(EXT) queue$(EXT) set$(EXT) tree$(EXT) string$(EXT) char$(EXT) bool$(EXT) console$(EXT) file$(EXT)
|
|
|
|
C_LIBS_FOR_LINKING = -cclib -lconsole_external -cclib -lfile_external
|
|
|
|
|
2022-01-20 09:07:42 +00:00
|
|
|
build:
|
2022-02-04 03:06:51 +00:00
|
|
|
make clean
|
2021-12-16 10:01:08 +00:00
|
|
|
|
2022-02-15 11:05:11 +00:00
|
|
|
$(COMPILER) $(STANDARD_FLAGS) -c general.mli general.ml
|
2021-12-16 10:01:08 +00:00
|
|
|
|
2022-01-30 00:55:42 +00:00
|
|
|
$(STANDARD_COMPILE) fatal.mli fatal.ml
|
2022-01-05 06:51:48 +00:00
|
|
|
$(STANDARD_COMPILE) int.mli int.ml
|
|
|
|
$(STANDARD_COMPILE) float.mli float.ml
|
|
|
|
$(STANDARD_COMPILE) option.mli option.ml
|
|
|
|
$(STANDARD_COMPILE) stack.mli stack.ml
|
|
|
|
$(STANDARD_COMPILE) list.mli list.ml
|
|
|
|
$(STANDARD_COMPILE) map.mli map.ml
|
|
|
|
$(STANDARD_COMPILE) queue.mli queue.ml
|
|
|
|
$(STANDARD_COMPILE) set.mli set.ml
|
|
|
|
$(STANDARD_COMPILE) tree.mli tree.ml
|
|
|
|
$(STANDARD_COMPILE) string.mli string.ml
|
2022-01-20 09:07:42 +00:00
|
|
|
$(STANDARD_COMPILE) char.mli char.ml
|
|
|
|
$(STANDARD_COMPILE) bool.mli bool.ml
|
2022-02-15 11:05:11 +00:00
|
|
|
$(STANDARD_COMPILE_WITH_C) console_external.c console.mli console.ml
|
|
|
|
ocamlmklib console_external.o -o console_external
|
|
|
|
$(STANDARD_COMPILE_WITH_C) file_external.c file.mli file.ml
|
|
|
|
ocamlmklib file_external.o -o file_external
|
|
|
|
|
2022-02-04 03:06:51 +00:00
|
|
|
$(STANDARD_COMPILE) array.mli array.ml
|
2022-01-20 09:07:42 +00:00
|
|
|
|
2022-02-15 11:05:11 +00:00
|
|
|
$(COMPILER) -a $(C_LIBS_FOR_LINKING) $(COMPILED_FILES) -o library.cmxa
|
2021-12-16 10:01:08 +00:00
|
|
|
|
|
|
|
clean:
|
2022-02-15 11:05:11 +00:00
|
|
|
rm -f *.o *.a *.s *.so *.cmi *.cmx *.cmxa *.cmo *.cma
|