From 28582042f2bea93eb77815942b5a0f103cd4768f Mon Sep 17 00:00:00 2001 From: Pascal Brisset Date: Sat, 26 Aug 2006 21:21:55 +0000 Subject: [PATCH] install --- Makefile | 106 +++++++++------------------ Makefile.ac | 85 +++++++++++++++++++-- Makefile.gen | 61 --------------- Makefile.install | 93 +++++++++++++++++++++++ conf/Makefile.install | 88 ---------------------- conf/Makefile.sim | 2 +- conf/airframes/microjet5.xml | 6 -- conf/airframes/twinjet1.xml | 2 - conf/conf.xml.example | 21 +++--- conf/control_panel.xml.example | 48 +++++++----- conf/control_panel.xml.example.sys | 89 ---------------------- debian/changelog.etch | 2 +- debian/changelog.sarge | 7 ++ debian/control.etch | 6 +- debian/control.sarge | 6 +- paparazzi-make | 3 + sw/airborne/Makefile | 4 +- sw/ground_segment/cockpit/Makefile | 18 +++-- sw/ground_segment/tmtc/server.ml | 3 +- sw/lib/perl/Paparazzi/Environment.pm | 6 +- sw/simulator/Makefile | 8 +- sw/simulator/data.ml | 1 - sw/simulator/data.mli | 1 - sw/simulator/flightModel.ml | 15 ++-- sw/simulator/simsitl.pl | 2 +- sw/tools/Makefile | 11 +-- sw/tools/gen_aircraft.ml | 3 +- 27 files changed, 307 insertions(+), 390 deletions(-) delete mode 100644 Makefile.gen create mode 100644 Makefile.install delete mode 100644 conf/Makefile.install delete mode 100644 conf/control_panel.xml.example.sys create mode 100755 paparazzi-make diff --git a/Makefile b/Makefile index b4413008a2..5cd7002859 100644 --- a/Makefile +++ b/Makefile @@ -38,8 +38,15 @@ MULTIMON=sw/ground_segment/multimon VISU3D=sw/ground_segment/visu3d LOGALIZER=sw/logalizer SIMULATOR=sw/simulator -SUPERVISION=sw/supervision/paparazzi.pl -MAKE=make +MAKE=make PAPARAZZI_SRC=$(PAPARAZZI_SRC) PAPARAZZI_HOME=$(PAPARAZZI_HOME) +CONF=$(PAPARAZZI_SRC)/conf +STATICINCLUDE =$(PAPARAZZI_HOME)/var/include +MESSAGES_H=$(STATICINCLUDE)/messages.h +MESSAGES_FBW_H=$(STATICINCLUDE)/messages_fbw.h +UBX_PROTOCOL_H=$(STATICINCLUDE)/ubx_protocol.h +DL_PROTOCOL_H=$(STATICINCLUDE)/dl_protocol.h +MESSAGES_XML = $(CONF)/messages.xml +UBX_XML = $(CONF)/ubx.xml all: static @@ -52,15 +59,7 @@ conf/%.xml :conf/%.xml.example [ -L $@ ] || [ -f $@ ] || cp $< $@ -demo: static ac1 ac2 ac3 - PAPARAZZI_HOME=$(PAPARAZZI_SRC) PAPARAZZI_SRC=$(PAPARAZZI_SRC) $(SUPERVISION) - -ac1 : conf sim_static - make AIRCRAFT=Twin1 PAPARAZZI_HOME=$(PAPARAZZI_SRC) sim -ac2 : conf sim_static - make AIRCRAFT=Twin2 PAPARAZZI_HOME=$(PAPARAZZI_SRC) sim -ac3 : conf sim_static - make AIRCRAFT=Twin3 PAPARAZZI_HOME=$(PAPARAZZI_SRC) sim +demo: static lib: cd $(LIB)/ocaml; $(MAKE) @@ -86,63 +85,29 @@ multimon: visu3d: lib cd $(VISU3D); $(MAKE) -%.compile: ac_h - cd $(AIRBORNE); $(MAKE) TARGET=$* all - -%.wr_fuses: %.compile - cd $(AIRBORNE); $(MAKE) TARGET=$* wr_fuses - -%.rd_fuses: %.compile - cd $(AIRBORNE); $(MAKE) TARGET=$* rd_fuses - -%.check_fuses: %.compile - cd $(AIRBORNE); $(MAKE) TARGET=$* check_fuses - -%.erase: %.compile - cd $(AIRBORNE); $(MAKE) TARGET=$* erase - -%.upload: %.compile - cd $(AIRBORNE); $(MAKE) TARGET=$* upload - -sim: ac_h sim_static - cd $(AIRBORNE); $(MAKE) TARGET=sim ARCHI=sim all - -fbw : fbw.compile - -ap: ap.compile - -upload_fbw: fbw.upload - -upload_ap: ap.upload - -erase_fbw: fbw.erase - -erase_ap: ap.erase +static_h : $(MESSAGES_H) $(UBX_PROTOCOL_H) $(DL_PROTOCOL_H) -wr_fuses_ap: ap.wr_fuses +$(MESSAGES_H) : $(MESSAGES_XML) $(CONF_XML) $(TOOLS)/gen_messages.out + $(Q)test -d $(STATICINCLUDE) || mkdir -p $(STATICINCLUDE) + @echo BUILD $@ + $(Q)PAPARAZZI_SRC=$(PAPARAZZI_SRC) $(TOOLS)/gen_messages.out $< telemetry > /tmp/msg.h + $(Q)mv /tmp/msg.h $@ + $(Q)chmod a+r $@ -wr_fuses_fbw: fbw.wr_fuses +$(UBX_PROTOCOL_H) : $(UBX_XML) + @echo BUILD $@ + $(Q)PAPARAZZI_SRC=$(PAPARAZZI_SRC) $(TOOLS)/gen_ubx.out $< > /tmp/ubx.h + $(Q)mv /tmp/ubx.h $@ -rd_fuses_ap: ap.rd_fuses - -rd_fuses_fbw: fbw.rd_fuses - -check_fuses_ap: ap.check_fuses - -check_fuses_fbw: fbw.check_fuses - -static_h : - PAPARAZZI_HOME=`pwd` PAPARAZZI_SRC=`pwd` make -f Makefile.gen - -ac_h : tools static_h - $(Q)if (expr "$(AIRCRAFT)"); then : ; else echo "AIRCRAFT undefined: type 'make AIRCRAFT=AircraftName ...'"; exit 1; fi - @echo BUILD $(AIRCRAFT) - $(Q)PAPARAZZI_HOME=`pwd` PAPARAZZI_SRC=`pwd` Q=$(Q) $(TOOLS)/gen_aircraft.out $(AIRCRAFT) - -hard_ac: ac_h fbw ap -ac: hard_ac +$(DL_PROTOCOL_H) : $(MESSAGES_XML) + @echo BUILD $@ + $(Q)PAPARAZZI_SRC=$(PAPARAZZI_SRC) $(TOOLS)/gen_messages.out $< datalink > /tmp/dl.h + $(Q)mv /tmp/dl.h $@ +include Makefile.ac +sim : sim_static +ac_h : tools static_h ##### preliminary hard wired arm7 bootloader rules # @@ -164,27 +129,28 @@ doxygen: mkdir -p dox doxygen Doxyfile -clean_ac : - rm -fr $(PAPARAZZI_HOME)/var/$(AIRCRAFT) - run_sitl : $(PAPARAZZI_HOME)/var/$(AIRCRAFT)/sim/simsitl install : - make -f conf/Makefile.install PREFIX=$(PREFIX) + make -f Makefile.install PREFIX=$(PREFIX) uninstall : - make -f conf/Makefile.install PREFIX=$(PREFIX) uninstall + make -f Makefile.install PREFIX=$(PREFIX) uninstall -DISTRO=etch +DISTRO=sarge deb : chmod u+x debian/rules cp debian/control.$(DISTRO) debian/control cp debian/changelog.$(DISTRO) debian/changelog - dpkg-buildpackage -rfakeroot + dpkg-buildpackage $(DEBFLAGS) -Ivar -rfakeroot + +fast_deb: + make deb OCAMLC=ocamlc.opt DEBFLAGS=-b clean: rm -fr dox + rm -f $(MESSAGES_H) $(UBX_PROTOCOL_H) $(DL_PROTOCOL_H) find . -mindepth 2 -name Makefile -exec sh -c '$(MAKE) -C `dirname {}` $@' \; find . -name '*~' -exec rm -f {} \; diff --git a/Makefile.ac b/Makefile.ac index 16fd4efb51..13e424b8d0 100644 --- a/Makefile.ac +++ b/Makefile.ac @@ -21,10 +21,13 @@ # Preprocessing of XML configuration files +PAPARAZZI_SRC=$(shell pwd) + include conf/Makefile.local CONF=$(PAPARAZZI_HOME)/conf CONF_XML=$(CONF)/conf.xml +AIRBORNE=sw/airborne MESSAGES_XML = $(CONF)/messages.xml ACINCLUDE = $(PAPARAZZI_HOME)/var/$(AIRCRAFT) AIRFRAME_H=$(ACINCLUDE)/airframe.h @@ -34,13 +37,42 @@ FLIGHT_PLAN_H=$(ACINCLUDE)/flight_plan.h FLIGHT_PLAN_XML=$(ACINCLUDE)/flight_plan.xml SETTINGS_H=$(ACINCLUDE)/settings.h MAKEFILE_AC=$(ACINCLUDE)/Makefile.ac +ifeq ($(PAPARAZZI_SRC),/usr/share/paparazzi) +SUPERVISION=paparazzi +else +SUPERVISION=sw/supervision/paparazzi.pl +endif +MAKE=make PAPARAZZI_SRC=$(PAPARAZZI_SRC) PAPARAZZI_HOME=$(PAPARAZZI_HOME) + # "make Q=''" to get full echo Q=@ -all: $(AIRFRAME_H) $(RADIO_H) $(FLIGHT_PLAN_H) $(FLIGHT_PLAN_XML) $(SETTINGS_H) $(MAKEFILE_AC) $(PERIODIC_H) +help: + @echo "'paparazzi-make init' to init your configuration" + @echo "'paparazzi-make demo' to compile demo aircraft and simulate them" + @echo "'paparazzi-make AIRCRAFT= [sim|ap.|fbw.|clean_ac]' where is 'compile' or 'upload'" -$(AIRFRAME_H) : $(CONF)/$(AIRFRAME) $(CONF_XML) +init: + @echo "Copying config example in your $(PAPARAZZI_HOME) directory" + @mkdir -p $(PAPARAZZI_HOME) + cp -a conf $(PAPARAZZI_HOME) + cp -a data $(PAPARAZZI_HOME) + +demo: ac1 ac2 ac3 + PAPARAZZI_HOME=$(PAPARAZZI_HOME) PAPARAZZI_SRC=$(PAPARAZZI_SRC) $(SUPERVISION) + +ac1 : + make -f Makefile.ac AIRCRAFT=Twin1 sim +ac2 : + make -f Makefile.ac AIRCRAFT=TJ1 sim +ac3 : + make -f Makefile.ac AIRCRAFT=MJ5 sim + + +all_ac_h: $(AIRFRAME_H) $(RADIO_H) $(FLIGHT_PLAN_H) $(FLIGHT_PLAN_XML) $(SETTINGS_H) $(MAKEFILE_AC) $(PERIODIC_H) + +$(AIRFRAME_H) : $(CONF)/$(AIRFRAME_XML) $(CONF_XML) @echo BUILD $@ $(Q)$(TOOLS)/gen_airframe.out $(AC_ID) $(AIRCRAFT) $< > /tmp/airframe.h $(Q)mv /tmp/airframe.h $@ @@ -70,9 +102,52 @@ $(SETTINGS_H) : $(CONF)/$(SETTINGS) $(CONF_XML) $(TOOLS)/gen_settings.out $(Q)$(TOOLS)/gen_settings.out $< > $@ $(Q)chmod a+r $@ -$(MAKEFILE_AC) : $(CONF)/$(AIRFRAME) +$(MAKEFILE_AC) : $(CONF)/$(AIRFRAME_XML) @echo BUILD $@ $(Q)$(TOOLS)/extract_makefile.out $< > $@ -clean : - rm -f $(ACINCLUDE)/*.h + +ac_h : + $(Q)if (expr "$(AIRCRAFT)"); then : ; else echo "AIRCRAFT undefined: type 'make AIRCRAFT=AircraftName ...'"; exit 1; fi + @echo BUILD $(AIRCRAFT) + $(Q)PAPARAZZI_SRC=$(PAPARAZZI_SRC) Q=$(Q) $(TOOLS)/gen_aircraft.out $(AIRCRAFT) + +%.compile: ac_h + cd $(AIRBORNE); $(MAKE) TARGET=$* all + +%.wr_fuses: %.compile + cd $(AIRBORNE); $(MAKE) TARGET=$* wr_fuses + +%.rd_fuses: %.compile + cd $(AIRBORNE); $(MAKE) TARGET=$* rd_fuses + +%.check_fuses: %.compile + cd $(AIRBORNE); $(MAKE) TARGET=$* check_fuses + +%.erase: %.compile + cd $(AIRBORNE); $(MAKE) TARGET=$* erase + +%.upload: %.compile + cd $(AIRBORNE); $(MAKE) TARGET=$* upload + +sim: ac_h + cd $(AIRBORNE); $(MAKE) TARGET=sim ARCHI=sim all + +# Rules for backward compatibility (old guys are used to !) +fbw : fbw.compile +ap: ap.compile +upload_fbw: fbw.upload +upload_ap: ap.upload +erase_fbw: fbw.erase +erase_ap: ap.erase +wr_fuses_ap: ap.wr_fuses +wr_fuses_fbw: fbw.wr_fuses +rd_fuses_ap: ap.rd_fuses +rd_fuses_fbw: fbw.rd_fuses +check_fuses_ap: ap.check_fuses +check_fuses_fbw: fbw.check_fuses +hard_ac ac: ac_h fbw ap + +clean_ac : + $(Q)if (expr "$(AIRCRAFT)"); then : ; else echo "AIRCRAFT undefined: type 'make AIRCRAFT=AircraftName ...'"; exit 1; fi + rm -fr $(PAPARAZZI_HOME)/var/$(AIRCRAFT) diff --git a/Makefile.gen b/Makefile.gen deleted file mode 100644 index f9dc227709..0000000000 --- a/Makefile.gen +++ /dev/null @@ -1,61 +0,0 @@ -# Hey Emacs, this is a -*- makefile -*- -# -# Paparazzi main $Id$ -# Copyright (C) 2004-2006 Pascal Brisset Antoine Drouin -# -# This file is part of paparazzi. -# -# paparazzi is free software; you can redistribute it and/or modify -# it under the terms of the GNU General Public License as published by -# the Free Software Foundation; either version 2, or (at your option) -# any later version. -# -# paparazzi is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with paparazzi; see the file COPYING. If not, write to -# the Free Software Foundation, 59 Temple Place - Suite 330, -# Boston, MA 02111-1307, USA. - -# Preprocessing of XML configuration files - -# Quiet compilation -Q=@ - -include conf/Makefile.local - -CONF=conf -XML_GET=sw/lib/ocaml/xml_get.out - -STATICINCLUDE =$(PAPARAZZI_HOME)/var/include -MESSAGES_H=$(STATICINCLUDE)/messages.h -MESSAGES_FBW_H=$(STATICINCLUDE)/messages_fbw.h -UBX_PROTOCOL_H=$(STATICINCLUDE)/ubx_protocol.h -DL_PROTOCOL_H=$(STATICINCLUDE)/dl_protocol.h -MESSAGES_XML = $(CONF)/messages.xml -UBX_XML = $(CONF)/ubx.xml - -static: $(MESSAGES_H) $(UBX_PROTOCOL_H) $(DL_PROTOCOL_H) - -$(MESSAGES_H) : $(MESSAGES_XML) $(CONF_XML) $(TOOLS)/gen_messages.out - $(Q)test -d $(STATICINCLUDE) || mkdir -p $(STATICINCLUDE) - @echo BUILD $@ - $(Q)$(TOOLS)/gen_messages.out $< telemetry > /tmp/msg.h - $(Q)mv /tmp/msg.h $@ - $(Q)chmod a+r $@ - -$(UBX_PROTOCOL_H) : $(UBX_XML) - @echo BUILD $@ - $(Q)$(TOOLS)/gen_ubx.out $< > /tmp/ubx.h - $(Q)mv /tmp/ubx.h $@ - -$(DL_PROTOCOL_H) : $(MESSAGES_XML) - @echo BUILD $@ - $(Q)$(TOOLS)/gen_messages.out $< datalink > /tmp/dl.h - $(Q)mv /tmp/dl.h $@ - -clean : - rm -f $(H_OF_XML) diff --git a/Makefile.install b/Makefile.install new file mode 100644 index 0000000000..71588f2bea --- /dev/null +++ b/Makefile.install @@ -0,0 +1,93 @@ +# Hey Emacs, this is a -*- makefile -*- + +PREFIX=/usr +DESTDIR=$(PREFIX)/share/paparazzi + +install: install_data install_conf install_bin install_libs install_tools install_airborne_sources + + +install_data: + install -d $(DESTDIR)/data/maps + install data/maps/*.xml data/maps/*.gif data/maps/*.png $(DESTDIR)/data/maps + install -d $(DESTDIR)/data/pictures + install data/pictures/*.gif data/pictures/*.svg data/pictures/*.jpg $(DESTDIR)/data/pictures + install -d $(DESTDIR)/data/srtm + install data/srtm/N43E001.hgt.bz2 $(DESTDIR)/data/srtm + + +install_conf: + install -d $(DESTDIR)/conf + install conf/conf.xml.example $(DESTDIR)/conf/conf.xml + install conf/control_panel.xml.example $(DESTDIR)/conf/control_panel.xml + install conf/messages.xml $(DESTDIR)/conf/ + install conf/messages.dtd $(DESTDIR)/conf/ + install conf/gui.xml $(DESTDIR)/conf/ + cp -a conf/airframes $(DESTDIR)/conf/ + cp -a conf/autopilot $(DESTDIR)/conf/ + cp -a conf/flight_plans $(DESTDIR)/conf/ + cp -a conf/gps $(DESTDIR)/conf/ + cp -a conf/radios $(DESTDIR)/conf/ + cp -a conf/telemetry $(DESTDIR)/conf/ + cp -a conf/settings $(DESTDIR)/conf/ + cp -a conf/gcs $(DESTDIR)/conf/ + +install_bin: + install -d $(PREFIX)/bin/ + install sw/supervision/paparazzi.pl $(PREFIX)/bin/paparazzi + install paparazzi-make $(PREFIX)/bin/ + install -d $(DESTDIR)/sw/simulator + install sw/simulator/gaia $(DESTDIR)/sw/simulator + install sw/simulator/simsitl.pl $(DESTDIR)/sw/simulator + install -d $(DESTDIR)/sw/ground_segment/cockpit + install -d $(DESTDIR)/sw/ground_segment/tmtc + install sw/ground_segment/cockpit/gcs $(DESTDIR)/sw/ground_segment/cockpit + install sw/ground_segment/tmtc/server $(DESTDIR)/sw/ground_segment/tmtc + install sw/ground_segment/tmtc/link $(DESTDIR)/sw/ground_segment/tmtc + install sw/ground_segment/tmtc/messages $(DESTDIR)/sw/ground_segment/tmtc + install -d $(DESTDIR)/sw/logalizer + install sw/logalizer/play $(DESTDIR)/sw/logalizer + install sw/logalizer/plot.pl $(DESTDIR)/sw/logalizer + +install_libs: + install -d $(PREFIX)/lib/perl5/Paparazzi + install sw/lib/perl/Paparazzi/*.pm $(PREFIX)/lib/perl5/Paparazzi + install sw/supervision/Paparazzi/*.pm $(PREFIX)/lib/perl5/Paparazzi + install -d $(DESTDIR)/sw/lib/ocaml + install sw/lib/ocaml/*.cma $(DESTDIR)/sw/lib/ocaml + install sw/lib/ocaml/*.so $(DESTDIR)/sw/lib/ocaml + install sw/lib/ocaml/*.a $(DESTDIR)/sw/lib/ocaml + install sw/lib/ocaml/*.cmi $(DESTDIR)/sw/lib/ocaml + +install_tools: + install Makefile.ac $(DESTDIR) + install -d $(DESTDIR)/sw/tools/ + install conf/Makefile* $(DESTDIR)/conf + install sw/tools/*.out $(DESTDIR)/sw/tools/ + install sw/tools/extract_makefile.ml $(DESTDIR)/sw/tools/ + install sw/tools/gen_aircraft.ml $(DESTDIR)/sw/tools/ + install sw/tools/gen_airframe.ml $(DESTDIR)/sw/tools/ + install sw/tools/gen_flight_plan.ml $(DESTDIR)/sw/tools/ + install sw/tools/gen_messages.ml $(DESTDIR)/sw/tools/ + install sw/tools/gen_periodic.ml $(DESTDIR)/sw/tools/ + install sw/tools/gen_radio.ml $(DESTDIR)/sw/tools/ + install sw/tools/gen_settings.ml $(DESTDIR)/sw/tools/ + install sw/tools/gen_ubx.ml $(DESTDIR)/sw/tools/ + install -d $(DESTDIR)/sw/simulator + install sw/simulator/sitl.cma $(DESTDIR)/sw/simulator + install sw/simulator/simsitl.ml $(DESTDIR)/sw/simulator + install sw/simulator/sim.cmi $(DESTDIR)/sw/simulator + install sw/simulator/sitl.cmi $(DESTDIR)/sw/simulator + install sw/simulator/libsitl.a $(DESTDIR)/sw/simulator + +install_airborne_sources: + install -d $(DESTDIR)/sw/ + cp -a sw/airborne $(DESTDIR)/sw + install -d $(DESTDIR)/sw/include + install sw/include/std.h $(DESTDIR)/sw/include + install var/include/*.h $(DESTDIR)/sw/include + + +install_skel: +# cp -a conf $(DESTDIR)/ +# cp -a data $(DESTDIR)/ +# install -d $(DESTDIR)/var diff --git a/conf/Makefile.install b/conf/Makefile.install deleted file mode 100644 index 28d874295f..0000000000 --- a/conf/Makefile.install +++ /dev/null @@ -1,88 +0,0 @@ - -PREFIX=/usr -DESTDIR=$(PREFIX)/share/paparazzi - -install: install_demo install_data install_conf install_bin install_libs install_tools install_airborne_sources - - -install_demo: - install -d $(DESTDIR)/var - cp -a var/Twin1 $(DESTDIR)/var - cp -a var/Twin2 $(DESTDIR)/var - cp -a var/Twin3 $(DESTDIR)/var - -install_data: - install -d $(DESTDIR)/data/maps - install -t $(DESTDIR)/data/maps data/maps/*.xml - install -t $(DESTDIR)/data/maps data/maps/*.gif - install -d $(DESTDIR)/data/pictures - install -t $(DESTDIR)/data/pictures data/pictures/*.gif - install -t $(DESTDIR)/data/pictures data/pictures/*.svg - install -t $(DESTDIR)/data/pictures data/pictures/*.jpg - install -d $(DESTDIR)/data/srtm - install -t $(DESTDIR)/data/srtm data/srtm/N43E001.hgt.bz2 - - -install_conf: - install -d $(DESTDIR)/conf - install conf/conf.xml.example $(DESTDIR)/conf/conf.xml - install conf/control_panel.xml.example.sys $(DESTDIR)/conf/control_panel.xml - install conf/messages.xml $(DESTDIR)/conf/ - install conf/messages.dtd $(DESTDIR)/conf/ - install conf/gui.xml $(DESTDIR)/conf/ - install conf/Makefile.install $(DESTDIR)/conf/ - cp -a conf/airframes $(DESTDIR)/conf/ - cp -a conf/autopilot $(DESTDIR)/conf/ - cp -a conf/flight_plans $(DESTDIR)/conf/ - cp -a conf/gps $(DESTDIR)/conf/ - cp -a conf/radios $(DESTDIR)/conf/ - cp -a conf/telemetry $(DESTDIR)/conf/ - -install_bin: - install -d $(PREFIX)/bin/ - install sw/supervision/paparazzi.pl $(PREFIX)/bin/paparazzi - install -d $(DESTDIR)/bin/ - install sw/simulator/gaia $(DESTDIR)/bin/ - install sw/simulator/simsitl.pl $(DESTDIR)/bin/ - install sw/ground_segment/cockpit/gcs $(DESTDIR)/bin/ - install sw/ground_segment/tmtc/server $(DESTDIR)/bin/ - install sw/ground_segment/tmtc/link $(DESTDIR)/bin/ - install sw/ground_segment/tmtc/messages $(DESTDIR)/bin/ - install sw/logalizer/play $(DESTDIR)/bin/ - install sw/logalizer/plot.pl $(DESTDIR)/bin/ - -install_libs: - install -d $(PREFIX)/lib/perl5/Paparazzi - install sw/lib/perl/Paparazzi/*.pm $(PREFIX)/lib/perl5/Paparazzi - install sw/supervision/Paparazzi/*.pm $(PREFIX)/lib/perl5/Paparazzi - install -d $(DESTDIR)/sw/lib/ocaml - install -t $(DESTDIR)/sw/lib/ocaml sw/lib/ocaml/*.cma - install -t $(DESTDIR)/sw/lib/ocaml sw/lib/ocaml/*.so - install -t $(DESTDIR)/sw/lib/ocaml sw/lib/ocaml/*.a - install -t $(DESTDIR)/sw/lib/ocaml sw/lib/ocaml/*.cmi - -install_tools: - install -t $(DESTDIR) Makefile* - install -d $(DESTDIR)/sw/tools/ - install -t $(DESTDIR)/conf conf/Makefile* - install -t $(DESTDIR)/bin/ sw/tools/*.out - install -t $(DESTDIR)/bin/ sw/tools/extract_makefile.ml - install -t $(DESTDIR)/bin/ sw/tools/gen_aircraft.ml - install -t $(DESTDIR)/bin/ sw/tools/gen_airframe.ml - install -t $(DESTDIR)/bin/ sw/tools/gen_flight_plan.ml - install -t $(DESTDIR)/bin/ sw/tools/gen_messages.ml - install -t $(DESTDIR)/bin/ sw/tools/gen_periodic.ml - install -t $(DESTDIR)/bin/ sw/tools/gen_radio.ml - install -t $(DESTDIR)/bin/ sw/tools/gen_settings.ml - install -t $(DESTDIR)/bin/ sw/tools/gen_ubx.ml - install -d $(DESTDIR)/sw/simulator - install -t $(DESTDIR)/sw/simulator sw/simulator/Makefile - -install_airborne_sources: - install -d $(DESTDIR)/sw/ - cp -a sw/airborne $(DESTDIR)/sw - -install_skel: -# cp -a conf $(DESTDIR)/ -# cp -a data $(DESTDIR)/ -# install -d $(DESTDIR)/var diff --git a/conf/Makefile.sim b/conf/Makefile.sim index 4a2700afd2..d9c084b955 100644 --- a/conf/Makefile.sim +++ b/conf/Makefile.sim @@ -30,7 +30,7 @@ SRC_ARCH = $(PAPARAZZI_SRC)/sw/airborne/sim CC = gcc -OCAMLC = ocamlc +OCAMLC = ocamlc -g SIMDIR = $(PAPARAZZI_SRC)/sw/simulator CAMLINCLUDES = -I +lablgtk2 -I $(PAPARAZZI_SRC)/sw/lib/ocaml -I $(SIMDIR) SIMSITLML = $(OBJDIR)/simsitl.ml diff --git a/conf/airframes/microjet5.xml b/conf/airframes/microjet5.xml index 9ea001a81b..24592eddce 100644 --- a/conf/airframes/microjet5.xml +++ b/conf/airframes/microjet5.xml @@ -116,12 +116,6 @@ -
- - - -
-
diff --git a/conf/airframes/twinjet1.xml b/conf/airframes/twinjet1.xml index cd1a409942..04aa5c33b9 100644 --- a/conf/airframes/twinjet1.xml +++ b/conf/airframes/twinjet1.xml @@ -125,8 +125,6 @@
- -
diff --git a/conf/conf.xml.example b/conf/conf.xml.example index a0972da2c9..dd30e0eee9 100644 --- a/conf/conf.xml.example +++ b/conf/conf.xml.example @@ -43,7 +43,7 @@ airframe="airframes/microjet1.xml" radio="radios/cockpitMM.xml" telemetry="telemetry/default.xml" - flight_plan="flight_plans/dummy.xml" + flight_plan="flight_plans/muret_demo_1.xml" /> @@ -104,6 +105,15 @@ flight_plan="flight_plans/dummy.xml" /> + + - - - - - - - diff --git a/conf/control_panel.xml.example b/conf/control_panel.xml.example index b3039aa93a..d8b0b0a9d8 100644 --- a/conf/control_panel.xml.example +++ b/conf/control_panel.xml.example @@ -15,40 +15,38 @@ + + - - - - - + - - - - - - + + + + + + @@ -57,11 +55,10 @@
- + - + - @@ -72,15 +69,28 @@ - - - - - + + + + + + + + + + + + + + + + + +
diff --git a/conf/control_panel.xml.example.sys b/conf/control_panel.xml.example.sys deleted file mode 100644 index 271cfbdc38..0000000000 --- a/conf/control_panel.xml.example.sys +++ /dev/null @@ -1,89 +0,0 @@ - - - - -
- - - - - - - -
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - - -
- - - - - - - - - - - - - - - - - - -
- -
diff --git a/debian/changelog.etch b/debian/changelog.etch index 2c44efb4ba..f33193fcc8 100644 --- a/debian/changelog.etch +++ b/debian/changelog.etch @@ -1,4 +1,4 @@ -paparazzi (3.1-rc1) unstable; urgency=low +paparazzi (3.1-2) unstable; urgency=low * Introduction of binary package. diff --git a/debian/changelog.sarge b/debian/changelog.sarge index 51fc1f8133..713778a4dd 100644 --- a/debian/changelog.sarge +++ b/debian/changelog.sarge @@ -1,3 +1,10 @@ +paparazzi (3.1-1) unstable; urgency=low + + * Initial Release. + + -- Pascal Brisset Sat, 26 Aug 2006 22:28:35 +0200 + + paparazzi (1.0-3) unstable; urgency=low * Initial Release. diff --git a/debian/control.etch b/debian/control.etch index 3e72b656ea..6532733dda 100644 --- a/debian/control.etch +++ b/debian/control.etch @@ -8,9 +8,9 @@ Standards-Version: 3.6.1 Package: paparazzi-base Architecture: any -Suggests: mlview, lustre, paparazzi-avr, paparazzi-arm +Suggests: paparazzi-avr, paparazzi-arm7 Recommends: eagle, cvs, gs-common, tetex-extra, dia-gnome -Depends: ivy-c-dev, ivy-c, ivy-perl, libsubject-perl, ivy-ocaml, xml-light-ocaml, libxml-dom-perl, libpcre3-dev, libexpect-perl, libgnomecanvas2-dev, libcamlimages-ocaml-dev, libfile-ncopy-perl, libtext-csv-perl, make, gcc, patch, gnuplot, bzip2, boa, liblablgtk2-ocaml-dev, liblablgtk2-gl-ocaml-dev, liblablgtk2-gnome-ocaml-dev +Depends: ivy-c-dev, ivy-c, ivy-perl, ivy-ocaml, xml-light-ocaml, liblablgtk2-ocaml-dev, make, gcc, boa, gnuplot, libgnomecanvas2-dev, libxml-dom-perl, libsubject-perl, libfile-ncopy-perl, libpcre3-dev, bzip2, libexpect-perl Description: Paparazzi Meta Package : common support @@ -28,6 +28,6 @@ Description: Paparazzi Meta Package. Philips ARM7 support Package: paparazzi-bin Architecture: i386 -Depends: ivy-c-dev, ivy-c, ivy-perl, libsubject-perl, zinc-perl, zinc-tk, ivy-ocaml, xml-light-ocaml, libxml-dom-perl, libpcre3-dev, liblablgtk2-ocaml-dev, gcc-avr, avr-libc, binutils-avr, libexpect-perl, libgnomecanvas2-dev, libcamlimages-ocaml-dev, uisp, libfile-ncopy-perl, libtext-csv-perl, digikit, make, gcc, patch, boa, dia-gnome, tetex-extra +Depends: ivy-c-dev, ivy-c, ivy-perl, ivy-ocaml, xml-light-ocaml, liblablgtk2-ocaml-dev, make, gcc, boa, gnuplot, libxml-dom-perl, libsubject-perl, libfile-ncopy-perl, libpcre3-dev, bzip2, libexpect-perl Description: Paparazzi main package diff --git a/debian/control.sarge b/debian/control.sarge index bb07e90589..4c18e74c10 100644 --- a/debian/control.sarge +++ b/debian/control.sarge @@ -8,9 +8,9 @@ Standards-Version: 3.6.1 Package: paparazzi-base Architecture: any -Suggests: mlview, lustre, paparazzi-avr, paparazzi-arm +Suggests: paparazzi-arm7, paparazzi-avr Recommends: eagle, cvs, gs-common, tetex-extra, dia-gnome -Depends: ivy-c-dev, ivy-c, ivy-perl, libsubject-perl, zinc-perl, zinc-tk, ivy-ocaml, xml-light-ocaml, libxml-dom-perl, libpcre3-dev, liblablgtk2-ocaml-dev, libexpect-perl, libgnomecanvas2-dev, libcamlimages-ocaml-dev, libfile-ncopy-perl, libtext-csv-perl, make, gcc, patch, gnuplot, digikit, bzip2, liblablgtk2-gnome-ocaml-dev, boa, bleriot-fonts +Depends: ivy-c-dev, ivy-c, ivy-perl, ivy-ocaml, xml-light-ocaml, liblablgtk2-ocaml-dev, make, gcc, boa, gnuplot, libgnomecanvas2-dev, libxml-dom-perl, libsubject-perl, libfile-ncopy-perl, libpcre3-dev, bzip2, libexpect-perl Description: Paparazzi Meta Package : common support @@ -28,6 +28,6 @@ Description: Paparazzi Meta Package. Philips ARM7 support Package: paparazzi-bin Architecture: i386 -Depends: ivy-c-dev, ivy-c, ivy-perl, libsubject-perl, zinc-perl, zinc-tk, ivy-ocaml, xml-light-ocaml, libxml-dom-perl, libpcre3-dev, liblablgtk2-ocaml-dev, gcc-avr, avr-libc, binutils-avr, libexpect-perl, libgnomecanvas2-dev, libcamlimages-ocaml-dev, uisp, libfile-ncopy-perl, libtext-csv-perl, digikit, make, gcc, patch, boa, dia-gnome, tetex-extra +Depends: ivy-c-dev, ivy-c, ivy-perl, ivy-ocaml, xml-light-ocaml, liblablgtk2-ocaml-dev, make, gcc, boa, gnuplot, libxml-dom-perl, libsubject-perl, libfile-ncopy-perl, libpcre3-dev, bzip2, libexpect-perl Description: Paparazzi main package diff --git a/paparazzi-make b/paparazzi-make new file mode 100755 index 0000000000..dd2c92f0be --- /dev/null +++ b/paparazzi-make @@ -0,0 +1,3 @@ +#!/bin/bash + +make -C /usr/share/paparazzi -f Makefile.ac $* diff --git a/sw/airborne/Makefile b/sw/airborne/Makefile index 0d62354c1b..2189b1c8e8 100644 --- a/sw/airborne/Makefile +++ b/sw/airborne/Makefile @@ -29,10 +29,12 @@ INCLUDES = -I $(PAPARAZZI_SRC)/sw/include -I $(PAPARAZZI_SRC)/sw/airborne -I $(P SRC_ARCH = $(PAPARAZZI_SRC)/sw/airborne/$(ARCHDIR) +ifneq ($(MAKECMDGOALS),clean) include $(PAPARAZZI_HOME)/var/$(AIRCRAFT)/Makefile.ac $(TARGET).srcs += $($(TARGET).EXTRA_SRCS) include ../../conf/Makefile.local include ../../conf/Makefile.$(ARCHI) +endif $(TARGET).install : warn_conf @@ -46,4 +48,4 @@ warn_conf : @echo clean : - rm *~ + rm -f *~ diff --git a/sw/ground_segment/cockpit/Makefile b/sw/ground_segment/cockpit/Makefile index 9097fab90e..7be45107cf 100644 --- a/sw/ground_segment/cockpit/Makefile +++ b/sw/ground_segment/cockpit/Makefile @@ -23,9 +23,11 @@ # Quiet compilation Q=@ -OCAMLC=ocamlc -thread -I +xml-light -OCAMLOPT=ocamlopt -thread -I +xml-light -INCLUDES=-I +lablgtk2 -I ../../lib/ocaml +OCAMLC=ocamlc +OCAMLCFLAGS=-thread +OCAMLOPT=ocamlopt -thread +OCAMLOPTFLAGS=-thread +INCLUDES=-I +lablgtk2 -I ../../lib/ocaml -I +xml-light LIBS=glibivy-ocaml.cma lablgtk.cma lib-pprz.cma lablgnomecanvas.cma xlib-pprz.cma CMXA=$(LIBS:.cma=.cmxa) @@ -45,22 +47,22 @@ map2d : gcs $(MAIN) : $(CMO) @echo OL $@ - $(Q)$(OCAMLC) -custom $(INCLUDES) $(LIBS) threads.cma gtkThread.cmo gtkInit.cmo $(CMO) -o $@ + $(Q)$(OCAMLC) $(OCAMLCFLAGS) -custom $(INCLUDES) $(LIBS) threads.cma gtkThread.cmo gtkInit.cmo $(CMO) -o $@ $(MAIN).opt : $(CMX) @echo OOL $@ - $(Q)$(OCAMLOPT) $(INCLUDES) str.cmxa unix.cmxa xml-light.cmxa $(LIBS:.cma=.cmxa) threads.cmxa gtkThread.cmx gtkInit.cmx $(CMX) -o $@ + $(Q)$(OCAMLOPT) $(OCAMLCFLAGS) $(INCLUDES) str.cmxa unix.cmxa xml-light.cmxa $(LIBS:.cma=.cmxa) threads.cmxa gtkThread.cmx gtkInit.cmx $(CMX) -o $@ %.cmo: %.ml ../../lib/ocaml/lib-pprz.cma ../../lib/ocaml/xlib-pprz.cma @echo OC $< - $(Q)$(OCAMLC) $(INCLUDES) -c $< + $(Q)$(OCAMLC) $(OCAMLCFLAGS) $(INCLUDES) -c $< %.cmi: %.mli ../../lib/ocaml/lib-pprz.cma ../../lib/ocaml/xlib-pprz.cma @echo OCI $< - $(Q)$(OCAMLC) $(INCLUDES) -c $< + $(Q)$(OCAMLC) $(OCAMLCFLAGS) $(INCLUDES) -c $< %.cmx: %.ml @echo OOC $< - $(Q)$(OCAMLOPT) $(INCLUDES) -c $< + $(Q)$(OCAMLOPT) $(OCAMLCFLAGS) $(INCLUDES) -c $< clean: diff --git a/sw/ground_segment/tmtc/server.ml b/sw/ground_segment/tmtc/server.ml index a4dc7b8f46..57d5e136b9 100644 --- a/sw/ground_segment/tmtc/server.ml +++ b/sw/ground_segment/tmtc/server.ml @@ -691,8 +691,7 @@ let ivy_server = fun http -> (* main loop *) let _ = - let xml_ground = ExtXml.child conf_xml "ground" in - let ivy_bus = ref (ExtXml.attrib xml_ground "ivy_bus") + let ivy_bus = ref "127.255.255.255:2010" and logging = ref true and http = ref false in diff --git a/sw/lib/perl/Paparazzi/Environment.pm b/sw/lib/perl/Paparazzi/Environment.pm index 44314f412c..49c1cceb77 100644 --- a/sw/lib/perl/Paparazzi/Environment.pm +++ b/sw/lib/perl/Paparazzi/Environment.pm @@ -16,9 +16,9 @@ if (defined $ENV{PAPARAZZI_SRC}) { if (defined $ENV{PAPARAZZI_HOME}) { $paparazzi_home = $ENV{PAPARAZZI_HOME} } -else { - $paparazzi_home = "/usr/share/paparazzi" unless defined $ENV{PAPARAZZI_SRC}; -} +#else { +# $paparazzi_home = "/usr/share/paparazzi" unless defined $ENV{PAPARAZZI_SRC}; +#} #print "\nEnvironment : "; #if (defined $paparazzi_src) { # print "source directory mode\n paparazzi_src $paparazzi_src\n"; diff --git a/sw/simulator/Makefile b/sw/simulator/Makefile index 044a0b2204..a7c315b9d3 100644 --- a/sw/simulator/Makefile +++ b/sw/simulator/Makefile @@ -32,9 +32,9 @@ SIMSCMO=$(SIMSML:%.ml=%.cmo) SIMSCMX=$(SIMSML:%.ml=%.cmx) -OCAMLC = ocamlc -I +xml-light -OCAMLOPT=ocamlopt -I +xml-light -p -INCLUDES= -I +lablgtk2 -I ../lib/ocaml +OCAMLC = ocamlc -g +OCAMLOPT=ocamlopt +INCLUDES= -I +lablgtk2 -I ../lib/ocaml -I +xml-light AIRBORNE = ../airborne VARINCLUDE=$(PAPARAZZI_HOME)/var/include @@ -74,7 +74,7 @@ gaia : gaia.cmo $(Q)$(OCAMLC) $(INCLUDES) -c $< clean : - \rm -f *.cm* *~ *.out .depend *.o *.a *.so gaia + rm -f *.cm* *~ *.out .depend *.o *.a *.so gaia # # Dependencies diff --git a/sw/simulator/data.ml b/sw/simulator/data.ml index 9c8aa86b20..8c8d281751 100644 --- a/sw/simulator/data.ml +++ b/sw/simulator/data.ml @@ -32,7 +32,6 @@ let (//) = Filename.concat let user_conf_path = Env.paparazzi_home // "conf" let conf_xml = Xml.parse_file (user_conf_path // "conf.xml") -let ground = ExtXml.child conf_xml "ground" let messages_ap = (* let xml = Xml.parse_file (pprz_conf_path // "messages.xml") in *) diff --git a/sw/simulator/data.mli b/sw/simulator/data.mli index 054dea2965..d293ff2cbd 100644 --- a/sw/simulator/data.mli +++ b/sw/simulator/data.mli @@ -26,7 +26,6 @@ val user_conf_path : string val conf_xml : Xml.xml -val ground : Xml.xml val messages_ap : Xml.xml type aircraft = { name : string; diff --git a/sw/simulator/flightModel.ml b/sw/simulator/flightModel.ml index 15c0005004..80f422f618 100644 --- a/sw/simulator/flightModel.ml +++ b/sw/simulator/flightModel.ml @@ -75,9 +75,6 @@ module Make(A:Data.MISSION) = struct Not_found -> failwith (Printf.sprintf "Child 'section' with 'name=%s' expected in '%s'\n" name (Xml.to_string A.ac.airframe)) - - let simu_section = section "SIMU" - let defined_value = fun sect name -> try (Xml.attrib (ExtXml.child sect ~select:(fun x -> ExtXml.attrib x "name" = name) "define") "value") @@ -87,11 +84,17 @@ module Make(A:Data.MISSION) = struct let float_value = fun section s -> float_of_string (defined_value section s) - let roll_response_factor = float_value simu_section "ROLL_RESPONSE_FACTOR" + let simu_section = + try section "SIMU" with _ -> Xml.Element("", [], []) - let yaw_response_factor = float_value simu_section "YAW_RESPONSE_FACTOR" + let roll_response_factor = + try float_value simu_section "ROLL_RESPONSE_FACTOR" with _ -> 10. - let weight = float_value simu_section "WEIGHT" + let yaw_response_factor = + try float_value simu_section "YAW_RESPONSE_FACTOR" with _ -> 1. + + let weight = + try float_value simu_section "WEIGHT" with _ -> 1. let max_phi = 0.7 (* rad *) let bound = fun x mi ma -> if x > ma then ma else if x < mi then mi else x diff --git a/sw/simulator/simsitl.pl b/sw/simulator/simsitl.pl index e6b826803b..b469cd549b 100755 --- a/sw/simulator/simsitl.pl +++ b/sw/simulator/simsitl.pl @@ -21,7 +21,7 @@ my @args = (); push @args, "-b", $options->{ivy_bus}; push @args, "-fg", $options->{fg} if defined $options->{fg}; my $sim_binary = Paparazzi::Environment::paparazzi_home()."/var/".$options->{aircraft}."/sim/simsitl"; -die "$sim_binary not found. try make AIRCRAFT=$options->{aircraft} ac\n" unless -e $sim_binary; +die "$sim_binary not found. try make AIRCRAFT=$options->{aircraft} sim\n" unless -e $sim_binary; exec ($sim_binary, @args) diff --git a/sw/tools/Makefile b/sw/tools/Makefile index 3163671cfd..3be9bf617c 100644 --- a/sw/tools/Makefile +++ b/sw/tools/Makefile @@ -23,7 +23,8 @@ Q=@ OCAML=ocaml -OCAMLC=ocamlc -I ../lib/ocaml -I +xml-light +OCAMLC=ocamlc +INCLUDES=-I ../lib/ocaml -I +xml-light OCAMLLEX=ocamllex OCAMLYACC=ocamlyacc @@ -34,7 +35,7 @@ ABS_FP = $(FP_CMO:%=$$PAPARAZZI_SRC/sw/tools/%) gen_flight_plan.out : $(FP_CMO) ../lib/ocaml/lib-pprz.cma @echo OL $@ - $(Q)$(OCAMLC) -custom -o $@ ivy-ocaml.cma lib-pprz.cma $^ + $(Q)$(OCAMLC) $(INCLUDES) -custom -o $@ ivy-ocaml.cma lib-pprz.cma $^ fp_parser.cmo : fp_parser.cmi fp_syntax.cmi fp_parser.cmi : fp_parser.ml fp_syntax.cmi @@ -46,18 +47,18 @@ fp_syntax.cmo : fp_syntax.cmi %.out : %.ml @echo OC $< - $(Q)$(OCAMLC) -o $@ ivy-ocaml.cma lib-pprz.cma $< + $(Q)$(OCAMLC) $(INCLUDES) -o $@ ivy-ocaml.cma lib-pprz.cma $< @cat ../../pprz_src_test.sh > $@ @echo '$(OCAML) -I +xml-light -I $$PAPARAZZI_SRC/sw/lib/ocaml ivy-ocaml.cma lib-pprz.cma $$PAPARAZZI_BIN/$< $$*' >> $@ @chmod a+x $@ %.cmo : %.ml ../lib/ocaml/lib-pprz.cma @echo OC $< - $(Q)$(OCAMLC) -c $< + $(Q)$(OCAMLC) $(INCLUDES) -c $< %.cmi : %.mli @echo OC $< - $(Q)$(OCAMLC) -c $< + $(Q)$(OCAMLC) $(INCLUDES) -c $< %.ml : %.mll @echo OC $< diff --git a/sw/tools/gen_aircraft.ml b/sw/tools/gen_aircraft.ml index 111bfe1ff9..594f6add5e 100644 --- a/sw/tools/gen_aircraft.ml +++ b/sw/tools/gen_aircraft.ml @@ -37,6 +37,7 @@ let _ = let aircraft_dir = paparazzi_home // "var" // aircraft in + mkdir (paparazzi_home // "var"); mkdir aircraft_dir; mkdir (aircraft_dir // "fbw"); mkdir (aircraft_dir // "autopilot"); @@ -48,7 +49,7 @@ let _ = fprintf stderr "\nWARNING: No 'settings' attribute specified for A/C '%s', using 'settings/basic.xml'\n\n%!" aircraft; "settings/basic.xml" in - let c = sprintf "make -f Makefile.ac AIRCRAFT=%s AC_ID=%s AIRFRAME=%s RADIO=%s FLIGHT_PLAN=%s TELEMETRY=%s SETTINGS=%s" aircraft (value "ac_id") (value "airframe") (value "radio") (value "flight_plan") (value "telemetry") settings in + let c = sprintf "make -f Makefile.ac AIRCRAFT=%s AC_ID=%s AIRFRAME_XML=%s RADIO=%s FLIGHT_PLAN=%s TELEMETRY=%s SETTINGS=%s all_ac_h" aircraft (value "ac_id") (value "airframe") (value "radio") (value "flight_plan") (value "telemetry") settings in begin (** Quiet is speficied in the Makefile *) try if Sys.getenv "Q" <> "@" then raise Not_found with Not_found -> prerr_endline c