SmallCC / src / Makefile

TARGET			=	../scc

LEX					= ocamllex
YACC				= ocamlyacc
OCAML				=	ocamlopt

LDFLAGS			= -ccopt -L. unix.cmxa

SRCSLEX			=	lexer.mll
SRCSYACC		=	parser.mly

SRCS				= $( $(
SRCS				+= 
SRCS				+=

OBJS				= $(

FILES				= ast.cmi $( $( $(OBJS)

ifeq ($(V), 1)
		echo			=
		MAKEFLAGS	= --silent --no-print-directory
		echo			=	echo -e $(1)

all: $(TARGET)

	$(call echo, "LD\t$@")
	$(OCAML) $(CFLAGS) $(LDFLAGS) $(OBJS) -o $@

%.cmi: %.mli
	$(call echo, "OCAML\t$@")
	$(OCAML) $(CFLAGS) -c $< -o $@

	$(call echo, "OCAML\t$@")
	$(OCAML) $(CFLAGS) -c $< -o $@ %.mly
	$(call echo, "YACC\t$@")
	$(YACC) $<
	$(OCAML) $(CFLAGS) -c $@i %.mll
	$(call echo, "LEX\t$@")
	$(LEX) $<

	$(call echo, "RM\t$(FILES) parser.mli")
	rm -rf $(FILES) parser.mli *.o *.cmi

distclean: clean
	$(call echo, "RM\t$(TARGET)")
	rm -rf $(TARGET)
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.