mirror of
https://bitbucket.org/librepilot/librepilot.git
synced 2024-12-01 09:24:10 +01:00
OP-483: update Windows build system, provide install replacement
Since msysGit lacks the install command, simple cp -f replacement
is provided. Don't forget to copy it into the msysGit bin subdirectory.
Introduced CLEAN_BUILD=NO make option to test packaging w/o cleaning.
Recommended for test builds only, not for production run.
make -j works great after PyMite dependency fix by commit
0005729056
So comment is updated as well.
This commit is contained in:
parent
bac95dae11
commit
b33d093a7a
@ -37,17 +37,18 @@ locations (but any other locations are fine as well):
|
||||
- QtSDK in C:\Qt\2010.05
|
||||
- msysGit in %ProgramFiles%\Git
|
||||
- Unicode NSIS in %ProgramFiles%\NSIS\Unicode
|
||||
- OpenOCD in C:\OpenOCD\0.4.0\bin
|
||||
|
||||
Also it is assumed that you have the C:\Program Files\Git\cmd\ directory in
|
||||
the PATH. Usually this is the case for msysGit installation if you have chosen
|
||||
the 2nd option: put only git and gitk in the PATH (it is recommended option).
|
||||
|
||||
Now you need to copy two files to your msysGit installation folders.
|
||||
Now you need to copy few files to your msysGit installation folders.
|
||||
Assuming that you installed the msysGit into C:\Program Files\Git\,
|
||||
you have to copy:
|
||||
|
||||
make\winx86\bin\make -> C:\Program Files\Git\bin\
|
||||
make\winx86\cmd\sh.cmd -> C:\Program Files\Git\cmd\
|
||||
make\winx86\bin\* -> C:\Program Files\Git\bin\
|
||||
make\winx86\cmd\* -> C:\Program Files\Git\cmd\
|
||||
|
||||
If you have msysGit installed into another directory, you need to update paths
|
||||
accordingly. Also if you have tools installed into different directories and
|
||||
|
15
make/winx86/bin/install
Normal file
15
make/winx86/bin/install
Normal file
@ -0,0 +1,15 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# simple install command replacement for Windows
|
||||
#
|
||||
# This file should be put into C:\Program Files\Git\bin\ subdirectory
|
||||
# (or similar, depeding on where the msysGit package was installed)
|
||||
# to provide a make command to unix-like build environment on Windows.
|
||||
#
|
||||
# See also:
|
||||
# README.txt
|
||||
# http://wiki.openpilot.org/display/Doc/GCS+Development+on+Windows
|
||||
# http://wiki.openpilot.org/display/Doc/Firmware+Development+on+Windows
|
||||
#
|
||||
|
||||
cp -f $*
|
@ -1,6 +1,8 @@
|
||||
#!/bin/sh
|
||||
#
|
||||
# This file is to be put into C:\Program Files\Git\bin\ subdirectory
|
||||
# make command replacement for Windows
|
||||
#
|
||||
# This file should be put into C:\Program Files\Git\bin\ subdirectory
|
||||
# (or similar, depeding on where the msysGit package was installed)
|
||||
# to provide a make command to unix-like build environment on Windows.
|
||||
#
|
||||
|
@ -1 +1,9 @@
|
||||
#
|
||||
# make command replacement to run from command prompt under bash
|
||||
#
|
||||
# This file should be put into C:\Program Files\Git\cmd\ subdirectory
|
||||
# (or similar, depeding on where the msysGit package was installed)
|
||||
# to provide a shell prompt in the unix-like build environment on Windows.
|
||||
#
|
||||
|
||||
exec /bin/make $*
|
||||
|
@ -1,6 +1,6 @@
|
||||
@echo off
|
||||
rem
|
||||
rem This file is to be put into C:\Program Files\Git\cmd\ subdirectory
|
||||
rem This file should be put into C:\Program Files\Git\cmd\ subdirectory
|
||||
rem (or similar, depeding on where the msysGit package was installed)
|
||||
rem to provide a shell prompt in the unix-like build environment on Windows.
|
||||
rem
|
||||
@ -56,6 +56,7 @@ call :which QTSDK "C:\Qt\2010.05\qt\bin" qmake.exe
|
||||
call :which CODESOURCERY "C:\CodeSourcery\bin" cs-make.exe
|
||||
call :which PYTHON "C:\Python27" python.exe
|
||||
call :which UNSIS "%ProgramFiles%\NSIS\Unicode" makensis.exe
|
||||
call :which OPENOCDBIN "C:\OpenOCD\0.4.0\bin" openocd.exe
|
||||
|
||||
if "%NOT_FOUND%" == "" goto set_path
|
||||
|
||||
|
@ -4,12 +4,8 @@
|
||||
# Tried the best to support parallel (-j) builds. But since this Makefile
|
||||
# uses other Makefiles to build few targets which in turn have similar
|
||||
# dependencies on uavobjects and other generated files, it is difficult
|
||||
# to support parallel builds perfectly.
|
||||
#
|
||||
# Looks like it works for -j8, but fails for -j (unlimited jobs).
|
||||
# So probably not a bad idea is to build release in single thread.
|
||||
#
|
||||
#.NOTPARALLEL:
|
||||
# to support parallel builds perfectly. But at least it was tested with
|
||||
# -j (unlimited job number) on Windows and Linux.
|
||||
|
||||
# Locate the root of the tree
|
||||
WHEREAMI := $(dir $(lastword $(MAKEFILE_LIST)))
|
||||
@ -41,9 +37,11 @@ help:
|
||||
@echo
|
||||
@echo " [Release build and packaging]"
|
||||
@echo " release - Build and package the OpenPilot release"
|
||||
@echo " release_flight - Build and package the OpenPilot flight firmware"
|
||||
@echo
|
||||
@echo " Notes:"
|
||||
@echo " - the build directory will be removed first on every run"
|
||||
@echo " unless CLEAN_BUILD=NO is defined (recommended for testing only)"
|
||||
@echo " - release packages will be placed in $(RELEASE_DIR)"
|
||||
@echo
|
||||
|
||||
@ -52,7 +50,9 @@ uavobjects: all_clean
|
||||
$(V1) $(MAKE) -C $(ROOT_DIR) $@
|
||||
|
||||
all_clean:
|
||||
ifneq ($(CLEAN_BUILD), NO)
|
||||
$(V1) $(MAKE) -C $(ROOT_DIR) $@
|
||||
endif
|
||||
|
||||
# Install template:
|
||||
# $1 = target
|
||||
|
Loading…
Reference in New Issue
Block a user