clutter-ocaml / src / Makefile.in

# clutter-ocaml

PACKAGE		:= @PACKAGE_NAME@
VERSION		:= @PACKAGE_VERSION@

INSTALL		:= @INSTALL@

prefix		= @prefix@
exec_prefix	= @exec_prefix@
bindir		= @bindir@

pkg_labgkt2	= @pkg_lablgtk2@
pkg_cairo	= @pkg_cairo@

OCAMLCPACKAGES	:= -package unix,lablgtk2,cairo 

OBJS		:= clutter.cmo clutterEnums.cmo pangolibEnums.cmo \
	clutterData.cmo event.cmo structs.cmo clutterProps.cmo \
	oclutterProps.cmo clutterActor.cmo clutterContainer.cmo \
	clutterTexture.cmo clutterBehaviour.cmo clutterGroup.cmo \
	clutterStage.cmo clutterRectangle.cmo clutterTimeline.cmo \
	clutterAlpha.cmo clutterEffects.cmo clutterLabel.cmo \
	clutterScore.cmo \
	clutterCairo.cmo \
	coglEnums.cmo cogl.cmo
XOBJS		:= $(OBJS:.cmo=.cmx)
C_OBJS          := coglbox.o ml_actor.o \
	ml_alpha.o ml_behaviour.o ml_cairo.o ml_clutter.o ml_cogl.o  \
	ml_coglbox.o ml_container.o ml_effects.o ml_group.o ml_score.o \
	ml_stage.o ml_texture.o ml_timeline.o \

OCAMLCFLAGS	:= -g -w s
OCAMLCLIBS	:= -linkpkg

OCAMLOPTPACKAGES := $(OCAMLCPACKAGES)
OCAMLOPTFLAGS	:= -w s
OCAMLOPTLIBS	:= $(OCAMLCLIBS)

BYTE_TARGETS	:= mlclutter.cma
OPT_TARGETS	:= mlclutter.cmxa
C_ARCHIVES      := libclutter-ocaml.a

DOCDIR   = ../doc
DOCFILES := $(OBJS:.cmo=.ml)
doc: $(DOCFILES)
	mkdir -p $(DOCDIR)/html
	ocamlfind ocamldoc -package lablgtk2,cairo -html -t ClutterOcaml -d $(DOCDIR)/html $(DOCFILES)

.ml4.cmo:
	$(OCAMLC) -c -pp "$(CAMLP4O) -impl" -impl $<

varcc.cmo: varcc.ml4
varcc.exe: varcc.cmo
	$(OCAMLC) -o $@ $<
	rm -f *_tags.h *_tags.c

propcc.cmo: propcc.ml4
propcc.exe: propcc.cmo
	$(OCAMLC) -o $@ $<

%_tags.h %_tags.c %Enums.ml: %_tags.var varcc.exe
	./varcc.exe $<

%Props.ml o%Props.ml: %.props propcc.exe
	./propcc.exe $<

# Flags for the C compiler.

CLUTTER_FLAGS   := @CLUTTER_CFLAGS@
CLUTTER_CAIRO_FLAGS := @CLUTTER_CAIRO_CFLAGS@
CFLAGS=-DFULL_UNROLL -O2 -I`ocamlc -where` $(CLUTTER_FLAGS) $(CLUTTER_CAIRO_FLAGS) 

.c.o:
	$(OCAMLC) -c -ccopt "$(CFLAGS)" $<

all: $(OPT_TARGETS) $(C_ARCHIVES)

byte: $(BYTE_TARGETS) $(C_ARCHIVES)

ml_clutter.c: pango_tags.c clutter_tags.c
ml_cogl.c: cogl_tags.c
libclutter-ocaml.a: $(C_OBJS)
	ocamlmklib -oc clutter-ocaml $(C_OBJS)

mlclutter.cma: $(OBJS) $(C_OBJS)
	ocamlmklib -o mlclutter $(OBJS) $(C_OBJS)

mlclutter.cmxa: $(XOBJS) $(C_OBJS)
	ocamlmklib -o mlclutter $(XOBJS) $(C_OBJS)

# Manual page.
include ../Make.rules
include .depend
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 ProjectModifiedEvent.java.
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.