Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Comparing changes

Choose two branches to see what's changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
base fork: m-labs/scripts
base: 27daaa1
...
head fork: m-labs/scripts
compare: fdc2633
Checking mergeability… Don't worry, you can still create the pull request.
  • 18 commits
  • 4 files changed
  • 0 commit comments
  • 3 contributors
View
27 README
@@ -1,27 +1,2 @@
-====
-0. make sure you have write access to `/opt/rtems-4.11'
-1. export variables needed to compile Milkymist, add those to your .bashrc
- $ RTEMS_MAKEFILE_PATH=/opt/rtems-4.11/lm32-rtems4.11/milkymist
- $ export RTEMS_MAKEFILE_PATH
-
- $ PATH=/opt/rtems-4.11/bin:${PATH}
- $ export PATH
-
-2. compile and install
- download toolchain sources and compile toolchain
- $ make -C compile-lm32-rtems
-
- clone all milkymist one git repos
- $ make -C compile-flickernoise milkymist-git-clone
-
- compile flickernoise
- $ make -C compile-flickernoise flickernoise.fbi
-
-====
- `build' script file is for build all milkymist one images, you need the
- Xilinx ISE tools for synthesis the bitstream
-
-===
- `reflash_m1.sh' script file is for download images and reflash milkymist one
- by using UrJtag, you need UrJtag for flash milkymist one
+ See the READ.html file.
View
206 README.html
@@ -0,0 +1,206 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
+<html lang="en">
+<HEAD>
+<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
+<TITLE>MilkyMist Scripts README</TITLE>
+</HEAD>
+
+<body>
+<h1 align="center">MilkyMist Scripts README</h1>
+
+<h2>Contents</h2>
+
+<ol>
+<li><a href="#secDownload">Where to get the MilkyMist scripts</a>
+<li><a href="#secRun">Running the scripts</a>
+<ol>
+<li><a href="#secToolchain">Build the MilkyMist tool chain and Flickernoise</a>
+<li><a href="#secBitstream">Bitstream Synthesis</a>
+<li><a href="#secReflash">MilkyMist reflash</a>
+</ol>
+<li><a href="#secHost">Host Specific Requirements</a>
+<ol>
+<li><a href="#secUbuntu">Ubuntu 11.04 Desktop</a>
+<li><a href="#secOSX">Mac OS X 10.6 Snow Leopard</a>
+</ol>
+</ol>
+
+<h2><a name="secDownload">Where to get the MilkyMist scripts</a></h2>
+The scripts can be downloaded from the MilkyMist git repository at github:
+<pre>
+git clone git://github.com/milkymist/scripts.git
+</pre>
+
+<h2><a name="secRun">Running the scripts</a></h2>
+<h3><a name="secToolchain">Build the MilkyMist tool chain and Flickernoise</a></h3>
+The scripts checkout the milkymist git repository to "../" so you need write access to the parent directory from where you issue the following commands.
+
+<OL>
+<LI>Check the <a href="#secHost">Host Specific Requirements</a> for your computer.
+<LI>Make sure you have write access to `/opt/rtems-4.11'
+
+<LI>Export variables needed to compile Milkymist, add those to your .bashrc:
+ <pre>
+ $ RTEMS_MAKEFILE_PATH=/opt/rtems-4.11/lm32-rtems4.11/milkymist
+ $ export RTEMS_MAKEFILE_PATH
+
+ $ PATH=/opt/rtems-4.11/bin:${PATH}
+ $ export PATH
+ </pre>
+
+<LI>Compile and install.
+ download toolchain sources and compile toolchain:
+ <pre>
+ $ make -C compile-lm32-rtems
+ </pre>
+
+<LI>Clone all milkymist one git repos:
+ <pre>
+ $ make -C compile-flickernoise milkymist-git-clone
+ </pre>
+
+<LI>Build the host tools:
+ <pre>
+ $ make -C ../milkymist/milkymist.git/tools
+ $ sudo make -C ../milkymist/milkymist.git/tools install
+ </pre>
+
+<LI>Compile flickernoise:
+ <pre>
+ $ make -C compile-flickernoise flickernoise.fbi
+ </pre>
+</OL>
+
+
+<h3><a name="secBitstream">Bitstream Synthesis</a></h3>
+
+ `build' script file is for build all milkymist one images, you need the
+ Xilinx ISE tools for synthesis of the bitstream.
+
+<h3><a name="secReflash">MilkyMist reflash script</a></h3>
+
+ `reflash_m1.sh' script file is for download images and reflash milkymist one
+ by using UrJtag, you need UrJtag to flash the milkymist one.
+
+<h2><a name="secHost">Host Specific Requirements</a></h2>
+<h3><a name="secUbuntu">Ubuntu 11.04 Desktop</a></h3>
+<p>
+Install the following packages (package / package name):
+<UL>
+ <LI>autotools: autotools-dev
+ <LI>automake: automake
+ <LI>jpeg: libjpeg-dev
+ <LI>freetype: libfreetype6-dev
+ <LI>clang: clang
+ <LI>gcc-multilib: gcc-multilib (for flterm 'asm/ioctls.h' file not found error)
+ <LI>GD graphics library: libgd2-xpm-dev
+ <LI>makeinfo: texinfo
+ <LI>curses: libncurses-dev
+ <LI>lemon: lemon
+ <LI>re2c: re2c
+</UL>
+
+<h3><a name="secOSX">Mac OS X 10.6 Snow Leopard</a></h3>
+<OL>
+<LI>Update autotools
+OS X 10.6 and prior require updated autotools. Download, build, and install automake and autoconf and add them to your path. Note that aclocal does not call the autoconf binary, so the _path_ that your autoconf is in doesn't matter. It _does_ look at m4 macros, though, and it appears to find autoconf macros out of /usr/share, which corresponds to the system autoconf (2.61 on osx). Therefore you must rename or delete the following to use the newly installed versions:
+
+<pre>
+/usr/bin/autoheader
+/usr/bin/autoconf
+/usr/bin/aclocal
+/usr/bin/autom4te
+/usr/share/autoconf
+/usr/share/automake
+</pre>
+
+<LI> Install wget. The Makefiles use wget instead of curl. So build and install wget:
+<pre>
+$ curl ftp://ftp.gnu.org/gnu/wget/wget-1.12.tar.gz -o wget-1.12.tar.gz
+$ tar xzvf wget-1.12.tar.gz
+$ cd wget-1.12
+$ ./configure --prefix=/opt
+$ make
+$ make install
+</pre>
+
+<LI> Install lemon. OS X also needs the Lemon parser generator. It needs to be built from source as shown:
+<pre>
+$ curl http://www.sqlite.org/cvstrac/getfile/sqlite/tool/lemon.c -o lemon.c
+$ curl http://www.sqlite.org/cvstrac/getfile/sqlite/tool/lempar.c -o lempar.c
+$ gcc -o lemon lemon.c
+$ cp lemon lempar.c /opt/bin
+</pre>
+
+<LI> Install re2c. OS X also needs re2c from http://sourceforge.net/projects/re2c/
+<pre>
+$ curl http://surfnet.dl.sourceforge.net/project/re2c/re2c/0.13.5/re2c-0.13.5.tar.gz -o re2c-0.13.5.tar.gz
+$ tar xzvf re2c-0.13.5.tar.gz
+$ cd re2c-0.13.5
+$ ./configure --prefix=/opt
+$ make
+$ make install
+</pre>
+
+<LI> Install sed. (OS X sed behaves differently from what the Makefile expects):
+<pre>
+$ curl ftp://ftp.gnu.org/gnu/sed/sed-4.2.tar.gz -o sed-4.2.tar.gz
+$ tar xzvf sed-4.2.tar.gz
+$ cd sed-4.2
+$ ./configure --prefix=/opt
+$ make
+$ make install
+</pre>
+
+<LI> Install Freetype.
+<pre>
+$ curl http://download.savannah.gnu.org/releases/freetype/freetype-2.4.5.tar.gz -o freetype-2.4.5.tar.gz
+$ tar xzvf freetype-2.4.5.tar.gz
+$ cd freetype-2.4.5
+$ ./configure --prefix=/opt
+$ make
+$ make install
+</pre>
+
+<LI> Install libjpeg.
+<pre>
+$ curl http://www.ijg.org/files/jpegsrc.v8c.tar.gz -o jpegsrc.v8c.tar.gz
+$ tar xzvf jpegsrc.v8c.tar.gz
+$ cd jpeg-8c
+$ ./configure --prefix=/opt
+$ make
+$ make install
+</pre>
+
+<LI> Install XMP library.
+<pre>
+$ curl ftp://ftp.x.org/contrib/libraries/xpm-3.4k.tar.gz -o xpm-3.4k.tar.gz
+$ make -f Makefile.noX
+$ make -f Makefile.noX install
+</pre>
+
+<LI> Install Portable Network Graphics library.
+<pre>
+$ curl http://cdnetworks-us-1.dl.sourceforge.net/project/libpng/libpng15/1.5.4/libpng-1.5.4.tar.gz -o libpng-1.5.4.tar.gz
+$ tar xzvf libpng-1.5.4.tar.gz
+$ cd libpng-1.5.4
+$ ./configure --prefix=/opt
+$ make
+$ make install
+</pre>
+
+<LI> Install the GD Graphics Library.
+<pre>
+$ curl https://bitbucket.org/pierrejoye/gd-libgd/get/GD_2_0_33.tar.gz -o GD_2_0_33.tar.gz
+$ tar xzvf GD_2_0_33.tar.gz
+$ cd pierrejoye-gd-libgd-5551f61978e3/src
+$ ./configure
+edit the generated config.h file and comment out the line:
+ #define HAVE_LIBFONTCONFIG 1
+to
+ /* #define HAVE_LIBFONTCONFIG 1 */
+$ make
+$ make install
+</pre>
+</OL>
+</body>
View
24 compile-flickernoise/Makefile
@@ -17,6 +17,10 @@
# before compile flickernoise. you need the lm32-rtems toolchain and rtems
+# For Mac OS X use curl.
+WGET=wget -c -O
+# WGET=curl -o
+
# export PATH=/opt/rtems-4.11/bin:$PATH
# export RTEMS_MAKEFILE_PATH=/opt/rtems-4.11/lm32-rtems4.11/milkymist
@@ -49,6 +53,8 @@ MILKYMIST_GIT_DIR:=../../milkymist
CONFIGURE_VARS=CC=lm32-rtems4.11-gcc \
AR=lm32-rtems4.11-ar \
+ LD=lm32-rtems4.11-ld \
+ RANLIB=lm32-rtems4.11-ranlib \
CFLAGS="-O9 -Wall -mbarrel-shift-enabled \
-mmultiply-enabled -mdivide-enabled -msign-extend-enabled \
-I $(RTEMS_MAKEFILE_PATH)/lib/include \
@@ -247,54 +253,54 @@ autotest-m1-boot.bin:
####
$(DL)/$(ZLIB).ok:
mkdir -p dl
- wget -c -O $(DL)/$(ZLIB) http://zlib.net/$(ZLIB)
+ $(WGET) $(DL)/$(ZLIB) http://zlib.net/$(ZLIB)
touch $@
$(DL)/$(LIBPNG).ok:
mkdir -p dl
- wget -c -O $(DL)/$(LIBPNG) \
+ $(WGET) $(DL)/$(LIBPNG) \
http://dfn.dl.sourceforge.net/project/libpng/libpng15/$(LIBPNG_VERSION)/$(LIBPNG)
touch $@
$(DL)/$(LIBJPEG).ok:
mkdir -p dl
- wget -c -O $(DL)/$(LIBJPEG) \
+ $(WGET) $(DL)/$(LIBJPEG) \
http://www.ijg.org/files/$(LIBJPEG)
touch $@
$(DL)/$(OPENJPEG).ok:
mkdir -p dl
- wget -c -O $(DL)/$(OPENJPEG) \
+ $(WGET) $(DL)/$(OPENJPEG) \
http://www.openjpeg.org/$(OPENJPEG)
touch $@
$(DL)/$(JBIG2DEC).ok:
mkdir -p dl
- wget -c -O $(DL)/$(JBIG2DEC) \
+ $(WGET) $(DL)/$(JBIG2DEC) \
http://ghostscript.com/~giles/jbig2/jbig2dec/$(JBIG2DEC)
touch $@
$(DL)/$(FREETYPE2).ok:
mkdir -p dl
- wget -c -O $(DL)/$(FREETYPE2) \
+ $(WGET) $(DL)/$(FREETYPE2) \
http://ufpr.dl.sourceforge.net/project/freetype/freetype2/$(FREETYPE2_VERSION)/$(FREETYPE2)
touch $@
$(DL)/$(MUPDF).ok:
mkdir -p dl
- wget -c -O $(DL)/$(MUPDF) \
+ $(WGET) $(DL)/$(MUPDF) \
http://mupdf.com/download/archive/$(MUPDF)
touch $@
$(DL)/$(CURL).ok:
mkdir -p dl
- wget -c -O $(DL)/$(CURL) \
+ $(WGET) $(DL)/$(CURL) \
http://curl.haxx.se/download/$(CURL)
touch $@
$(DL)/$(EXPAT).ok:
mkdir -p dl
- wget -c -O $(DL)/$(EXPAT) \
+ $(WGET) $(DL)/$(EXPAT) \
http://download.sourceforge.net/project/expat/expat/$(EXPAT_VERSION)/expat-$(EXPAT_VERSION).tar.gz
touch $@
clean:
View
52 compile-lm32-rtems/Makefile
@@ -20,6 +20,10 @@ RTEMS_PREFIX=/opt/rtems-$(RTEMS_VERSION)
RTEMS_SOURCES_URL=http://www.rtems.org/ftp/pub/rtems/SOURCES/$(RTEMS_VERSION)
+# For Mac OS X use curl.
+WGET=wget -c -O
+# WGET=curl -o
+
BINUTILS_VERSION=2.21
GCC_CORE_VERSION=4.5.2
NEWLIB_VERSION=1.19.0
@@ -35,7 +39,7 @@ NEWLIB=newlib-$(NEWLIB_VERSION).tar.gz
GCC_G++=gcc-g++-$(GCC_G++_VERSION).tar.bz2
GDB=gdb-$(GDB_VERSION).tar.bz2
GMP=gmp-$(GMP_VERSION).tar.bz2
-MPC=mpc-$(MPC_VERSION).tar.bz2
+MPC=mpc-$(MPC_VERSION).tar.gz
MPFR=mpfr-$(MPFR_VERSION).tar.bz2
BINUTILS_PATCH=binutils-$(BINUTILS_VERSION)-rtems$(RTEMS_VERSION)-20110107.diff
@@ -99,11 +103,18 @@ gcc-$(GCC_CORE_VERSION)/newlib: .unzip.ok
)
touch $@
-.unzip.ok: $(DL)/$(BINUTILS).ok $(DL)/$(GCC_CORE).ok $(DL)/$(NEWLIB).ok $(DL)/$(GDB).ok
+.unzip.ok: $(DL)/$(BINUTILS).ok $(DL)/$(GCC_CORE).ok $(DL)/$(NEWLIB).ok $(DL)/$(GDB).ok $(DL)/$(MPFR).ok $(DL)/$(MPC).ok $(DL)/$(GMP).ok
tar xf $(DL)/$(BINUTILS)
tar xf $(DL)/$(GCC_CORE)
tar xf $(DL)/$(NEWLIB)
tar xf $(DL)/$(GDB)
+ tar xf $(DL)/$(GMP)
+ tar xf $(DL)/$(MPC)
+ tar xf $(DL)/$(MPFR)
+ rm -rf gcc-$(GCC_CORE_VERSION)/gmp gcc-$(GCC_CORE_VERSION)/mpc gcc-$(GCC_CORE_VERSION)/mpfr
+ ln -s ../gmp-$(GMP_VERSION) gcc-$(GCC_CORE_VERSION)/gmp
+ ln -s ../mpc-$(MPC_VERSION) gcc-$(GCC_CORE_VERSION)/mpc
+ ln -s ../mpfr-$(MPFR_VERSION) gcc-$(GCC_CORE_VERSION)/mpfr
touch $@
.install.gdb.ok: .compile.gdb.ok
@@ -121,43 +132,51 @@ gcc-$(GCC_CORE_VERSION)/newlib: .unzip.ok
$(RTEMS_PATCHES_DIR)/.ok:
mkdir -p $(RTEMS_PATCHES_DIR)
- wget -c -O $(RTEMS_PATCHES_DIR)/$(BINUTILS_PATCH) $(RTEMS_SOURCES_URL)/$(BINUTILS_PATCH)
- wget -c -O $(RTEMS_PATCHES_DIR)/$(GCC_CORE_PATCH) $(RTEMS_SOURCES_URL)/$(GCC_CORE_PATCH)
- wget -c -O $(RTEMS_PATCHES_DIR)/$(NEWLIB_PATCH) $(RTEMS_SOURCES_URL)/$(NEWLIB_PATCH)
- wget -c -O $(RTEMS_PATCHES_DIR)/$(GCC_G++_PATCH) $(RTEMS_SOURCES_URL)/$(GCC_G++_PATCH)
- wget -c -O $(RTEMS_PATCHES_DIR)/$(GDB_PATCH) $(RTEMS_SOURCES_URL)/$(GDB_PATCH)
+ $(WGET) $(RTEMS_PATCHES_DIR)/$(BINUTILS_PATCH) $(RTEMS_SOURCES_URL)/$(BINUTILS_PATCH)
+ $(WGET) $(RTEMS_PATCHES_DIR)/$(GCC_CORE_PATCH) $(RTEMS_SOURCES_URL)/$(GCC_CORE_PATCH)
+ $(WGET) $(RTEMS_PATCHES_DIR)/$(NEWLIB_PATCH) $(RTEMS_SOURCES_URL)/$(NEWLIB_PATCH)
+ $(WGET) $(RTEMS_PATCHES_DIR)/$(GCC_G++_PATCH) $(RTEMS_SOURCES_URL)/$(GCC_G++_PATCH)
+ $(WGET) $(RTEMS_PATCHES_DIR)/$(GDB_PATCH) $(RTEMS_SOURCES_URL)/$(GDB_PATCH)
touch $@
+
$(DL)/$(BINUTILS).ok:
mkdir -p $(DL)
- wget -c -O $(DL)/$(BINUTILS) $(RTEMS_SOURCES_URL)/$(BINUTILS)
+ $(WGET) $(DL)/$(BINUTILS) $(RTEMS_SOURCES_URL)/$(BINUTILS)
touch $@
+
$(DL)/$(GCC_CORE).ok:
mkdir -p $(DL)
- wget -c -O $(DL)/$(GCC_CORE) $(RTEMS_SOURCES_URL)/$(GCC_CORE)
+ $(WGET) $(DL)/$(GCC_CORE) $(RTEMS_SOURCES_URL)/$(GCC_CORE)
touch $@
+
$(DL)/$(GCC_G++).ok:
mkdir -p $(DL)
- wget -c -O $(DL)/$(GCC_G++) $(RTEMS_SOURCES_URL)/$(GCC_G++)
+ $(WGET) $(DL)/$(GCC_G++) $(RTEMS_SOURCES_URL)/$(GCC_G++)
touch $@
+
$(DL)/$(NEWLIB).ok:
mkdir -p $(DL)
- wget -c -O $(DL)/$(NEWLIB) $(RTEMS_SOURCES_URL)/$(NEWLIB)
+ $(WGET) $(DL)/$(NEWLIB) $(RTEMS_SOURCES_URL)/$(NEWLIB)
touch $@
+
$(DL)/$(GDB).ok:
mkdir -p $(DL)
- wget -c -O $(DL)/$(GDB) $(RTEMS_SOURCES_URL)/$(GDB)
+ $(WGET) $(DL)/$(GDB) $(RTEMS_SOURCES_URL)/$(GDB)
touch $@
+
$(DL)/$(GMP).ok:
mkdir -p $(DL)
- wget -c -O $(DL)/$(GMP) $(RTEMS_SOURCES_URL)/$(GMP)
+ $(WGET) $(DL)/$(GMP) $(RTEMS_SOURCES_URL)/$(GMP)
touch $@
+
$(DL)/$(MPC).ok:
mkdir -p $(DL)
- wget -c -O $(DL)/$(MPC) $(RTEMS_SOURCES_URL)/$(MPC)
+ $(WGET) $(DL)/$(MPC) $(RTEMS_SOURCES_URL)/$(MPC)
touch $@
+
$(DL)/$(MPFR).ok:
mkdir -p $(DL)
- wget -c -O $(DL)/$(MPFR) $(RTEMS_SOURCES_URL)/$(MPFR)
+ $(WGET) $(DL)/$(MPFR) $(RTEMS_SOURCES_URL)/$(MPFR)
touch $@
clean:
@@ -168,5 +187,8 @@ clean:
rm -rf newlib-$(NEWLIB_VERSION)
rm -rf gdb-$(GDB_VERSION)
rm -rf $(RTEMS_PATCHES_DIR)
+ rm -rf gmp-$(GMP_VERSION)
+ rm -rf mpc-$(MPC_VERSION)
+ rm -rf mpfr-$(MPFR_VERSION)
rm -rf .unzip.ok
rm -rf .patch.ok

No commit comments for this range

Something went wrong with that request. Please try again.