A convenient makefile

Sören Jonsson sorjon02 at gmail.com
Fri Jun 6 19:54:43 CEST 2014


Hello,

I have recently made fiasco and the l4Re, and found that it can be a 
little tricky. It is a few Debian packages that can be easy to forget to 
install on your computer etc.

In order to make it easier to remember all details I developed the 
attached Makefile. I have tested it fairly well, and it makes it easy to 
download and make both l4Fiasco and the l4Re on a Debian or Ubuntu 
machine. It should be easy to modify to work with Red Hat as well.

Documentation:
"make envesetup" will install all necessary packages except the "make" 
package. That has to be installed previously.

"make downloads" will download l4Fiasco, the l4Re, and l4Linux to your 
computer

"make kernelsetup" will create the directory fiasco_bld in your current 
directory and configure the build there.

"make resetup" will create the directory l4Re_bld in your current 
directory and configure the build of l4Re in that directory.

I have found the Makefile very convenient, and decided to post it to the 
l4-hackers  mailing list in the case that it can help more people than 
me. I hope that you like it.

Best regards,

Sören Jonsson
Sweden
-------------- next part --------------
#
#  This makefile will create an environment that will make it easy to make
#  the L4 Fiasco.OC microkernel and L4Re runtime environment on any Linux
#  machine using the apt-get package manager. Thease include
#  Debian and Ubuntu. The script has been developed and tested on Debian.
#
THISDIR=$(shell pwd)
FIASCOBUILD=$(THISDIR)/fiasco_bld
REBUILD=$(THISDIR)/l4Re_bld
L4LINUXBUILD=$(THISDIR)/l4linux_bld
ADDR1=http://svn.tudos.org/repos/oc/tudos/trunk/repomgr
ADDR2=http://svn.tudos.org/repos/oc/tudos
ADDR3=http://svn.tudos.org/repos/oc/l4linux/trunk

all: 


envsetup.sh:
	echo "apt-get -y install libncurses5" > envsetup.sh;
	echo "apt-get -y install make" >> envsetup.sh;
	echo "apt-get -y install gawk" >> envsetup.sh;
	echo "apt-get -y install g++" >> envsetup.sh;
	echo "apt-get -y install binutils" >> envsetup.sh;
	echo "apt-get -y install pkg-config" >> envsetup.sh;
	echo "apt-get -y install subversion" >> envsetup.sh;
	echo "apt-get -y install gcc-multilib" >> envsetup.sh;
	echo "apt-get -y install g++-multilib" >> envsetup.sh;
	echo "apt-get -y install qemu" >> envsetup.sh;
	echo "apt-get -y install perl" >> envsetup.sh;
	/bin/chmod u+x envsetup.sh

envsetup: envsetup.sh
	/usr/bin/sudo $(THISDIR)/envsetup.sh

downloads:
	svn cat $(ADDR1) | perl - init $(ADDR2) fiasco l4re 
	svn co $(ADDR3) l4linux

kernelsetup:
	cd $(THISDIR)/src/kernel/fiasco && \
	make BUILDDIR=$(THISDIR)/fiasco_bld
	cd $(THISDIR)/fiasco_bld && \
	make menuconfig

resetup:
	cd src/l4 && \
	make B=$(REBUILD) && \
	make O=$(REBUILD) config




More information about the l4-hackers mailing list