1
0
mirror of https://bitbucket.org/librepilot/librepilot.git synced 2024-12-05 13:24:11 +01:00
Commit Graph

366 Commits

Author SHA1 Message Date
Philippe Renon
0aad8afc90 [OP-1085] upgraded to Qt 5.1.1 2013-10-21 23:59:23 +02:00
Philippe Renon
2d3076e9b8 [OP-835] Upgrade toolchain system to Qt 5.1 (Windows only, use packages for Linux and OSX) 2013-09-15 23:24:13 +02:00
David
86a02d693e Update copy data for ssl, readme is way out of date, changed one
line but on a read through, it's very out of date now as things
are easier now. Might be best to link to the Wiki...
2013-08-17 00:51:09 +10:00
Brian Webb
e246ecf536 Moves pios_led functionality to pios_gpio and makes pios_led a thin layer over pios_gpio. Supports configuring multiple sets of GPIOs. 2013-07-28 07:01:08 -07:00
Brian Webb
774a74884a OP-932 Replaces the RFM22B PPM/receiver code with an OPLinkReceiver UAVObject. This object is generated on a coordinator OPLink, and is used by both the OPLink to generate PPM output, and the OPLinkReceiver on the Revo. 2013-06-26 17:57:11 -07:00
Brian Webb
08efc8d152 OP-932: Adds an oplink receiver device, which is based on the gcs receiver device, but uses the OPLinkReceiver UAVObject. The OPLinkReceiver packets are generated on the OPLink modem. 2013-06-26 17:56:20 -07:00
Oleg Semyonov
b6312b3faa OP-910: update python path comment in make/tools.mk to keep in sync 2013-06-06 11:12:21 +03:00
Oleg Semyonov
b5711b8835 Change build-info.txt format from DOS to Unix
It is used by Bamboo server shell scripts, and being CRLF terminated,
this sometimes results in broken file names, for example, of Android
package.
2013-05-29 16:38:36 +03:00
Oleg Semyonov
444431579e OP-770: add/rename some version-info.py template variables 2013-05-25 23:02:29 +02:00
Oleg Semyonov
0798d8e330 OP-891: move firmware_info template under flight directory 2013-05-20 01:12:45 +03:00
Oleg Semyonov
97b4433a36 Merge remote-tracking branch 'origin/thread/OP-955_Version_Info_Improvements' into next 2013-05-19 15:22:55 +02:00
Oleg Semyonov
4a93e739de OP-955: remove old copy of moved file 2013-05-19 00:11:27 +03:00
Alessio Morale
c1f767b12d Merge remote-tracking branch 'origin/amorale/OP-954_logfs_settings_in_internal_flash' into next
Conflicts:
	flight/pios/common/pios_flashfs_logfs.c
2013-05-18 15:53:25 +02:00
Alessio Morale
6ba15ebc53 OP-954 Fixes from review:
- CopterControl target fix
- tabs in Nakefiles
- Removed duplicate stale settings and clean empty lines in osd Makefile
+review OPReview-470
2013-05-15 23:18:50 +02:00
Richard Flay (Hyper)
ed68fbe68d OP-951: Adds -Wshadow to flight CFLAGS and fixes resulting compilation breakage.
+review OPReview
2013-05-14 07:01:45 +09:30
Alessio Morale
d555bd0673 Uses Internal flash for system settings storage repourposing external flash for "User" storage 2013-05-11 22:06:30 +02:00
Richard Flay (Hyper)
cf14608ebe Merge branch 'next' into hyper/OP-936_task-monitor-rework 2013-05-09 19:25:02 +09:30
Alessio Morale
93bad2e8c2 Merge branch 'amorale/OP-917_f4_bootloader_updater' into next
***** PLEASE NOTE  ***** From this revision all F4 based boards (Revolution/OSD) needs bootloader version  5 to boot properly

Conflicts:
	flight/pios/stm32f4xx/libraries/CMSIS2/Device/ST/STM32F4xx/Source/osd/system_stm32f4xx.c
	flight/targets/boards/osd/board-info.mk
	make/boot-defs.mk
	make/common-defs.mk
2013-05-07 21:02:41 +02:00
Richard Flay (Hyper)
fbc8bc698f OP-936: Merges branch 'next' into hyper/OP-936_task-monitor-rework, fixes damage/conflicts,
and brings the callback scheduler into the fold.

+review OPReview-461
2013-05-06 19:11:14 +09:30
Richard Flay (Hyper)
a2d8544931 OP-931: adds -Wextra compiler option for the flight code, and makes the bazillion code changes required
to make the flight code compile again. Needs careful review, particularly all the fixes for the
signed vs unsigned comparisons.

+review OPReview-459
2013-05-05 16:32:24 +09:30
Richard Flay (Hyper)
5b61466259 OP-931: Adds -Wdouble-promotion compiler option and fixes problems that the compiler then identifies.
+review OPReview-459
2013-05-04 19:24:01 +09:30
Richard Flay (Hyper)
87fcf9fa8b Merge branch 'next' into hyper/OP-931_extra_compiler_warnings and update as necessary.
Hopefully properly fixes conflicts:
	flight/modules/Attitude/attitude.c
	flight/modules/ManualControl/manualcontrol.c
	flight/modules/Osd/WavPlayer/wavplayer.c
	flight/modules/Osd/osdgen/osdgen.c
	flight/modules/System/systemmod.c
	ground/uavobjgenerator/generators/flight/uavobjectgeneratorflight.cpp
2013-05-04 11:12:44 +09:30
Oleg Semyonov
137ddbf73a Fix broken unit tests 2013-05-03 20:27:03 +02:00
Oleg Semyonov
ee1a149888 tools: add gtest_install and build_sdk_* 2013-05-03 20:26:44 +02:00
Sambas
4d19fd5989 Merge remote-tracking branch 'remotes/origin/sambas/diffnext' into next 2013-05-03 07:58:17 +03:00
Richard Flay (Hyper)
84e1a81f8b OP-936: Moves the task monitor code out of the flight library and into PiOS.
This move and rework also breaks the dependency of the task monitor on the UAVO subsystem,
and pushes the responsibility for updating the TaskInfo UAVO into the System module.

+review OPReview
2013-05-03 07:01:14 +09:30
Oleg Semyonov
dd181904fc Fix version-info.py utility to back off gracefully if no git in the PATH 2013-05-02 19:05:00 +02:00
Sambas
f7b9223827 Merge remote-tracking branch 'remotes/origin/next' into sambas/diffnext
Conflicts:
	flight/modules/System/systemmod.c
	shared/uavobjectdefinition/taskinfo.xml
2013-05-02 09:00:12 +03:00
Oleg Semyonov
a5d63eb452 tools: make nsis_install (Windows only) 2013-05-01 22:44:11 +03:00
Oleg Semyonov
b30385d4fa uncrustify: use no spaces in empty for statements: for ( ; ;) -> for (;;)
It can be rolled back and a space after last semicolon could be added
if desired: for ( ; ; ). But it looks not nice in ~20 files where
this statement is used.
2013-05-01 12:01:51 +03:00
Oleg Semyonov
363e1705cf uncrustify: update configuration (EOL comment and class indents, extra ';' removals) 2013-04-30 16:54:28 +02:00
Oleg Semyonov
0394a3511c Rename template files to *.template to screen from uncrustify processing 2013-04-30 16:54:27 +02:00
Richard Flay (Hyper)
742058da8c Merge branch 'next' into hyper/OP-931_extra_compiler_warnings 2013-04-30 20:44:49 +09:30
Richard Flay (Hyper)
7937ae6296 OP-931: Makes flight code compile with -Wfloat-equal and -Wunsuffixed-float-constants enabled.
Also fixes warnings (and bugs) in F4 STM32_USB_OTG_Driver code, allowing -Werror to be enabled for all flight code.
Fixes all other compiler warnings that would otherwise cause the flight code to not compile with -Werror enabled.
Along the way, this also adds some uses of isnan() to various places rather than questionable tests for x != x and
x == x to check for NaNs.

+review OPReview
2013-04-30 20:36:42 +09:30
Oleg Semyonov
55c406066d tools: add doxygen_install and docs_* targets 2013-04-29 02:05:15 +02:00
sambas
9fec3f5567 Merge remote-tracking branch 'remotes/origin/next' into sambas/diffnext 2013-04-27 13:39:58 +03:00
Alessio Morale
2e6835a2a3 Merge remote-tracking branch 'origin/next' into amorale/OP-917_f4_bootloader_updater 2013-04-27 12:25:54 +02:00
Richard Flay (Hyper)
fd1181959c Merge branch 'hyper/OP-913-flight-uavo-alignment' into next 2013-04-27 18:19:01 +09:30
Alessio Morale
b21146b8e3 OP-917 bootloader updater for F4 targets. Initial commit 2013-04-27 00:56:47 +02:00
Oleg Semyonov
fa8c2f239c Merge remote-tracking branch 'origin/amedee/OP-921' into next 2013-04-26 17:43:26 +03:00
Oleg Semyonov
e2fd821e97 Merge remote-tracking branch 'origin/next' into sambas/diffnext
Conflicts:
	make/common-defs.mk
2013-04-26 16:31:19 +03:00
sambas
abe3742217 Merge remote-tracking branch 'remotes/origin/next' into sambas/diffnext
Conflicts:
	flight/Libraries/CoordinateConversions.c
	flight/Libraries/paths.c
	flight/Modules/System/systemmod.c
	flight/PiOS/STM32F4xx/pios_sys.c
	flight/targets/boards/coptercontrol/pios_board.h
	flight/targets/boards/revolution/pios_board.h
	flight/targets/boards/revoproto/pios_board.h
2013-04-25 17:26:49 +03:00
Oleg Semyonov
25d0e8fcab Rename PiOS/STM32F10x->PiOS/stm32f10x, PiOS/STM32F4xx->PiOS/stm32f4xx 2013-04-25 13:13:39 +03:00
Oleg Semyonov
f20f89da35 Rename PiOS/Common->PiOS/common 2013-04-25 13:13:39 +03:00
Oleg Semyonov
66db978244 Rename Libraries->libraries, Modules->modules 2013-04-25 13:13:36 +03:00
Philippe Vanhaesendonck
b3de04d09f Handle Mach-o object format for UAVOs
Jira OP-921
2013-04-24 22:39:39 +02:00
Oleg Semyonov
0414231408 Move uncrustify config from flight to make/uncrustify/ 2013-04-24 22:49:17 +03:00
Oleg Semyonov
748b28f4f4 Move doxygen config from flight to make/doxygen/ 2013-04-24 22:44:40 +03:00
Oleg Semyonov
33ed88e696 Merge remote-tracking branch 'origin/next' into os/OP-899_board-rename-and-config-rework 2013-04-24 21:28:33 +02:00
Oleg Semyonov
15fd460275 Normalize line endings for *.sh after .gitattributes update 2013-04-24 20:09:38 +02:00
Oleg Semyonov
0bff67822b tools: yet another fix for md5 calculation 2013-04-24 16:42:47 +03:00
Oleg Semyonov
f283b66a2f uncrustify: add config comment for "don't indent this section" option 2013-04-24 12:52:36 +03:00
Oleg Semyonov
21e7e95f87 Merge remote-tracking branch 'origin/os/add-uncrustify' into next 2013-04-24 02:31:41 +02:00
Oleg Semyonov
406339eb49 Merge branch 'amorale/next_precheck' into os/OP-899_board-config-rework-rebased-3
Conflicts:
	flight/Libraries/inc/op_dfu.h
	flight/Libraries/op_dfu.c
	flight/targets/Bootloaders/CopterControl/inc/op_dfu.h
	flight/targets/Bootloaders/OSD/op_dfu.c
	flight/targets/boards/coptercontrol/bootloader/inc/op_dfu.h
	flight/targets/boards/coptercontrol/bootloader/op_dfu.c
	flight/targets/boards/oplinkmini/bootloader/inc/op_dfu.h
	flight/targets/boards/oplinkmini/bootloader/op_dfu.c
	flight/targets/boards/osd/bootloader/inc/op_dfu.h
	flight/targets/boards/osd/bootloader/op_dfu.c
	flight/targets/boards/revolution/bootloader/inc/op_dfu.h
	flight/targets/boards/revolution/bootloader/op_dfu.c
	flight/targets/boards/sensortest/bootloader/inc/op_dfu.h
	flight/targets/boards/sensortest/bootloader/op_dfu.c
	make/boot-defs.mk
2013-04-24 00:37:39 +03:00
Alessio Morale
57ca1639cc Merge branch 'amorale/amorale/OP-874_gcs_rescue_erase_settings_merged' into next
Conflicts:
	flight/Libraries/op_dfu.c
	flight/PiOS/STM32F10x/pios_iap.c
	flight/PiOS/inc/pios_iap.h
	flight/targets/BootloaderUpdater/main.c
	flight/targets/Bootloaders/CopterControl/inc/op_dfu.h
	flight/targets/Bootloaders/CopterControl/op_dfu.c
	flight/targets/Bootloaders/OSD/inc/op_dfu.h
	flight/targets/Bootloaders/PipXtreme/op_dfu.c
	flight/targets/Bootloaders/RevoMini/inc/op_dfu.h
	flight/targets/Bootloaders/RevoMini/op_dfu.c
	flight/targets/Bootloaders/Revolution/inc/op_dfu.h
	flight/targets/Bootloaders/Revolution/op_dfu.c
	ground/openpilotgcs/src/plugins/uploader/uploader.ui
	make/apps-defs.mk
	make/boot-defs.mk
2013-04-23 23:14:11 +02:00
Oleg Semyonov
3f2431c04f OP-899: move board-specific pios_board.h files into board directories 2013-04-24 00:07:06 +03:00
Oleg Semyonov
f7332f6905 OP-899: remove extra copy of pios_usb_data.c and move it level up 2013-04-24 00:07:06 +03:00
Oleg Semyonov
1dd20eca33 OP-899: move board_hw_defs.c under board directories and fix some includes 2013-04-24 00:07:06 +03:00
Oleg Semyonov
393b37fa7a OP-899: move board-info.mk from make/boards to board directories 2013-04-24 00:07:06 +03:00
Oleg Semyonov
f7f842687a OP-899: rename System to firmware and move Makefile into it 2013-04-24 00:07:06 +03:00
Oleg Semyonov
399cafe7d7 OP-896: rename RevoMini to Revolution 2013-04-24 00:07:05 +03:00
Oleg Semyonov
6afbef01eb OP-896: rename Revo to SensorTest 2013-04-24 00:07:04 +03:00
Oleg Semyonov
fdd0ed39e0 OP-896: remove old board configs (ESC, INS, OpenPilot) 2013-04-24 00:07:04 +03:00
Oleg Semyonov
1ded536056 OP-896: rename OPLink to OPLinkMini 2013-04-24 00:07:04 +03:00
Brian Webb
ba7b712cf1 Changed all references to PipXtreme on flight side to OPLink. 2013-04-24 00:07:03 +03:00
Richard Flay (Hyper)
146e082e74 OP-913: ensured that UAVO data structs in .bss/.data sections and on the stack have 4 byte alignment. Also changed linker options to sort common and sort sections by alignment, which reduces the amount of fill/padding in the .bss and .data sections.
+review OPReview-444
2013-04-23 22:34:58 +09:30
Oleg Semyonov
f9816175d0 tools: replace md5sum by openssl (now works on Windows/Linux/OSX)
See also: OP-719, OPReview-441
2013-04-22 21:37:34 +02:00
Oleg Semyonov
34983fa643 uncrustify: add some alignments to the configuration
See also: OPIN-3
2013-04-22 21:35:45 +02:00
Oleg Semyonov
8d1e1fdbc0 tools: make uncrustify_install target, script and base config file
See also: OPIN-3
2013-04-22 21:35:25 +02:00
sambas
8aa5748a8c Merge remote-tracking branch 'remotes/origin/next' into sambas/diffnext 2013-04-20 10:59:00 +03:00
Oleg Semyonov
491e89b165 make: sort wildcard sources to make binaries identical on all platforms
Thanks to Amedee for finding the cause of the difference and CorvusCorax
for participating in the discussion.
2013-04-19 20:43:31 +02:00
Oleg Semyonov
f15249ff07 make: fix bu_* targets 2013-04-18 17:50:34 +03:00
Oleg Semyonov
509a1b4fe1 make: fix *_program targets (were broken for firmware) 2013-04-18 17:37:12 +03:00
Oleg Semyonov
b7de3c99d8 tools: fix typo in comments 2013-04-18 16:03:05 +02:00
Oleg Semyonov
f7236eb180 tools: add Linux 64bit native ARM toolchain 2013-04-18 15:45:38 +03:00
Oleg Semyonov
61bb82ca15 gcs: find python in tools building with Qt-Creator
This fix uses the same approach as OpenPilot toolchain system,
but for build started from Qt-Creator.
2013-04-17 19:08:02 +02:00
Oleg Semyonov
59f8a99ab7 make: warn users about old ARM toolchain instead of cryptic 'no such file' error 2013-04-16 21:26:36 +02:00
sambas
ab8ab4bcc6 Merge remote-tracking branch 'remotes/origin/next' into sambas/diffnext 2013-04-15 17:41:06 +03:00
Oleg Semyonov
354924deed OP-719: suggest to use native Qt 4.8.x package on Linux and OSX
+review OPReview-441
2013-04-14 23:46:15 +02:00
Oleg Semyonov
d3ad4d3106 OP-719: provide pre-fetch and post-extract options to install template
+review OPReview-441
2013-04-14 23:46:14 +02:00
sambas
388489226d typo fix, fix EE_BANK usage 2013-04-14 13:08:09 +03:00
sambas
bb4aa08a15 Merge remote-tracking branch 'origin/sambas/diffnext' into amorale/osd_settings_on_flash 2013-04-14 12:32:26 +03:00
sambas
589290dbd7 POI orbit + some code run thru code formatter 2013-04-14 12:23:47 +03:00
Oleg Semyonov
159dae9c9b OP-719: print error message if curl is not available and stop
+review OPReview-441
2013-04-14 04:17:10 +03:00
Oleg Semyonov
28314ec170 OP-719: add linux x64 version of qt-4.8.4
It seems we must ship GCS with all Qt libs like we do for Windows.
On Ubuntu x64 the GCS built with this crashes using system libs.

But since it's possible to build GCS using natively installed
Qt SDK, it is not a problem for now. Something is better than
nothing, and two ways of building are better then just one.

+review OPReview-441
2013-04-13 22:51:33 +03:00
Oleg Semyonov
5be0a1919e OP-719: add md5 checksumming 2013-04-12 10:56:12 +02:00
Oleg Semyonov
3967874996 OP-719: use common tool install template 2013-04-12 10:56:11 +02:00
Oleg Semyonov
34b15fedaf OP-719: make python_install (Windows) 2013-04-12 10:56:10 +02:00
Oleg Semyonov
c0878f290d OP-719: make qt_sdk_install (Linux) 2013-04-12 10:56:08 +02:00
Oleg Semyonov
e4d91218b6 OP-719: make qt_sdk_install mingw_install (Windows) 2013-04-12 10:56:07 +02:00
Oleg Semyonov
ea06337573 OP-719: make/scripts/win_sdk_install.sh 2013-04-12 10:56:06 +02:00
Alessio Morale
09d2ba1d25 OP-874 merge of amorale/OP-874_gcs_rescue_erase_settings in next.
+review OPReview-421
2013-04-08 01:10:37 +02:00
sambas
fb8273459f Normalize line endings 2013-04-07 09:49:13 +03:00
Oleg Semyonov
5bb6b56b4a OP-772: Normalize line endings 2013-04-05 23:46:56 +03:00
Oleg Semyonov
3bebec22f7 OP-772: Enforce line ending agreements (git 1.7.2+ required for this to work)
This is a part of OP-726, OP-727 tasks to normalize source code.
Use the following to normalise your local repository to be able to merge:

git rm --cached -r .
git diff --cached --name-only -z | xargs -0 git add
git commit -m "Normalise line endings"
git ls-files -z | xargs -0 rm
git checkout .
2013-04-05 23:43:58 +03:00
Oleg Semyonov
cab706125b Merge remote-tracking branch 'origin/os/get-rid-of-build-ground-dir' into next 2013-04-05 17:07:34 +02:00
Oleg Semyonov
c1dc7ccde7 Move OPLicenseTemplate.txt from top directory to make/templates
It's just one step. See also OP-891 for further changes.
2013-04-05 01:03:25 +03:00
Oleg Semyonov
f57610dc78 tools: Makefile and sh.cmd minor updates (mostly comments) 2013-04-04 23:57:43 +03:00
Oleg Semyonov
cf110998a0 tools: fix MSYS tar problem with Windows path names with drive letter colon 2013-04-04 17:03:17 +02:00
Oleg Semyonov
f82d66d217 OP-719: fix curl "invalid time" error if target file is missing
+review OPReview-431
2013-04-04 13:08:48 +03:00
Oleg Semyonov
a0e24a69aa OP-719: upgrade ARM SDK to 4.7-2013q1 +review OPReview-431 2013-04-01 00:42:19 +03:00
Oleg Semyonov
03f7596689 OP-719: fix broken paths to other tools (still to be revised) +review OPReview-431 2013-03-31 21:52:58 +03:00
Oleg Semyonov
b67ce783f5 OP-719: upgrade ARM SDK to 4.7-2012q4, use 'make arm_sdk_install' to install
+review OPReview
2013-03-31 16:59:00 +02:00
Oleg Semyonov
3e815ca8d5 build: get rid of build/ground subdirectory, fix qt-creator builds
This changeset:
- moves all ground targets one level up, under build directory. The
  build/ground was created as a workaround, now unnecessary;
- fixes QtCreator builds, they are separated from command line builds;
- moves GCS autogenerated files into openpilotgcs-synthetics directory.

The resulting build subdirectory now looks like:

    build
        openpilotgcs             <- Qt-Creator build directory
        openpilotgcs-synthetics  <- version-info and opfw_resource
        openpilotgcs_debug
        openpilotgcs_release     <- Makefile build directory
        uavobject-synthetics
        uavobjgenerator

NOTE: you should update the shadow build path in QtCreator to build,
      not build/ground as before.

+review OPReview
2013-03-30 17:33:38 +02:00
Alessio Morale
8698bcfb84 Moved OSD settings from SDCard to mcu internal flash memory 2013-03-30 15:47:22 +01:00
sambas
77cae9ffc3 MagBaro Extension board module
OSD update
OSD output module for FC
Sonar update
Flight mode fixes + poi
2013-03-28 18:20:50 +02:00
Oleg Semyonov
927977216b Revert "Makefile: better solution for MODULE_MODULENAME_BUILTIN name conversion"
The problem is that we have modules defined as:
    Airspeed
or
    Airspeed/revolution
or
    Extensions/MagBaro
and, probably
    Extensions/MagBaro/revolution
can be expected too.

It is impossible to get module name from such mixed cases.
So the better solution does not work for MagBaro, reverted.

This reverts commit 5d760d20fa.

+review OPReview-422
2013-03-25 17:27:47 +02:00
Oleg Semyonov
5d760d20fa Makefile: better solution for MODULE_MODULENAME_BUILTIN name conversion
Now it does not depend on board-specific part and uses module canonical name.

+review OPReview-422
2013-03-25 17:07:04 +02:00
Oleg Semyonov
9424be584c Makefile: fix MODULE_MODULENAME_BUILTIN generation bug for revo modules
This converts 'ModuleName/revolution' into 'ModuleName' for macro.

+review OPReview-422
2013-03-25 16:35:20 +02:00
Oleg Semyonov
9335a50b18 Makefile: use upper case for MODULE_MODULENAME_BUILTIN macros
+review OPReview-422
2013-03-25 16:02:16 +02:00
Oleg Semyonov
8f977a4411 Final step: lot of small fixes, last commit in this commit series
This is the first cleanup pass through makefiles and pios.
Probably it is difficult to track changes due to the nature of them.
I would recommend to look at resulting files and compiled code instead.

NOTE: original branch was rebased and lot of conflicts were fixed on
the way. So do not expect that every commit in this series will be
buildable (unlike original branch). Only final result was tested.

The main goal was to remove as much duplication of code (and copy/paste
errors) as possible, moving common parts out of Makefiles. It still is
not perfect, and mostly no code changes made - Makefiles and #ifdefs only.
But please while testing make sure that all code works as before, and no
modules/options are missed by accident.

Brief list of changes:
- Moved common parts of Makefiles into the set of *.mk files.
- Changed method of passing common vars from top Makefile to lower ones.
- Some pios cleanup, mostly #ifdefs, and all pios_config.h files.
- Many obsolete files removed (for instance, AHRS files, op_config.h).
- Many obsolete or unused macros removed or fixed/renamed (ALL_DIGNOSTICS).
- Unified pios_config.h template. Please don't remove lines for board
  configs, only comment/uncomment them. Adding new PIOS options, please
  propagate them to all board files keeping the same order.
- Some formatting, spacing, indentation (no line endings change yet).
- Some cosmetic fixes (no more C:\X\Y\filename.c printings on Windows).
- Added some library.mk files to move libs into AR achives later.
- EntireFlash target now uses cross-platform python script to generate bin
  files. So it works on all supported platforms: Linux, OSX, Windows.
- Top level packaging is completely rewritten. Now it is a part of top
  Makefile. As such, all dependencies are checked and accounted, no
  more 'make -j' problems should occur.
- Default GCS_BUILD_CONF is release now, may be changed if necessary
  using 'make GCS_BUILD_CONF=debug gcs'.
- GCS build paths are separated into debug and release, so no more obj
  file clashes. Packaging system supports only release builds.
- New target is introduced: 'clean_package'. Now 'make package' does not
  clean build directory. Use clean_package instead for distributable builds.
- Targets like 'all', 'opfw_resource', etc now will print extra contex
  in parallel builds too.
- If any of 'package', 'clean_package', 'opfw_resource' targets are given
  on command line, GCS build will depend on the resource, so all fw_*.opfw
  targets will be built and embedded into GCS. By default GCS does not
  depend on resource, and will be built w/o firmware (unless the resource
  files already exist and the Qt resource file is generated).
- fw_simposix (ELF executable) is now packaged for linux. Run'n'play!
- Make help is refined and is now up to date.

Still broken:
- UnitTests, should be fixed
- SimPosix: buildable, but should be reworked.

Next planned passes to do:
- toolchain bootstrapping and packaging (including windows - WIP)
- CMSIS/StdPeriph lib cleanup
- more PIOS cleanup
- move libs into AR archives to save build time
- sim targets refactir and cleanup
- move android-related directories under <top>/android
- unit test targets fix
- source code line ending changes (there are many different, were not changed)
- coding style

Merging this, please use --no-ff git option to make it the real commit point

Conflicts:
	A lot of... :-)
2013-03-24 13:06:24 +02:00
Oleg Semyonov
7e02642b01 Move 3rd party printf formatter functions from PiOS to Libraries folder
They are not a PiOS, but 3rd party libraries. They even should not
be placed to the same (PiOS) library directory due to the printf symbol
clashes (if all *.c from the folder are built). So they are moved, and
each target can include that one which is necessary/desired.
2013-03-24 13:06:06 +02:00
Oleg Semyonov
f3d587ad12 Makefile: better options sequence in common-defs.mk 2013-03-24 13:06:01 +02:00
Oleg Semyonov
5c13162824 Makefile: some rearrangements between apps-defs.mk and target Makefiles
Conflicts:
	flight/targets/PipXtreme/Makefile
	make/apps-defs.mk
2013-03-24 13:06:00 +02:00
Oleg Semyonov
9b3d3e62ab Makefile: fix Makefile for BootloaderUpdater (STM32F10x only targets)
Conflicts:
	flight/targets/Bootloaders/BootloaderUpdater/Makefile
2013-03-24 13:05:52 +02:00
Oleg Semyonov
91f14768db Makefile: fix mk files, now both CC and PipX are buildable using common defs
Conflicts:
	make/apps-defs.mk
2013-03-24 13:05:50 +02:00
Oleg Semyonov
f65ff0585f Makefile: add make/common-defs.mk and use it to build bootloaders (STM32F10x)
Conflicts:
	make/boot-defs.mk
2013-03-24 13:04:15 +02:00
Oleg Semyonov
b7545c6f57 Makefile: add --warn-common and --fatal-warnings to identify name clashes
This will stop builds if few same symbols are found when linking.
It should not be the case, but possible and may give unpredicted results.
2013-03-24 13:04:13 +02:00
Oleg Semyonov
db0cdc6a0c Remove (almost) exact copy of dosfs from F1-specific directory
The difference was in dfs_sdcard.c, line 107:

-if((status = PIOS_SDCARD_SectorRead(sector, buffer)) < 0) {
+if((status = PIOS_SDCARD_SectorRead(sector, buffer)) != 0) {

Currenly unused, kept as is.
2013-03-24 13:04:11 +02:00
Oleg Semyonov
27822d0cd4 Makefile and pios_config.h cleanup for PipXtreme
Now PipXtreme uses the same apps-defs.mk file as CopterControl.
Next steps are F4 boards.

Conflicts:
	flight/targets/PipXtreme/Makefile
	flight/targets/PipXtreme/System/inc/pios_config.h
2013-03-24 13:04:08 +02:00
Oleg Semyonov
7e4596ff35 Makefile: fix some MODULE_Name_BUILTIN checks and Makefile
These names are automatically generated by make using the list
of mandatory (always started) modules. Wrong names mean they can
be disabled, fixed now.

Conflicts:
	flight/Modules/Radio/radio.c
2013-03-24 13:04:06 +02:00
Oleg Semyonov
a1e17eccf3 pios: fix packet handler #ifdef guards and Makefile
Conflicts:
	flight/Libraries/packet_handler.c
	flight/targets/CopterControl/System/inc/pios_config.h
2013-03-24 13:04:04 +02:00
Oleg Semyonov
f7bdcdb782 Makefile: firmware makefiles cleanup (CC)
Conflicts:
	flight/targets/CopterControl/Makefile
2013-03-24 13:04:03 +02:00
Oleg Semyonov
75ef685c6e Makefile: bootloader makefiles cleanup
Conflicts:
	flight/targets/Bootloaders/CopterControl/Makefile
	flight/targets/Bootloaders/OSD/Makefile
	flight/targets/Bootloaders/PipXtreme/Makefile
	flight/targets/Bootloaders/RevoMini/Makefile
	flight/targets/Bootloaders/Revolution/Makefile
2013-03-24 13:04:01 +02:00
Oleg Semyonov
8a98920f3d Makefile: use exported variables in firmware-defs.mk
Note that $(QUOTE) variable is uppercased. Windows make does not
export lowercased variables with export keyword (even if must do).

Conflicts:
	make/firmware-defs.mk
2013-03-24 13:04:00 +02:00
Oleg Semyonov
23c605ffba Makefile: indents, comments, spacing, $(CMDS) variables, etc.
How to invoke external command instead of shell builtin on Windows:
ECHO := /bin/echo

Conflicts:
	Makefile
2013-03-24 13:03:58 +02:00
Oleg Semyonov
304f366338 Remove discontinued AHRS files 2013-03-24 13:03:50 +02:00
Oleg Semyonov
8c6f24afef version-info.py: fix coding style 2013-03-24 13:03:49 +02:00
Alessio Morale
1a38b7eb46 Merge remote-tracking branch 'origin/amorale/02_os-stac_logfs-unittests' into next
Conflicts:
	flight/targets/RevoMini/Makefile
	flight/targets/Revolution/Makefile
2013-03-23 15:13:05 +01:00
Alessio Morale
e06ab7f706 Merge remote-tracking branch 'origin/amorale/01-directory_move_sanity_simposix' into next
Conflicts:
	Makefile
	flight/PiOS.posix/inc/pios_com.h
	flight/targets/RevoMini/UAVObjects.inc
	flight/targets/Revolution/Makefile
2013-03-23 14:37:19 +01:00
Oleg Semyonov
14db5c80f1 ut: change xml output directory to make Bamboo a bit happier 2013-03-03 14:33:04 +01:00
Stacey Sheldon
67de4f0e0c ut: drop dependency on C++0x 2013-03-03 14:33:04 +01:00
Stacey Sheldon
ea09a53adc unittest: build gtest-all and gtest_main directly
Conflicts:
	make/unittest.mk
2013-03-03 14:33:03 +01:00
Stacey Sheldon
9b94eeb745 ut: convert logfs unit test to gtest
Conflicts:
	Makefile
	make/unittest.mk
2013-03-03 14:33:03 +01:00
Stacey Sheldon
fb4a1d7b1b gtest: stop compiling gtest libraries on installation 2013-03-03 14:33:03 +01:00
Stacey Sheldon
14c5af6148 ut: convert make rules to template and add TAP file generation
Make targets changed to:
 make ut_<test>
 make ut_<test>_tap
 make ut_<test>_run
 make ut_<test>_clean
 make all_ut
 make all_ut_tap
 make all_ut_run
 make all_ut_clean

Conflicts:
	Makefile
2013-03-03 14:33:03 +01:00
Stacey Sheldon
06f805b00e ut: add googletest (gtest) install rules
See: http://code.google.com/p/googletest/
2013-03-03 14:33:03 +01:00
Stacey Sheldon
264d76382b makefile: allow arch-specific path to qmake
This will be required once we move to Qt5.
2013-03-03 14:33:03 +01:00
Stacey Sheldon
e05ec8ed27 ut: drop dependency on C++0x
Conflicts:
	make/unittest.mk
2013-03-03 14:33:03 +01:00
Stacey Sheldon
60c06b8c4b ut: add unit test build infrastructure
New build targets:
  make ut_all
  make ut_clean

to build (or clean) all unit tests.
2013-03-03 14:33:02 +01:00
Oleg Semyonov
97436166e3 Merge remote-tracking branch 'origin/next' into os/OP-775_arm-dsplib 2013-02-06 12:55:14 +02:00
Oleg Semyonov
17a9c7c1de build-info.txt: minor text fix
This template will be used to comment auto builds created with Bamboo.
Currently it is emulated by Bamboo build agents using build scripts,
but should be generated using Makefile. As soon as majority of branches
will be updated to this next, those scripts will be removed and this
template used.
2013-02-06 00:51:38 +02:00
Oleg Semyonov
e09705d604 Makefile: add build-info target (for CI builds) 2013-02-04 15:56:11 +02:00
Corvus Corax
7642f44cad Merge remote branch 'origin/corvuscorax/sanity_additions' into corvus/directory_and_sanity
Conflicts:
	flight/Modules/FirmwareIAP/firmwareiap.c
	flight/Modules/ManualControl/manualcontrol.c
	flight/targets/SimPosix/Makefile
	shared/uavobjectdefinition/systemalarms.xml
2013-02-03 14:57:54 +01:00
Stacey Sheldon
e55519b1e2 makefile: split tool install rules into separate makefile
The rules for downloading/building/installing the various
tools were cluttering the top-level makefile.

Conflicts:

	Makefile
2013-01-28 02:29:08 +02:00
Alessio Morale
f293298118 Merge remote-tracking branch 'origin/revo-fixes' into amorale/revo-merge
Conflicts:
	flight/Modules/ManualControl/manualcontrol.c
	make/scripts/version-info.py
	package/Makefile.linux
2013-01-19 20:23:48 +01:00
Oleg Semyonov
2328469e71 [OP-775] Update link template and makefiles to include optional $(ALLLIB) depenencies 2012-12-30 21:53:24 +02:00
Oleg Semyonov
b616c33903 [OP-775] Add create library template 2012-12-30 21:53:23 +02:00
Oleg Semyonov
1e3c47dffa version-info.py: reformat source according to python style guide
http://www.python.org/dev/peps/pep-0008/#indentation
"Use 4 spaces per indentation level."
2012-12-14 03:10:33 +02:00
Oleg Semyonov
58e62d4f86 [OP-703] Add default string as a source origin when using build servers
Bamboo does not preserve git repository origin when making builds, and
it is shown later in About dialog as "Built from None". This patch fixes
that providing more accurate source description.
2012-12-14 03:08:20 +02:00