From 39d8674a9372d5dcf643a759262fc95e4a248fb8 Mon Sep 17 00:00:00 2001 From: "Anthony J. Bentley" Date: Thu, 18 Oct 2012 20:22:47 -0600 Subject: [PATCH] =?UTF-8?q?Improve=20the=20Makefile:=20allow=20user?= =?UTF-8?q?=E2=80=90defined=20variables.?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Makefile | 32 ++++++++++++++++++-------------- README | 20 +++++++++++++++++++- 2 files changed, 37 insertions(+), 15 deletions(-) diff --git a/Makefile b/Makefile index 4d480437..33a512f2 100644 --- a/Makefile +++ b/Makefile @@ -1,5 +1,9 @@ CFLAGS += -Wall -Iinclude -Iinclude/asm/gameboy -g -std=c99 -PREFIX ?= /usr/local + +# User-defined variables +PREFIX = /usr/local +BINPREFIX = ${PREFIX}/bin +MANPREFIX = ${PREFIX}/man yacc_pre := \ src/asm/yaccprt1.y\ @@ -47,19 +51,19 @@ clean: @rm -rf src/asm/asmy.c install: all - @install -s -o root -g bin -m 555 rgbasm ${PREFIX}/bin/rgbasm - @install -s -o root -g bin -m 555 rgbfix ${PREFIX}/bin/rgbfix - @install -s -o root -g bin -m 555 rgblink ${PREFIX}/bin/rgblink - @install -s -o root -g bin -m 555 rgblib ${PREFIX}/bin/rgblib - @install -o root -g bin -m 444 src/rgbds.7 ${PREFIX}/man/cat7/rgbds.7 - @install -o root -g bin -m 444 src/asm/rgbasm.1 \ - ${PREFIX}/man/cat1/rgbasm.1 - @install -o root -g bin -m 444 src/fix/rgbfix.1 \ - ${PREFIX}/man/cat1/rgbfix.1 - @install -o root -g bin -m 444 src/link/rgblink.1 \ - ${PREFIX}/man/cat1/rgblink.1 - @install -o root -g bin -m 444 src/lib/rgblib.1 \ - ${PREFIX}/man/cat1/rgblib.1 + @install -s -m 555 rgbasm ${BINPREFIX}/rgbasm + @install -s -m 555 rgbfix ${BINPREFIX}/rgbfix + @install -s -m 555 rgblink ${BINPREFIX}/rgblink + @install -s -m 555 rgblib ${BINPREFIX}/rgblib + @install -m 444 src/rgbds.7 ${MANPREFIX}/man7/rgbds.7 + @install -m 444 src/asm/rgbasm.1 \ + ${MANPREFIX}/man1/rgbasm.1 + @install -m 444 src/fix/rgbfix.1 \ + ${MANPREFIX}/man1/rgbfix.1 + @install -m 444 src/link/rgblink.1 \ + ${MANPREFIX}/man1/rgblink.1 + @install -m 444 src/lib/rgblib.1 \ + ${MANPREFIX}/man1/rgblib.1 rgbasm: $(rgbasm_obj) @${CC} $(CFLAGS) -o $@ $(rgbasm_obj) -lm diff --git a/README b/README index 6adcd6df..a2a66df2 100644 --- a/README +++ b/README @@ -26,10 +26,28 @@ privileges): make install -You can read the manuals with the man(1) command. E.g., +After installation, you can read the manuals with the man(1) command. E.g., man 1 rgbasm + +Note: the variables described below can affect installation behavior when given +on the make command line. For example, to install rgbds in your home directory +instead of systemwide, run the following: + + mkdir -p $HOME/{bin,man/man1,man/man7} + make install PREFIX=$HOME + + +PREFIX: Location where RGBDS will be installed. Defaults to /usr/local. + +BINPREFIX: Location where the RGBDS programs will be installed. Defaults +to ${PREFIX}/bin. + +MANPREFIX: Location where the RGBDS man pages will be installed. Defaults +to ${PREFIX}/man. + + Installing RGBDS (Windows) ============================