X-Git-Url: http://git.megacz.com/?a=blobdiff_plain;f=Makefile;h=7b027e2e1f20e15796ee61648e4752a5e099c3a5;hb=f17df62ee603a39a5ff8d499dfaf0a6d8fe19353;hp=7eb0c165ab4e19c4aba8b1f45f77c78c3cf0dd07;hpb=b89edf07b45b7821a31388f2467ad74d99870d60;p=slipway.git diff --git a/Makefile b/Makefile index 7eb0c16..7b027e2 100644 --- a/Makefile +++ b/Makefile @@ -1,15 +1,28 @@ ifeq ($(shell uname),Darwin) -linkerflags = -Wl,-framework -Wl,IOKit -Wl,-framework -Wl,CoreFoundation +linkerflags = -Wl,-framework -Wl,IOKit -Wl,-framework -Wl,CoreFoundation -dynamiclib -framework JavaVM jnilib = libFtdiUartNative.jnilib else linkerflags = jnilib = libFtdiUartNative.so endif -## slipway ############################################################################ +## demos ############################################################################ + +asyncdemo: slipway.jar + java -cp slipway.jar edu.berkeley.slipway.demos.FastestMicropipelineFifoDemo misc/data/async/ + +demo: slipway.jar + java -cp slipway.jar edu.berkeley.slipway.demos.Demo 30 -run: slipway.jar - java -cp slipway.jar edu.berkeley.slipway.Demo < bitstreams/led0.md4 +demo2: slipway.jar + java -cp slipway.jar edu.berkeley.slipway.demos.Demo2 30 + +mpardemo: upstream/jhdl-edifparser.jar slipway.jar + iverilog -t fpga -s main -o out.edf misc/mpardemo.v + java -cp slipway.jar:upstream/jhdl-edifparser.jar edu.berkeley.slipway.mpar.MPARDemo out.edf + + +## slipway ############################################################################ build/src/com/ftdi/usb/FtdiUart.c: src/com/ftdi/usb/FtdiUart.i mkdir -p `dirname $@` @@ -17,18 +30,18 @@ build/src/com/ftdi/usb/FtdiUart.c: src/com/ftdi/usb/FtdiUart.i swig -module FtdiUartNative -noproxy -package com.ftdi.usb -o $@ -outdir `dirname $@` -java $< build/$(jnilib): build/src/com/ftdi/usb/FtdiUart.c upstream/libusb/.built - gcc -I. -Iupstream/libftdi -Iupstream/usb \ + gcc -I. -Iupstream/libftdi -Iupstream/libusb \ -I$(JAVA_HOME)/include \ $< \ upstream/libftdi/ftdi.c \ upstream/libusb/.libs/libusb.a \ $(linkerflags) \ - -o $@ -dynamiclib -framework JavaVM + -o $@ -slipway.jar: build/$(jnilib) $(shell find src build/src -name \*.java) bitstreams/slipway_drone.bst +slipway.jar: build/$(jnilib) $(shell find src build/src -name \*.java) misc/slipway_drone.bst upstream/jhdl-edifparser.jar mkdir -p build - javac -d build $(shell find src build/src -name \*.java) - cp bitstreams/slipway_drone.bst build/edu/berkeley/slipway/ + $(javac) -d build $(shell find src build/src -name \*.java) + cp misc/slipway_drone.bst build/edu/berkeley/slipway/ cd build; jar cvf ../$@ . @@ -37,7 +50,7 @@ slipway.jar: build/$(jnilib) $(shell find src build/src -name \*.java) bitstream upstream/libusb: mkdir -p `dirname $@` - cd upstream; curl http://umn.dl.sourceforge.net/sourceforge/libusb/libusb-0.1.12.tar.gz | tar -xvzf - + cd upstream; curl http://voxel.dl.sourceforge.net/sourceforge/libusb/libusb-0.1.12.tar.gz | tar -xvzf - cd upstream; mv libusb-0.1.12 libusb upstream/libusb/.built: upstream/libusb @@ -46,34 +59,36 @@ upstream/libusb/.built: upstream/libusb make touch $@ +javac = javac -cp upstream/jhdl-edifparser.jar #java = java -Djava.library.path=$(shell pwd)/lib/ -cp lib/RXTXcomm.jar:slipway.jar ## for rebuilding usbdrone.hex ########################################################### -build/slipway_drone.hex: src/edu/berkeley/slipway/FtdiBoardSlave.c upstream/avr-libc/.built +build/slipway_drone.hex: src/edu/berkeley/slipway/SlipwaySlave.c upstream/avr-libc/.built upstream/prefix/bin/avr-gcc -O3 -mmcu=at94k $< -o $@.o upstream/prefix/bin/avr-objcopy -O ihex $@.o $@ # this only works on my personal setup [adam] -bitstreams/slipway_drone.bst: build/slipway_drone.hex - cp $< /afs/research.cs.berkeley.edu/user/megacz/edu.berkeley.obits/usbdrone.hex - fs flush /afs/research.cs.berkeley.edu/user/megacz/edu.berkeley.obits/usbdrone.hex - echo okay... - read - rm /afs/research.cs.berkeley.edu/user/megacz/edu.berkeley.obits/usbdrone.hex - diff -u /afs/research.cs.berkeley.edu/user/megacz/stupid/fpslic_stupid.bst $@ && exit -1; true - mv /afs/research.cs.berkeley.edu/user/megacz/stupid/fpslic_stupid.bst $@ - touch $@ +#misc/slipway_drone.bst: build/slipway_drone.hex +# cp $< /afs/research.cs.berkeley.edu/user/megacz/slipway/$< +# fs flush /afs/research.cs.berkeley.edu/user/megacz/slipway/$< +# echo okay... +# read +# rm /afs/research.cs.berkeley.edu/user/megacz/slipway/$< +# diff -u /afs/research.cs.berkeley.edu/user/megacz/slipway/$@ $@ && \ +# exit -1; true +# mv /afs/research.cs.berkeley.edu/user/megacz/slipway/$@ $@ +# touch $@ ## avr-gcc toolchain and libc ################################################################ upstream/binutils: - cd upstream; curl http://ftp.gnu.org/pub/pub/pub/gnu/binutils/binutils-2.16.1.tar.bz2 | tar -xvjf - - cd upstream; mv binutils-2.16.1 binutils + cd upstream; curl http://ftp.gnu.org/pub/pub/pub/gnu/binutils/binutils-2.19.1.tar.bz2 | tar -xvjf - + cd upstream; mv binutils-2.19.1 binutils upstream/binutils/.built: upstream/binutils mkdir -p upstream/prefix @@ -99,7 +114,7 @@ upstream/gcc/.built: upstream/gcc upstream/binutils/.built touch $@ upstream/avr-libc: - cd upstream; curl http://download.savannah.gnu.org/releases/avr-libc/avr-libc-1.4.3.tar.bz2 | tar -xvjf - + cd upstream; curl http://nongnu.askapache.com/avr-libc/avr-libc-1.4.3.tar.bz2 | tar -xvjf - cd upstream; mv avr-libc-1.4.3 avr-libc upstream/avr-libc/.built: upstream/avr-libc upstream/gcc/.built @@ -108,4 +123,29 @@ upstream/avr-libc/.built: upstream/avr-libc upstream/gcc/.built ./configure --prefix=$(shell pwd)/upstream/prefix --host=avr && \ PATH=$$PATH:$(shell pwd)/upstream/prefix/bin make && \ PATH=$$PATH:$(shell pwd)/upstream/prefix/bin make install - touch $@ \ No newline at end of file + touch $@ + + +## edif parser ########################################################################## + +upstream/jhdl-edifparser.jar: + mkdir -p upstream + curl -o $@- http://reliability.ee.byu.edu/edif/jars/release_0.3.0/edif-0.3.0.jar + mv $@- $@ + +## javadoc ############################################################################## + +javadoc: + rm -rf doc/api + mkdir -p doc/api + javadoc \ + -linksource \ + -windowtitle "abits" \ + -sourcepath src \ + -public \ + -notree \ + -noindex \ + -nonavbar \ + -noqualifier all \ + -d doc/api \ + `find src -name \*.java`