From 390d02ab49666b43a7e96a291f5f2089a8013666 Mon Sep 17 00:00:00 2001 From: Gautier Hattenberger Date: Mon, 25 Feb 2013 09:47:44 +0100 Subject: [PATCH] [makefile] use pprzlib has a proper ocaml package --- conf/Makefile.sim | 5 ++-- sw/Makefile.ocaml | 1 + sw/ground_segment/cockpit/Makefile | 21 ++++++++-------- sw/ground_segment/joystick/Makefile | 8 ++++--- sw/ground_segment/tmtc/Makefile | 37 ++++++++++++++++------------- sw/lib/ocaml/META.pprz | 14 +++++++++++ sw/lib/ocaml/Makefile | 15 ++++-------- sw/logalizer/Makefile | 35 ++++++++++++++++----------- sw/simulator/Makefile | 17 ++++++------- sw/supervision/Makefile | 14 ++++++----- sw/tools/Makefile | 25 +++++++++---------- 11 files changed, 109 insertions(+), 83 deletions(-) create mode 100644 sw/lib/ocaml/META.pprz diff --git a/conf/Makefile.sim b/conf/Makefile.sim index c4ae1941f5..d063602448 100644 --- a/conf/Makefile.sim +++ b/conf/Makefile.sim @@ -32,7 +32,8 @@ include $(PAPARAZZI_SRC)/sw/Makefile.ocaml CC = gcc SIMDIR = $(PAPARAZZI_SRC)/sw/simulator CAMLINCLUDES = -I $(LIBPPRZDIR) -I $(SIMDIR) -I $(OBJDIR) -PKGCOMMON = unix,str,xml-light,glibivy,lablgtk2 +PKG = -package glibivy,pprz +LINKPKG = $(PKG) -linkpkg -dllpath-pkg pprz SIMSITLML = $(OBJDIR)/simsitl.ml MYGTKINITCMO = myGtkInit.cmo SITLCMA = $(SIMDIR)/sitl.cma @@ -82,7 +83,7 @@ autopilot.so : $($(TARGET).objs) $(OBJDIR)/simsitl : autopilot.so $(SITLCMA) $(SIMSITLML) @echo LD $@ - $(Q)$(OCAMLFIND) $(OCAMLC) -g $(CAMLINCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) $(LIBPPRZCMA) $(MYGTKINITCMO) $^ -dllpath $(OBJDIR) -dllpath $(SIMDIR) + $(Q)$(OCAMLFIND) $(OCAMLC) -g $(CAMLINCLUDES) -o $@ $(LINKPKG) $(MYGTKINITCMO) $^ -dllpath $(OBJDIR) -dllpath $(SIMDIR) # The id of the A/C is hardcoded in the code (to be improved with dynlink ?) diff --git a/sw/Makefile.ocaml b/sw/Makefile.ocaml index c3535f48d4..85059795cf 100644 --- a/sw/Makefile.ocaml +++ b/sw/Makefile.ocaml @@ -36,3 +36,4 @@ XLIBPPRZCMXA = $(XLIBPPRZCMA:.cma=.cmxa) OCAMLDLL = -dllpath $(LIBPPRZDIR) OCAMLXDLL = -dllpath $(LIBPPRZDIR) +export OCAMLPATH=$(LIBPPRZDIR) diff --git a/sw/ground_segment/cockpit/Makefile b/sw/ground_segment/cockpit/Makefile index 4119d62857..05515114b8 100644 --- a/sw/ground_segment/cockpit/Makefile +++ b/sw/ground_segment/cockpit/Makefile @@ -36,11 +36,12 @@ FPIC=-fPIC include ../../Makefile.ocaml INCLUDES= -LIBS= lablglade.cma lablgnomecanvas.cma $(OCAMLDLL) $(LIBPPRZCMA) $(OCAMLXDLL) $(XLIBPPRZCMA) -CMXA=$(LIBS:.cma=.cmxa) +LIBS= +LIBSX=$(LIBS:.cma=.cmxa) -INCLUDES= -I $(LIBPPRZDIR) -I ../multimon -PKGCOMMON=unix,str,lablgtk2,glibivy,xml-light,netclient,threads +INCLUDES= -I ../multimon +PKG = -package pprz.xlib,threads +LINKPKG = $(PKG) -linkpkg -dllpath-pkg pprz.xlib ML= gtk_setting_time.ml gtk_strip.ml horizon.ml strip.ml gtk_save_settings.ml saveSettings.ml page_settings.ml pages.ml speech.ml plugin.ml sectors.ml map2d.ml editFP.ml live.ml particules.ml papgets.ml gcs.ml MAIN=gcs @@ -53,22 +54,22 @@ opt : $(MAIN).opt $(MAIN) : $(CMO) $(XLIBPPRZCMA) $(LIBPPRZCMA) @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(OCAMLCFLAGS) $(INCLUDES) -package $(PKGCOMMON) -linkpkg $(LIBS) gtkThread.cmo myGtkInit.cmo $(CMO) -o $@ + $(Q)$(OCAMLFIND) $(OCAMLC) $(OCAMLCFLAGS) $(INCLUDES) $(LIBS) $(LINKPKG) gtkThread.cmo myGtkInit.cmo $(CMO) -o $@ $(MAIN).opt : $(CMX) @echo OOL $@ - $(Q)$(OCAMLFIND) $(OCAMLOPT) $(OCAMLCFLAGS) $(INCLUDES) -package $(PKGCOMMON) -linkpkg $(LIBS:.cma=.cmxa) gtkThread.cmx gtkInit.cmx $(CMX) -o $@ + $(Q)$(OCAMLFIND) $(OCAMLOPT) $(OCAMLCFLAGS) $(INCLUDES) $(LIBSX) $(LINKPKG) gtkThread.cmx gtkInit.cmx $(CMX) -o $@ %.cmo: %.ml @echo OC $< - $(Q)$(OCAMLFIND) $(OCAMLC) $(OCAMLCFLAGS) $(INCLUDES) -package $(PKGCOMMON) -c $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(OCAMLCFLAGS) $(INCLUDES) $(PKG) -c $< %.cmi: %.mli @echo OCI $< - $(Q)$(OCAMLFIND) $(OCAMLC) $(OCAMLCFLAGS) $(INCLUDES) -package $(PKGCOMMON) -c $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(OCAMLCFLAGS) $(INCLUDES) $(PKG) -c $< %.cmx: %.ml @echo OOC $< - $(Q)$(OCAMLFIND) $(OCAMLOPT) $(OCAMLCFLAGS) $(INCLUDES) -package $(PKGCOMMON) -c $< + $(Q)$(OCAMLFIND) $(OCAMLOPT) $(OCAMLCFLAGS) $(INCLUDES) $(PKG) -c $< saveSettings.cmo : gtk_save_settings.cmo saveSettings.cmx: gtk_save_settings.cmx @@ -89,7 +90,7 @@ strip.cmo : gtk_strip.cmo gtk_setting_time.cmo compass : compass.ml @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(OCAMLCFLAGS) $(INCLUDES) -package $(PKGCOMMON) -linkpkg $(LIBS) gtkInit.cmo $^ -o $@ + $(Q)$(OCAMLFIND) $(OCAMLC) $(OCAMLCFLAGS) $(INCLUDES) $(LINKPKG) gtkInit.cmo $^ -o $@ clean: diff --git a/sw/ground_segment/joystick/Makefile b/sw/ground_segment/joystick/Makefile index 362e5f15d5..ccf20bbd57 100644 --- a/sw/ground_segment/joystick/Makefile +++ b/sw/ground_segment/joystick/Makefile @@ -37,7 +37,8 @@ else endif OCAMLINCLUDES= -I $(LIBPPRZDIR) -I $(TOOLSDIR) -PKGCOMMON=unix,str,lablgtk2,glibivy,xml-light +PKG = -package pprz,glibivy +LINKPKG = $(PKG) -linkpkg -dllpath-pkg pprz GLIB_CFLAGS = -Wall $(shell pkg-config glib-2.0 --cflags) $(FPIC) GLIB_LDFLAGS = $(shell pkg-config glib-2.0 --libs) -lglibivy @@ -49,6 +50,7 @@ SDL_LDFLAGS = $(SDL_LDIRS) $(SDL_LIBS) # apparently on OSX `sdl-config --libs` also has -lSDLmain which we don't want ML_SDL_LFLAGS = $(foreach u,$(SDL_LDIRS),-ccopt $(u)) $(foreach u,$(SDL_LIBS),-cclib $(u)) libSDL.so +ML_SDL_LFLAGS += -dllpath ${PAPARAZZI_SRC}/sw/ground_segment/joystick INCLUDES += -I `ocamlc -where` @@ -60,7 +62,7 @@ test_stick: test_sdl_stick.o input2ivy: sdl_stick.so input2ivy.cmo $(LIBPPRZCMA) @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(OCAMLINCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(LIBPPRZCMA) $(TOOLSDIR)/fp_proc.cmo $^ $(ML_SDL_LFLAGS) + $(Q)$(OCAMLFIND) $(OCAMLC) $(OCAMLINCLUDES) -o $@ $(LINKPKG) $(TOOLSDIR)/fp_proc.cmo $^ $(ML_SDL_LFLAGS) # dependency of input2ivy input2ivy: $(LIBPPRZCMA) $(TOOLSDIR)/fp_proc.cmo @@ -75,7 +77,7 @@ sdl_stick.so : sdl_stick.o ml_sdl_stick.o %.cmo : %.ml @echo OC $< - $(Q)$(OCAMLFIND) $(OCAMLC) $(OCAMLINCLUDES) -c -package $(PKGCOMMON) $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(OCAMLINCLUDES) -c $(PKG) $< clean: $(Q)rm -f *~ core *.o *.bak .depend test*stick *.cmo *.cmi input2ivy diff --git a/sw/ground_segment/tmtc/Makefile b/sw/ground_segment/tmtc/Makefile index f39c010e6c..6922ee277e 100644 --- a/sw/ground_segment/tmtc/Makefile +++ b/sw/ground_segment/tmtc/Makefile @@ -36,8 +36,11 @@ include ../../Makefile.ocaml CONF = ../../../conf VAR = ../../../var -INCLUDES= -I $(LIBPPRZDIR) -I ../multimon -PKGCOMMON=unix,str,lablgtk2,glibivy,xml-light,netstring +INCLUDES= -I ../multimon +PKG = -package glibivy,pprz +LINKPKG = $(PKG) -linkpkg -dllpath-pkg pprz +XPKG = -package pprz.xlib +XLINKPKG = $(XPKG) -linkpkg -dllpath-pkg pprz.xlib LIBMULTIMONCMA=../multimon/multimon.cma LIBMULTIMONDLL= multimon.cma -dllpath $(PAPARAZZI_SRC)/sw/ground_segment/multimon @@ -59,73 +62,73 @@ $(VAR)/boa.conf :$(CONF)/boa.conf messages : messages.cmo $(XLIBPPRZCMA) $(LIBPPRZCMA) @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) $(LIBPPRZCMA) gtkInit.cmo $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) gtkInit.cmo $< settings : settings.cmo $(XLIBPPRZCMA) $(LIBPPRZCMA) ../cockpit/page_settings.cmo @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg lablglade.cma lablgnomecanvas.cma gtkInit.cmo $(OCAMLDLL) $(LIBPPRZCMA) $(OCAMLXDLL) $(XLIBPPRZCMA) -I ../cockpit gtk_save_settings.cmo saveSettings.cmo page_settings.cmo $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(XLINKPKG) gtkInit.cmo -I ../cockpit gtk_save_settings.cmo saveSettings.cmo page_settings.cmo $< server : $(SERVERCMO) $(LIBPPRZCMA) @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) $(LIBPPRZCMA) $(SERVERCMO) + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) $(SERVERCMO) server.opt : $(SERVERCMX) $(LIBPPRZCMXA) @echo OOL $@ - $(Q)$(OCAMLFIND) $(OCAMLOPT) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) $(LIBPPRZCMXA) $(SERVERCMX) + $(Q)$(OCAMLFIND) $(OCAMLOPT) $(INCLUDES) -o $@ $(LINKPKG) $(SERVERCMX) link : link.cmo $(LIBMULTIMONCMA) $(LIBPPRZCMA) @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) $(LIBPPRZCMA) $(LIBMULTIMONDLL) $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) $(LIBMULTIMONDLL) $< ivy_tcp_aircraft : ivy_tcp_aircraft.cmo $(LIBMULTIMONCMA) $(LIBPPRZCMA) @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) $(LIBPPRZCMA) $(LIBMULTIMONDLL) $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) $(LIBMULTIMONDLL) $< ivy_tcp_controller : ivy_tcp_controller.cmo $(LIBMULTIMONCMA) $(LIBPPRZCMA) @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) $(LIBPPRZCMA) $(LIBMULTIMONDLL) $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) $(LIBMULTIMONDLL) $< broadcaster : broadcaster.cmo $(LIBMULTIMONCMA) $(LIBPPRZCMA) @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) $(LIBPPRZCMA) $(LIBMULTIMONDLL) $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) $(LIBMULTIMONDLL) $< ivy2udp : ivy2udp.cmo $(LIBPPRZCMA) @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) $(LIBPPRZCMA) $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) $< dia : dia.cmo $(LIBMULTIMONCMA) $(LIBPPRZCMA) @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) $(LIBPPRZCMA) $(LIBMULTIMONDLL) $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) $(LIBMULTIMONDLL) $< diadec : diadec.cmo $(LIBMULTIMONCMA) $(LIBPPRZCMA) @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) $(LIBPPRZCMA) $(LIBMULTIMONDLL) $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) $(LIBMULTIMONDLL) $< 150m : 150m.cmo $(LIBPPRZCMA) @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) $(LIBPPRZCMA) gtkInit.cmo $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) gtkInit.cmo $< settings.cmo : INCLUDES += -I ../cockpit settings.cmo : ../cockpit/page_settings.cmi %.cmo : %.ml @echo OC $< - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -package $(PKGCOMMON) -c $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) $(PKG) -c $< %.cmx : %.ml @echo OOC $< - $(Q)$(OCAMLFIND) $(OCAMLOPT) $(INCLUDES) -package $(PKGCOMMON) -c $< + $(Q)$(OCAMLFIND) $(OCAMLOPT) $(INCLUDES) $(PKG) -c $< %.cmi : %.mli @echo OC $< - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -package $(PKGCOMMON) $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) $(PKG) $< CC = gcc diff --git a/sw/lib/ocaml/META.pprz b/sw/lib/ocaml/META.pprz new file mode 100644 index 0000000000..766505fe9b --- /dev/null +++ b/sw/lib/ocaml/META.pprz @@ -0,0 +1,14 @@ +description = "Paparazzi UAS package" +requires = "unix,str,xml-light,lablgtk2,glibivy,netclient" +version = "1.0" +directory = "" + +archive(byte) = "lib-pprz.cma" +archive(native) = "lib-pprz.cmxa" + +package "xlib" ( + requires = "pprz,lablgtk2-gnome.gnomecanvas,lablgtk2.glade" + version = "1.0" + archive(byte) = "xlib-pprz.cma" + archive(native) = "xlib-pprz.cmxa" +) diff --git a/sw/lib/ocaml/Makefile b/sw/lib/ocaml/Makefile index 6eab3009ac..b4387f791c 100644 --- a/sw/lib/ocaml/Makefile +++ b/sw/lib/ocaml/Makefile @@ -48,9 +48,9 @@ else endif INCLUDES= -PKGCOMMON=xml-light,netclient,ivy,lablgtk2 +PKGCOMMON=xml-light,netclient,glibivy,lablgtk2 XINCLUDES= -XPKGCOMMON=xml-light,glibivy,lablgtk2 +XPKGCOMMON=xml-light,glibivy,lablgtk2-gnome.gnomecanvas,lablgtk2.glade SRC = fig.ml debug.ml base64.ml serial.ml ocaml_tools.ml expr_syntax.ml expr_parser.ml expr_lexer.ml extXml.ml env.ml xml2h.ml latlong.ml egm96.ml srtm.ml http.ml maps_support.ml gm.ml iGN.ml geometry_2d.ml cserial.o convert.o ubx.ml pprz.ml xbee.ml logpprz.ml xmlCom.ml os_calls.ml editAirframe.ml defivybus.ml CMO = $(SRC:.ml=.cmo) @@ -63,20 +63,13 @@ XCMX = $(XSRC:.ml=.cmx) TESTS_SRC = test/test_latlong.ml TESTS_CMO = $(TESTS_SRC:.ml=.cmo) -comma := , -null := -space := $(null) $(null) -PKG_COMMON = $(subst $(comma),$(space),$(PKGCOMMON)) -CMACOMMON = $(shell ocamlfind query -predicates byte -a-format $(PKG_COMMON)) -CMACOMMON_INC = $(shell ocamlfind query -predicates byte -i-format $(PKG_COMMON)) - all : lib-pprz.cma xlib-pprz.cma myGtkInit.cmo xml_get.out opt opt : lib-pprz.cmxa xlib-pprz.cmxa lib-pprz.cma liblib-pprz.a: $(CMO) @echo OL $@ - $(Q)$(OCAMLMKLIB) $(VERBOSITY) $(INCLUDES) -o lib-pprz $(CMACOMMON) $(CMACOMMON_INC) $^ + $(Q)$(OCAMLMKLIB) $(VERBOSITY) $(INCLUDES) -o lib-pprz $^ lib-pprz.cmxa dlllib-pprz.so: $(CMX) @echo OOL $@ @@ -120,7 +113,7 @@ ml_gtkgl_hack.o : ml_gtkgl_hack.c $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -package $(PKGCOMMON) -c -ccopt "$(GTKCFLAGS)" $< camltm.o : register_example.cmo - $(OCAMLFIND) $(OCAMLC) $(INCLUDES) -output-obj -o $@ unix.cma str.cma xml-light.cma ivy-ocaml.cma debug.cmo serial.cmo extXml.cmo env.cmo pprz.cmo tm.cmo + $(OCAMLFIND) $(OCAMLC) $(INCLUDES) -output-obj -o $@ -package unix,str,xml-light,ivy debug.cmo serial.cmo extXml.cmo env.cmo pprz.cmo tm.cmo caml_from_c_example : cserial.o convert.o caml_from_c_example.o camltm.o $(CC) -o $@ $^ -L$(OCAMLLIBDIR) -lunix -lstr -livy-ocaml -lcamlrun -lm -livy -lcurses diff --git a/sw/logalizer/Makefile b/sw/logalizer/Makefile index 83ff141158..56b4a16d11 100644 --- a/sw/logalizer/Makefile +++ b/sw/logalizer/Makefile @@ -25,7 +25,10 @@ Q=@ include ../Makefile.ocaml INCLUDES= -I $(LIBPPRZDIR) -PKGCOMMON=unix,str,xml-light,glibivy,lablgtk2 +PKG = -package glibivy,pprz +LINKPKG = $(PKG) -linkpkg -dllpath-pkg pprz +XPKG = -package pprz.xlib +XLINKPKG = $(XPKG) -linkpkg -dllpath-pkg pprz.xlib # default directory for temporary files TMPDIR ?= /tmp @@ -34,23 +37,23 @@ all: play plotter plot sd2log plotprofile openlog2tlm play : $(LIBPPRZCMA) log_file.cmo play_core.cmo play.cmo @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) gtkInit.cmo $^ + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) gtkInit.cmo $^ play-nox : $(LIBPPRZCMA) play_core.cmo play-nox.cmo @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) $^ + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) $^ plotter : $(LIBPPRZCMA) $(XLIBPPRZCMA) plotter.cmo @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) gtkInit.cmo $^ + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(XLINKPKG) gtkInit.cmo $^ plot : $(LIBPPRZCMA) $(XLIBPPRZCMA) log_file.cmo gtk_export.cmo export.cmo plot.cmo - @echo OL $@ $^ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) lablglade.cma gtkInit.cmo $^ + @echo OL $@ + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(XLINKPKG) gtkInit.cmo $^ sd2log : $(LIBPPRZCMA) sd2log.cmo @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) $^ + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) $^ CC = gcc CFLAGS=-g -O2 -Wall @@ -67,13 +70,13 @@ openlog2tlm: openlog2tlm.c %.cmo: %.ml @echo OC $< - $(Q)$(OCAMLFIND) $(OCAMLC) $(OCAMLCFLAGS) $(INCLUDES) -c -package $(PKGCOMMON) $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(OCAMLCFLAGS) $(INCLUDES) -c $(PKG) $< %.cmi: %.mli @echo OCI $< - $(Q)$(OCAMLFIND) $(OCAMLC) $(OCAMLCFLAGS) $(INCLUDES) -c -package $(PKGCOMMON) $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(OCAMLCFLAGS) $(INCLUDES) -c $(PKG) $< %.cmx: %.ml @echo OOC $< - $(Q)$(OCAMLFIND) $(OCAMLOPT) $(OCAMLCFLAGS) $(INCLUDES) -c -package $(PKGCOMMON) $< + $(Q)$(OCAMLFIND) $(OCAMLOPT) $(OCAMLCFLAGS) $(INCLUDES) -c $(PKG) $< export.cmo : gtk_export.cmo export.cmx : gtk_export.cmx @@ -119,16 +122,20 @@ MORE_FLAGS = -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/incl MORE_CFLAGS = -DHAVE_DLFCN_H=1 -DSTDC_HEADERS=1 -I. -I. -I.. -g -O2 -I/usr/include/gtk-1.2 -I/usr/include/glib-1.2 -I/usr/lib/glib/include disp3d: disp3d.c - $(CC) $(MORE_CFLAGS) -g -o $@ $^ $(MORE_FLAGS) + @echo CC $@ + $(Q)$(CC) $(MORE_CFLAGS) -g -o $@ $^ $(MORE_FLAGS) plotprofile: plotprofile.c - $(CC) $(IVY_C_LIBRARYS) $(IVY_C_INCLUDES) -g -O2 -Wall `pkg-config glib-2.0 --cflags` -o $@ $^ `pkg-config glib-2.0 --libs` -lglibivy + @echo CC $@ + $(Q)$(CC) $(IVY_C_LIBRARYS) $(IVY_C_INCLUDES) -g -O2 -Wall `pkg-config glib-2.0 --cflags` -o $@ $^ `pkg-config glib-2.0 --libs` -lglibivy test1: test1.c - $(CC) $(MORE_CFLAGS) -g -o $@ $^ $(MORE_FLAGS) -lglut + @echo CC $@ + $(Q)$(CC) $(MORE_CFLAGS) -g -o $@ $^ $(MORE_FLAGS) -lglut test3: test3.c sliding_plot.c - $(CC) $(CFLAGS) -g -o $@ $^ $(LDFLAGS) + @echo CC $@ + $(Q)$(CC) $(CFLAGS) -g -o $@ $^ $(LDFLAGS) #FGFS_PREFIX=/home/poine/local diff --git a/sw/simulator/Makefile b/sw/simulator/Makefile index 74ac46830e..ca97704435 100644 --- a/sw/simulator/Makefile +++ b/sw/simulator/Makefile @@ -33,8 +33,9 @@ include ../../conf/Makefile.local include ../Makefile.ocaml OCAMLC += -g -INCLUDES = -I $(LIBPPRZDIR) -PKGCOMMON=unix,str,lablgtk2,glibivy,xml-light +INCLUDES = +PKG = -package glibivy,pprz +LINKPKG = $(PKG) -linkpkg -dllpath-pkg pprz SIMML = stdlib.ml data.ml flightModel.ml gps.ml SIMHML = $(SIMML) hitl.ml sim.ml @@ -56,7 +57,7 @@ fg.so : fg.o simhitl : fg.so $(SIMHCMO) simhitl.cmo @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg lib-pprz.cma gtkInit.cmo $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) gtkInit.cmo $< sitl.cma : fg.o $(SIMSCMO) @echo OL $@ @@ -68,15 +69,15 @@ sitl.cmxa : $(SIMSCMX) gaia : gaia.cmo @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg lib-pprz.cma gtkInit.cmo $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) gtkInit.cmo $< diffusion : stdlib.cmo diffusion.cmo @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg lib-pprz.cma gtkInit.cmo $^ + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) gtkInit.cmo $^ %.cmo : %.ml @echo OC $< - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -c -package $(PKGCOMMON) $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -c $(PKG) $< %.o : %.c @echo CC $< @@ -84,11 +85,11 @@ diffusion : stdlib.cmo diffusion.cmo %.cmx : %.ml @echo OOC $< - $(Q)$(OCAMLFIND) $(OCAMLOPT) $(INCLUDES) -c -package $(PKGCOMMON) $< + $(Q)$(OCAMLFIND) $(OCAMLOPT) $(INCLUDES) -c $(PKG) $< %.cmi : %.mli @echo OC $< - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -c -package $(PKGCOMMON) $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -c $(PKG) $< # dependency on lib-pprz simhitl diffusion gaia: $(LIBPPRZCMA) diff --git a/sw/supervision/Makefile b/sw/supervision/Makefile index 5d1edee2ea..b9a5f39262 100644 --- a/sw/supervision/Makefile +++ b/sw/supervision/Makefile @@ -25,8 +25,9 @@ Q=@ include ../Makefile.ocaml -INCLUDES= -I $(LIBPPRZDIR) -PKGCOMMON=unix,str,lablgtk2,ivy,xml-light +INCLUDES = +XPKG = -package pprz.xlib,lablgtk2-gnome.gnomeui +XLINKPKG = $(XPKG) -linkpkg -dllpath-pkg pprz.xlib PAPARAZZICENTERCMO = gtk_pc.cmo gtk_process.cmo pc_common.cmo pc_aircraft.cmo pc_control_panel.cmo paparazzicenter.cmo @@ -35,9 +36,9 @@ TMPDIR ?= /tmp all: paparazzicenter -paparazzicenter : $(LIBPPRZCMA) $(XLIBPPRZCMA) $(PAPARAZZICENTERCMO) +paparazzicenter : $(PAPARAZZICENTERCMO) @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg lablglade.cma gtkInit.cmo lablgnomeui.cma $(OCAMLDLL) $(OCAMLXDLL) $^ + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(XLINKPKG) gtkInit.cmo $^ gtk_pc.ml : paparazzicenter.glade @echo GLADE $@ @@ -53,14 +54,15 @@ gtk_process.ml : paparazzicenter.glade %.cmo : %.ml @echo OC $< - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -c -package $(PKGCOMMON) $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -c $(XPKG) $< %.cmi : %.mli @echo OC $< - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -package $(PKGCOMMON) $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -c $(XPKG) $< pc_common.cmo: gtk_process.cmo +paparazzicenter : $(LIBPPRZCMA) $(XLIBPPRZCMA) paparazzicenter.cmo : gtk_pc.cmo clean: diff --git a/sw/tools/Makefile b/sw/tools/Makefile index f4903dfb47..92b7798e89 100644 --- a/sw/tools/Makefile +++ b/sw/tools/Makefile @@ -24,8 +24,9 @@ Q=@ include ../Makefile.ocaml -INCLUDES = -I $(LIBPPRZDIR) -PKGCOMMON=unix,str,xml-light +INCLUDES = +PKG = -package pprz +LINKPKG = $(PKG) -linkpkg -dllpath-pkg pprz all: gen_common.cmo gen_aircraft.out gen_airframe.out gen_messages2.out gen_messages.out gen_ubx.out gen_mtk.out gen_flight_plan.out gen_radio.out gen_periodic.out gen_settings.out gen_xsens.out gen_modules.out gen_autopilot.out gen_abi.out find_free_msg_id.out gen_srtm.out mergelogs @@ -34,26 +35,26 @@ ABS_FP = $(FP_CMO:%=$$PAPARAZZI_SRC/sw/tools/%) gen_flight_plan.out : $(FP_CMO) @echo OL $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) lib-pprz.cma $^ - -gen_srtm.out : gen_srtm.ml gen_common.cmo $(LIBPPRZCMA) - @echo OC $@ - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON),netclient -linkpkg $(OCAMLDLL) lib-pprz.cma $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) $^ + +gen_srtm.out : gen_srtm.ml $(LIBPPRZCMA) + @echo OL $@ + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) $< %.out : %.ml gen_common.cmo $(LIBPPRZCMA) - @echo OC $< - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ -package $(PKGCOMMON) -linkpkg $(OCAMLDLL) lib-pprz.cma gen_common.cmo $< + @echo OL $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -o $@ $(LINKPKG) gen_common.cmo $< %.cmo : %.ml @echo OC $< - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -package $(PKGCOMMON) lib-pprz.cma -c $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) $(PKG) -c $< %.cmi : %.mli @echo OC $< - $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) -package $(PKGCOMMON) lib-pprz.cma -c $< + $(Q)$(OCAMLFIND) $(OCAMLC) $(INCLUDES) $(PKG) -c $< # dependency on lib-pprz -gen_flight_plan.out gen_srtm.out : $(LIBPPRZCMA) +gen_flight_plan.out : $(LIBPPRZCMA) mergelogs: mergelogs.c gcc mergelogs.c -o mergelogs