diff --git a/README.md b/README.md index 410faac2..43c7bc5c 100644 --- a/README.md +++ b/README.md @@ -20,28 +20,38 @@ Configure git on your machine. Some basic configurations follow: ``` bash $ git config --global user.name "FirstName OtherNames LastName" -$ git config --global user.email email@example.com +$ git config --global user.email user@rhrk.uni-kl.de $ git config --global credential.helper ’cache --timeout=3600’ $ git config --global color.ui auto ``` -Clone the repository. +In **user@rhrk.uni-kl.de** replace the word **user** in order to get your +own RHRK email account. + +Login using your **git.rhrk** account. Fork the repository by clicking in +**Fork** in the upper-right corner of this page. + +Now clone **your fork** of the official repository into a local folder in +computer. Replace the word **user** with your own RHRK user name. Note that it +appears two times in the line below. ``` bash -$ git clone --recursive https://@git.rhrk.uni-kl.de/EIT-Wehn/dram.vp.system.git +$ git clone --recursive https://user@git.rhrk.uni-kl.de/user/dram.vp.system.git ``` The *--recursive* flag tells git to initialize all submodules within the repository. **DRAMPower** [2] and **tinyxml** are examples third party repositories that were embedded within the source tree as submodules. -It is possible to work with a **fork** of the official codebase. In that case, -after pushing changes into your fork you should create a **pull request** in -order to get your changes merged into to the official codebase. +Now you can implement, test, commit and push features into your **fork** of +the official repository. -``` bash -$ git clone --recursive https://@git.rhrk.uni-kl.de//dram.vp.system.git -``` +When you consider your work stable enough to be merged into the official +repository it is time to open a **pull request** using the web interface of +git.rhrk.uni-kl.de. + +Your changes will be reviewed and finally integrated to the official +repository. After cloning go to the project directory. @@ -50,10 +60,10 @@ $ cd dram.vp.system ``` When working with a fork, the official repository must be added as a remote for -your fork. +your fork. Replace the word **user** with your own RHRK user name. ``` bash -$ git remote add upstream https://@git.rhrk.uni-kl.de/EIT-Wehn/dram.vp.system.git +$ git remote add upstream https://user@git.rhrk.uni-kl.de/EIT-Wehn/dram.vp.system.git $ git remote -v ``` @@ -65,10 +75,6 @@ $ git fetch upstream $ git checkout master $ git merge upstream/master $ git push origin HEAD -``` - -You may need to update your submodules. -```bash $ git submodule update --init --recursive ``` @@ -79,33 +85,34 @@ They are: - SystemC 2.3.1 and TLM 2.0 - The sources can be downloaded from [this](http://accellera.org/downloads/standards/systemc). +You can use [getsysc.sh](./getsysc.sh). First read and understand the script +than execute it. - For installation instructions see the installation notes file contained in - the release package. +``` bash +$ bash getsysc.sh +``` - Alternatively, you can use [getsysc.sh](./getsysc.sh). First read and - understand the script than execute it. +Alternatively, the sources can be downloaded from [here](http://accellera.org/downloads/standards/systemc). -- qwt-6.1.3 +For installation instructions see the installation notes file contained in the release package. - ```bash - $ svn checkout svn://svn.code.sf.net/p/qwt/code/branches/qwt-6.1 - $ cd qwt-6.1 - $ qmake qwt.pro - $ make - $ sudo make install - ``` +- qwt-6.1 - For further information refer to [this](http://qwt.sourceforge.net/) +You can use [getqwt.sh](./getqwt.sh). First read and understand the script +than execute it. + +```bash +$ bash getqwt.sh +``` + +For further information refer to [this](http://qwt.sourceforge.net/) - python3.5 or 3.6 In Debian like distros: ```bash - $ sudo apt-get install python3.5 - $ sudo apt-get install python3.5-dev + $ sudo apt-get install python3.5 python3.5-dev ``` - Others diff --git a/getqwt.sh b/getqwt.sh new file mode 100755 index 00000000..31d54adb --- /dev/null +++ b/getqwt.sh @@ -0,0 +1,44 @@ +#!/usr/bin/env bash + +# Copyright (c) 2017, University of Kaiserslautern +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# 1. Redistributions of source code must retain the above copyright notice, +# this list of conditions and the following disclaimer. +# +# 2. Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# 3. Neither the name of the copyright holder nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED +# TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +# PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER +# OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, +# EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, +# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR +# PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF +# LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING +# NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS +# SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# Author: Éder F. Zulian + +dest=$HOME/qwt-6.1 +svn checkout svn://svn.code.sf.net/p/qwt/code/branches/qwt-6.1 $dest +cd $dest +qmake qwt.pro +make +sudo make install + +# Add env. variables to ~/.bashrc +echo "LIBQWT_HOME=/usr/local/qwt-6.1.4-svn/lib" >> ~/.bashrc +echo "LIBQWT_HEADERS=/usr/local/qwt-6.1.4-svn/include" >> ~/.bashrc diff --git a/getsysc.sh b/getsysc.sh index d2256cf1..52848909 100755 --- a/getsysc.sh +++ b/getsysc.sh @@ -32,6 +32,8 @@ # # Author: Éder F. Zulian +set -x + dest=$HOME sysc=systemc-2.3.1a sysctarball=$sysc.tar.gz @@ -77,3 +79,11 @@ nj=`expr $np - 1` make -j$nj make check -j$nj make install + +# Add env. variables to ~/.bashrc +arch=$(uname -m | sed 's/x86_//;s/i[3-6]86/32/') +echo "# SystemC home" >> ~/.bashrc +echo "SYSTEMC_HOME=$dest/$sysc" >> ~/.bashrc +echo "# SystemC target architecture" >> ~/.bashrc +echo "SYSTEMC_TARGET_ARCH=linux$arch" >> ~/.bashrc +echo "LD_LIBRARY_PATH=\${LD_LIBRARY_PATH}:\${SYSTEMC_HOME}/lib-$arch" >> ~/.bashrc