Skip to content

Commit

Permalink
Merge pull request #43 from kubilus1/pr42
Browse files Browse the repository at this point in the history
SGDK 1.40
  • Loading branch information
kubilus1 authored Aug 3, 2019
2 parents df1d5c9 + 007a60a commit ed8d4fe
Show file tree
Hide file tree
Showing 15 changed files with 330 additions and 845 deletions.
12 changes: 9 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
dist: trusty
# Not using Travis anymore but keeping this for now.

dist: bionic
language: c
sudo: false
branches:
Expand All @@ -7,8 +9,12 @@ branches:
- /^\d+\.\d+(\.\d+)?(-\S*)?$/
addons:
apt:
update: true
packages:
- texinfo
- openjdk-8-jdk-headless
- dos2unix
- g++
cache:
directories:
- build
Expand All @@ -20,7 +26,7 @@ jobs:
- make clean
- stage: Setup toolchain
script:
- make toolchain_clean
- make toolchain_clean
- cd toolchain && make setup
- stage: Build bintutils
script:
Expand All @@ -47,7 +53,7 @@ jobs:
- make sgdk_samples
- stage: release to github
if: tag IS present
script:
script:
- echo "Deploying to github..."
- VER=$TRAVIS_TAG make release
deploy:
Expand Down
46 changes: 41 additions & 5 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,9 +1,45 @@
FROM ubuntu:14.04
FROM ubuntu:bionic as build

WORKDIR /tmp
ENV DEBIAN_FRONTEND noninteractive

RUN apt-get update && apt-get install -y build-essential wget unzip unrar-free texinfo git && apt-get clean
ENV GENDEV /opt/gendev

RUN bash -c "git clone https://github.com/kubilus1/gendev.git && cd gendev && make && rm -rf /tmp/*"
RUN apt-get update && \
apt-get install -y \
build-essential \
wget \
unzip \
unrar-free \
texinfo \
git \
openjdk-8-jdk-headless && \
apt-get clean

CMD /bin/bash
# To download gcc 6.3 with wget. We must provide a password with '@' in.
#RUN echo ftp_user=anonymous > ~/.wgetrc
#RUN echo [email protected] >> ~/.wgetrc

#RUN bash -c "git clone https://github.com/kubilus1/gendev.git && cd gendev && make && rm -rf /tmp/*"
WORKDIR /work
COPY tools /work/tools/
COPY Makefile /work/
COPY sgdk /work/sgdk/
COPY toolchain /work/toolchain/
RUN make
RUN make install

FROM ubuntu:bionic
RUN apt-get update && \
apt-get install -y \
openjdk-8-jre-headless \
build-essential \
make && \
apt-get clean

ENV GENDEV /opt/gendev
COPY --from=build /opt/gendev $GENDEV
ENV PATH $GENDEV/bin:$PATH

WORKDIR /src

ENTRYPOINT make -f $GENDEV/sgdk/mkfiles/makefile.gen
11 changes: 6 additions & 5 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -38,22 +38,24 @@ toolchain_build:
toolchain_clean:
cd toolchain && $(MAKE) toolchain_clean

tools_build:
tools_build:
cd tools && $(MAKE) tools_build

tools_clean:
tools_clean:
cd tools && $(MAKE) tools_clean

sgdk_samples:
cd sgdk && $(MAKE) sample_clean samples

install:
$(GENDEV):
if [ -w /opt ]; then \
mkdir -p $(GENDEV); \
else \
$(SUDO) mkdir -p $@; \
$(SUDO) chown $(ORIG_USER):$(ORIG_USER) $@; \
fi

install: $(GENDEV)
echo "export GENDEV=$(GENDEV)" > ~/.gendev
echo "export PATH=\$$GENDEV/bin:\$$PATH" >> ~/.gendev
#$(SUDO) chmod 777 $@
Expand All @@ -80,7 +82,7 @@ dist/gendev_$(VER)_all.deb: pkg_build
cd dist && dpkg-deb -Zxz -z9 --build $(TOPDIR)/pkg_build .

sgdk_build:
cd sgdk && GENDEV=$(BUILDDIR) $(MAKE) install
cd sgdk && GENDEV=$(BUILDDIR) $(MAKE) install

sgdk_clean:
- cd sgdk && $(MAKE) clean
Expand All @@ -97,4 +99,3 @@ clean: tools_clean toolchain_clean sgdk_clean
#########################################################
#########################################################
#########################################################

25 changes: 18 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,10 @@ BASIC INSTRUCTIONS
The quickest way to get going would be to simply install one of the release
packages for this project. Both a 'txz' and 'deb' package are provided.

To run SGDK or in our case, Gendev, you need following packages:
- texinfo
- openjdk-8-jdk

USAGE
=====

Expand Down Expand Up @@ -51,19 +55,26 @@ PROJECT STRUCTURE
TOOLCHAIN BUILDING
==================

The toolchain is now setup with Travis-CI for continuous integration. This
The toolchain is now setup with CircleCI for continuous integration. This
should ease porting and allow better validation of incoming patches.

You may decide to build the full toolchain by making sure you have the texinfo
package installed, and then:
You may decide to build the full toolchain by making sure you have the following
package installed:
- git
- build-essential
- texinfo
- curl
- wget
- unzip

and then:
```
$ cd gendev
$ make
```
... and wait about 45 minutes or so.

The .travis-ci.yml script is a good place to look to see how the individual
The .circleci/config.yml script is a good place to look to see how the individual
build stages are executed.


Expand All @@ -85,7 +96,7 @@ maintain.

I am attempting to:

1. Not necessarilly require building everything
1. Not necessarilly require building everything
2. Shorten the build time
3. Hook up with continuous integration tools
4. Reduce the footprint
Expand All @@ -98,8 +109,8 @@ NOTES:

* The 32x stuff is currently deprecated. I may create steps to build this
toolchain again in the future.
* All testing is done on 64bit Ubuntu installations, specifically Zesty and
Trusty. Your mileage may vary with other distros.
* All testing is done on 64bit Ubuntu installations, specifically Bionic.
Your mileage may vary with other distros.
* [FreeBSD instructions](doc/FreeBSD.md)
* This project is still way too messy, and hopefully I have time to cleanup
cruft bit by bit.
Expand Down
204 changes: 0 additions & 204 deletions examples/3d_example/Makefile

This file was deleted.

Loading

0 comments on commit ed8d4fe

Please sign in to comment.