r379 - in trunk: . code/unix code/unix/setup
DONOTREPLY at icculus.org
DONOTREPLY at icculus.org
Sun Nov 27 10:34:17 EST 2005
Author: ludwig
Date: 2005-11-27 10:34:16 -0500 (Sun, 27 Nov 2005)
New Revision: 379
Added:
trunk/code/unix/setup/
trunk/code/unix/setup/Makefile
trunk/code/unix/setup/doit
trunk/code/unix/setup/ioq3demo.sh
trunk/code/unix/setup/ioquake3.sh
trunk/code/unix/setup/setup.xml
Modified:
trunk/Makefile
trunk/code/unix/Makefile
Log:
files to create a loki-setup based installer. run "make installer"
Modified: trunk/Makefile
===================================================================
--- trunk/Makefile 2005-11-27 15:01:56 UTC (rev 378)
+++ trunk/Makefile 2005-11-27 15:34:16 UTC (rev 379)
@@ -1,6 +1,6 @@
VERSION=1.33_SVN$(shell LANG=C svnversion .)
-release debug clean distclean copyfiles:
+release debug clean distclean copyfiles installer:
$(MAKE) -C code/unix $@
dist:
@@ -10,4 +10,4 @@
tar --force-local -cjf quake3-$(VERSION).tar.bz2 quake3-$(VERSION)
rm -rf quake3-$(VERSION)
-.PHONY: release debug clean distclean
+.PHONY: release debug clean distclean copyfiles installer
Modified: trunk/code/unix/Makefile
===================================================================
--- trunk/code/unix/Makefile 2005-11-27 15:01:56 UTC (rev 378)
+++ trunk/code/unix/Makefile 2005-11-27 15:34:16 UTC (rev 379)
@@ -1762,6 +1762,7 @@
$(COPYDIR)/missionpack/.
clean:clean-debug clean-release
+ $(MAKE) -C setup clean
clean2:
if [ -d $(B) ];then (find $(B) -name '*.d' -exec rm {} \;)fi
@@ -1780,6 +1781,9 @@
$(MAKE) -C ../tools/asm clean uninstall
$(MAKE) -C ../tools/lcc clean uninstall
+installer: build_release
+ $(MAKE) VERSION=$(VERSION) -C setup
+
#############################################################################
# DEPENDENCIES
#############################################################################
Added: trunk/code/unix/setup/Makefile
===================================================================
--- trunk/code/unix/setup/Makefile 2005-11-27 15:01:56 UTC (rev 378)
+++ trunk/code/unix/setup/Makefile 2005-11-27 15:34:16 UTC (rev 379)
@@ -0,0 +1,15 @@
+VERSION=FIXME
+RELEASE=1
+
+all:
+ VERSION=$(VERSION) RELEASE=$(RELEASE) ./doit
+
+sign:
+ for i in *.run; do \
+ gpg -bao $$i.asc $$i; \
+ done
+
+clean:
+ rm -rf *.run image
+
+.PHONY: all sign clean
Added: trunk/code/unix/setup/doit
===================================================================
--- trunk/code/unix/setup/doit 2005-11-27 15:01:56 UTC (rev 378)
+++ trunk/code/unix/setup/doit 2005-11-27 15:34:16 UTC (rev 379)
@@ -0,0 +1,57 @@
+#!/bin/bash
+
+: ${MAKESELF:=/usr/share/loki-setup/makeself}
+: ${SETUPIMAGE:=/usr/share/loki-setup/image}
+
+: ${VERSION:=0.0_`date +%Y%m%d%H%M`}
+: ${RELEASE:=0}
+
+set -e
+set -x
+
+arch=`uname -m`
+case "$arch" in
+ i?86) arch=i386 ;;
+esac
+
+rm -rf image
+mkdir image
+
+### loki-setup files
+cp -a $SETUPIMAGE/{setup.data,setup.sh} image/
+
+### splash
+convert ../../../web/images/quake3.jpg image/setup.data/splash.xpm
+
+### binaries
+mkdir image/tmp
+pushd image/tmp
+mkdir baseq3 demoq3 missionpack
+src="../../../release$arch-glibc/"
+install -m 755 $src/linuxquake3 ioquake3.$arch
+install -m 755 $src/linuxq3ded ioq3ded.$arch
+install -m 644 $src/baseq3/*.so baseq3
+install -m 644 $src/missionpack/*.so missionpack
+pushd demoq3
+ln -s ../baseq3/*.so .
+popd
+popd
+
+tar --owner=root --group=root -C image/tmp -cf image/ioquake3.tar .
+rm -rf image/tmp
+
+### setup.xml
+sed 's/@VERSION@/'$VERSION'/g' < setup.xml > image/setup.data/setup.xml
+
+### start script
+mkdir -p image/bin/Linux/$arch
+ln -s x86_64 image/bin/Linux/amd64 # $§&%!!
+install -m 755 ioquake3.sh image/bin/Linux/$arch/ioquake3
+install -m 755 ioq3demo.sh image/bin/Linux/$arch/ioq3demo
+
+### README and COPYING
+install -m 644 ../../../README image/README
+install -m 644 ../../../COPYING.txt image/COPYING
+
+### makeself installer
+$MAKESELF/makeself.sh image ioquake3-$VERSION-$RELEASE.$arch.run "icculus.org/quake3 $VERSION" ./setup.sh
Property changes on: trunk/code/unix/setup/doit
___________________________________________________________________
Name: svn:executable
+ *
Added: trunk/code/unix/setup/ioq3demo.sh
===================================================================
--- trunk/code/unix/setup/ioq3demo.sh 2005-11-27 15:01:56 UTC (rev 378)
+++ trunk/code/unix/setup/ioq3demo.sh 2005-11-27 15:34:16 UTC (rev 379)
@@ -0,0 +1,44 @@
+#!/bin/sh
+
+readlink() {
+ local path=$1 ll
+
+ if [ -L "$path" ]; then
+ ll="$(LC_ALL=C ls -l "$path" 2> /dev/null)" &&
+ echo "${ll/* -> }"
+ else
+ return 1
+ fi
+}
+
+script=$0
+count=0
+while [ -L "$script" ]
+do
+ script=$(readlink "$script")
+ count=`expr $count + 1`
+ if [ $count -gt 100 ]
+ then
+ echo "Too many symbolic links"
+ exit 1
+ fi
+done
+cd "`dirname $script`"
+
+
+lib=lib
+test -e lib64 && lib=lib64
+
+if test "x$LD_LIBRARY_PATH" = x; then
+ LD_LIBRARY_PATH="`pwd`/$lib"
+else
+ LD_LIBRARY_PATH="`pwd`/$lib:$LD_LIBRARY_PATH"
+fi
+export LD_LIBRARY_PATH
+
+arch=`uname -m`
+case "$arch" in
+ i?86) arch=i386 ;;
+esac
+
+exec ./ioquake3.$arch +set sv_pure 0 +set vm_cgame 0 +set vm_game 0 +set vm_ui 0 +set fs_game demoq3 "$@"
Added: trunk/code/unix/setup/ioquake3.sh
===================================================================
--- trunk/code/unix/setup/ioquake3.sh 2005-11-27 15:01:56 UTC (rev 378)
+++ trunk/code/unix/setup/ioquake3.sh 2005-11-27 15:34:16 UTC (rev 379)
@@ -0,0 +1,44 @@
+#!/bin/sh
+
+readlink() {
+ local path=$1 ll
+
+ if [ -L "$path" ]; then
+ ll="$(LC_ALL=C ls -l "$path" 2> /dev/null)" &&
+ echo "${ll/* -> }"
+ else
+ return 1
+ fi
+}
+
+script=$0
+count=0
+while [ -L "$script" ]
+do
+ script=$(readlink "$script")
+ count=`expr $count + 1`
+ if [ $count -gt 100 ]
+ then
+ echo "Too many symbolic links"
+ exit 1
+ fi
+done
+cd "`dirname $script`"
+
+
+lib=lib
+test -e lib64 && lib=lib64
+
+if test "x$LD_LIBRARY_PATH" = x; then
+ LD_LIBRARY_PATH="`pwd`/$lib"
+else
+ LD_LIBRARY_PATH="`pwd`/$lib:$LD_LIBRARY_PATH"
+fi
+export LD_LIBRARY_PATH
+
+arch=`uname -m`
+case "$arch" in
+ i?86) arch=i386 ;;
+esac
+
+exec ./ioquake3.$arch "$@"
Added: trunk/code/unix/setup/setup.xml
===================================================================
--- trunk/code/unix/setup/setup.xml 2005-11-27 15:01:56 UTC (rev 378)
+++ trunk/code/unix/setup/setup.xml 2005-11-27 15:34:16 UTC (rev 379)
@@ -0,0 +1,30 @@
+<?xml version="1.0" standalone="yes"?>
+<install product="ioquake3"
+ desc="icculus.org/quake3"
+ version="@VERSION@"
+ promptbinaries="yes">
+ <readme>
+ README
+ </readme>
+ <eula>
+ COPYING
+ </eula>
+ <component name="Default" version="@VERSION@" default="yes">
+ <option install="true" required="true">
+ Quake 3
+
+ <binary arch="any" libc="any" symlink="ioquake3" icon="icon.xpm" play="yes"
+ name="icculus.org/quake3">
+ ioquake3
+ </binary>
+ <binary arch="any" libc="any" symlink="ioq3demo" icon="icon.xpm" play="no"
+ name="icculus.org/quake3 (Demo)">
+ ioq3demo
+ </binary>
+ <files>
+ ioquake3.tar
+ icon.xpm
+ </files>
+ </option>
+ </component>
+</install>
More information about the quake3-commits
mailing list