1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236
|
#! /usr/bin/make -f
#
CC = gcc
CFLAGS = -O2 -DFBIND=2 -g -Wall
LDFLAGS =
SHELL = /bin/sh
srcdir = .
INSTALL = /usr/bin/install
INSTALL_PROGRAM = $(INSTALL) -m 755 -o root -g root
INSTALL_LIB = $(INSTALL) -m 644 -o root -g root
INSTALL_DATA = $(INSTALL) -m 644 -o root -g root
INSTALL_DIR = $(INSTALL) -d -m 755 -o root -g root
GNUARCH = $(shell dpkg --print-gnu-build-architecture)
LIB5DEVLIB = /usr/$(GNUARCH)-linuxlibc1/lib
LIB5DEVINC = /usr/$(GNUARCH)-linuxlibc1/include
LIB5LIB = /usr/lib/libc5-compat
LIB5GCC = /usr/$(GNUARCH)-linuxlibc1/bin/gcc
config:
$(checkdir)
./mkmkfiles.imake
touch stamp-config
build:
$(checkdir)
test -f stamp-config || make -f debian/rules config
-mkdir libs.libc5 libs.libc6
( cd lib/glut && rm -f *.o && \
make CCOPTIONS='-ansi -fPIC' && \
gcc -shared -Wl,-soname,libglut.so.3 -o libglut.so.3.6 *.o -lc && \
echo gcc -shared -Wl,-soname,libglut.so.3 -o libglut.so.3.6 *.o -lc && \
mv libglut.so.3.6 ../../libs.libc6 && \
make clean && \
make && \
mv libglut.a ../../libs.libc6 )
( cd lib/glut && make clean && \
make CC=$(LIB5GCC) CCOPTIONS='-ansi -fPIC' && \
$(LIB5GCC) -shared -Wl,-soname,libglut.so.3 -o libglut.so.3.6 *.o -lc && \
echo $(LIB5GCC) -shared -Wl,-soname,libglut.so.3 -o libglut.so.3.6 *.o -lc && \
mv libglut.so.3.6 ../../libs.libc5 && \
make clean && \
make CC=$(LIB5GCC) && \
mv libglut.a ../../libs.libc5 )
( cd man/glut && \
make install.man DESTDIR='../manpages' )
( cd lib/gle && rm -f *.o && \
make CCOPTIONS='-ansi -fPIC' && \
gcc -shared -Wl,-soname,libgle.so.3 -o libgle.so.3.6 *.o -lc && \
echo gcc -shared -Wl,-soname,libgle.so.3 -o libgle.so.3.6 *.o -lc && \
mv libgle.so.3.6 ../../libs.libc6 && \
make clean && \
make && \
mv libgle.a ../../libs.libc6 )
( cd lib/gle && make clean && \
make CC=$(LIB5GCC) CCOPTIONS='-ansi -fPIC' && \
$(LIB5GCC) -shared -Wl,-soname,libgle.so.3 -o libgle.so.3.6 *.o -lc && \
echo $(LIB5GCC) -shared -Wl,-soname,libgle.so.3 -o libgle.so.3.6 *.o -lc && \
mv libgle.so.3.6 ../../libs.libc5 && \
make clean && \
make CC=$(LIB5GCC) && \
mv libgle.a ../../libs.libc5 )
( cd man/gle && \
make install.man DESTDIR='../manpages' )
touch stamp-build
clean:
$(checkdir)
-rm -rf libs.libc*
-rm *.tar.gz
-rm -rf lib/glut/*.so*
-rm -rf man/manpages
-make clean
-find . -name 'Makefile' -print0 |xargs -0r rm -f
-find . -name 'Makefile.bak' -print0 |xargs -0r rm -f
-rm -f stamp-config stamp-build
-rm -rf debian/tmp* debian/files* debian/substvars
binary-arch: checkroot
$(checkdir)
-rm -rf debian/tmp-3g debian/tmp-3gdev debian/tmp-3 debian/tmp-3dev
test -f stamp-build || make -f debian/rules build
#
#
# make glut3g in debian/tmp-3g
$(INSTALL_DIR) debian/tmp-3g
$(INSTALL_DIR) debian/tmp-3g/DEBIAN
$(INSTALL_DATA) debian/shlibs.libc6 debian/tmp-3g/DEBIAN/shlibs
# libraries
$(INSTALL_DIR) debian/tmp-3g/usr/lib
$(INSTALL_LIB) libs.libc6/libgl*.so.3.6 debian/tmp-3g/usr/lib
-strip --strip-unneeded debian/tmp-3g/usr/lib/libgl*.so.3.6
ln -s libglut.so.3.6 debian/tmp-3g/usr/lib/libglut.so.3
ln -s libgle.so.3.6 debian/tmp-3g/usr/lib/libgle.so.3
# documentation
$(INSTALL_DIR) debian/tmp-3g/usr/doc/glutg3
$(INSTALL_DATA) debian/copyright debian/tmp-3g/usr/doc/glutg3
$(INSTALL_DATA) debian/changelog debian/tmp-3g/usr/doc/glutg3/changelog.Debian
$(INSTALL_DATA) CHANGES debian/tmp-3g/usr/doc/glutg3/changelog
gzip -9 debian/tmp-3g/usr/doc/glutg3/changelog*
#
$(INSTALL_DATA) README debian/tmp-3g/usr/doc/glutg3
$(INSTALL_DATA) README.glut2 debian/tmp-3g/usr/doc/glutg3
$(INSTALL_DATA) README.glut3 debian/tmp-3g/usr/doc/glutg3
$(INSTALL_DATA) Portability.txt debian/tmp-3g/usr/doc/glutg3
$(INSTALL_DATA) FAQ.glut debian/tmp-3g/usr/doc/glutg3
gzip -9 debian/tmp-3g/usr/doc/glutg3/FAQ.glut
#
dpkg-gencontrol -isp -pglutg3 -Pdebian/tmp-3g
dpkg --build debian/tmp-3g ..
#
#
# make glut3g-dev in debian/tmp-3gdev
$(INSTALL_DIR) debian/tmp-3gdev
$(INSTALL_DIR) debian/tmp-3gdev/DEBIAN
$(INSTALL_DIR) debian/tmp-3gdev/usr/doc
ln -s glutg3 debian/tmp-3gdev/usr/doc/glutg3-dev
# libraries
$(INSTALL_DIR) debian/tmp-3gdev/usr/lib
$(INSTALL_LIB) libs.libc6/libglut.a debian/tmp-3gdev/usr/lib
$(INSTALL_LIB) libs.libc6/libgle.a debian/tmp-3gdev/usr/lib
-strip --strip-debug debian/tmp-3gdev/usr/lib/libgl*.a
-strip --strip-unneeded debian/tmp-3g/usr/lib/libgl*.so.3.6
ln -s libglut.so.3 debian/tmp-3gdev/usr/lib/libglut.so
ln -s libgle.so.3 debian/tmp-3gdev/usr/lib/libgle.so
# includes
$(INSTALL_DIR) debian/tmp-3gdev/usr/include/GL
$(INSTALL_DATA) include/GL/*.h debian/tmp-3gdev/usr/include/GL
#
# build the development package
dpkg-gencontrol -isp -pglutg3-dev -Pdebian/tmp-3gdev
dpkg --build debian/tmp-3gdev ..
#
#
# make glut3 in debian/tmp-3
$(INSTALL_DIR) debian/tmp-3
$(INSTALL_DIR) debian/tmp-3/DEBIAN
$(INSTALL_DATA) debian/shlibs.libc5 debian/tmp-3/DEBIAN/shlibs
# libraries
$(INSTALL_DIR) debian/tmp-3$(LIB5LIB)
$(INSTALL_LIB) libs.libc5/libglut.so.3.6 debian/tmp-3$(LIB5LIB)
$(INSTALL_LIB) libs.libc5/libgle.so.3.6 debian/tmp-3$(LIB5LIB)
-strip --strip-unneeded debian/tmp-3$(LIB5LIB)/libgl*.so.3.6
ln -s libglut.so.3.6 debian/tmp-3$(LIB5LIB)/libglut.so.3
ln -s libgle.so.3.6 debian/tmp-3$(LIB5LIB)/libgle.so.3
# documentation
$(INSTALL_DIR) debian/tmp-3/usr/doc/glut3
$(INSTALL_DATA) debian/copyright debian/tmp-3/usr/doc/glut3
$(INSTALL_DATA) debian/changelog debian/tmp-3/usr/doc/glut3/changelog.Debian
$(INSTALL_DATA) CHANGES debian/tmp-3/usr/doc/glut3/changelog
gzip -9 debian/tmp-3/usr/doc/glut3/changelog*
#
$(INSTALL_DATA) README debian/tmp-3/usr/doc/glut3
$(INSTALL_DATA) README.glut2 debian/tmp-3/usr/doc/glut3
$(INSTALL_DATA) README.glut3 debian/tmp-3/usr/doc/glut3
$(INSTALL_DATA) Portability.txt debian/tmp-3g/usr/doc/glut3
$(INSTALL_DATA) FAQ.glut debian/tmp-3/usr/doc/glut3
gzip -9 debian/tmp-3/usr/doc/glut3/FAQ.glut
#
dpkg-gencontrol -isp -pglut3 -Pdebian/tmp-3
dpkg --build debian/tmp-3 ..
#
#
# make glut3-altdev in debian/tmp-3dev
$(INSTALL_DIR) debian/tmp-3dev
$(INSTALL_DIR) debian/tmp-3dev/DEBIAN
$(INSTALL_DIR) debian/tmp-3dev/usr/doc
ln -s glut3 debian/tmp-3dev/usr/doc/glut3-altdev
# libraries
$(INSTALL_DIR) debian/tmp-3dev$(LIB5DEVLIB)
$(INSTALL_LIB) libs.libc5/libglut.a debian/tmp-3dev$(LIB5DEVLIB)
$(INSTALL_LIB) libs.libc5/libgle.a debian/tmp-3dev$(LIB5DEVLIB)
-strip --strip-debug debian/tmp-3dev$(LIB5LIB)/libgl*.a
ln -s ../../lib/libc5-compat/libglut.so.3 debian/tmp-3dev$(LIB5DEVLIB)/libglut.so
ln -s ../../lib/libc5-compat/libgle.so.3 debian/tmp-3dev$(LIB5DEVLIB)/libgle.so
# includes
$(INSTALL_DIR) debian/tmp-3dev$(LIB5DEVINC)/GL
$(INSTALL_DATA) include/GL/*.h debian/tmp-3dev$(LIB5DEVINC)/GL
#
# build the development package
dpkg-gencontrol -isp -pglut3-altdev -Pdebian/tmp-3dev
dpkg --build debian/tmp-3dev ..
define checkdir
test -f Glut.cf -a -f debian/rules
endef
binary-indep: checkroot
$(checkdir)
-rm -rf debian/tmp-doc
test -f stamp-build || make -f debian/rules build
#
#
# make glut-doc in debian/tmp-doc
$(INSTALL_DIR) debian/tmp-doc
$(INSTALL_DIR) debian/tmp-doc/DEBIAN
$(INSTALL_DIR) debian/tmp-doc/usr/doc
$(INSTALL_DIR) debian/tmp-doc/usr/doc/glut-doc
$(INSTALL_DATA) debian/copyright debian/tmp-doc/usr/doc/glut-doc
# man pages
$(INSTALL_DIR) debian/tmp-doc/usr/X11R6/man
$(INSTALL_DIR) debian/tmp-doc/usr/X11R6/man/man3
$(INSTALL_DATA) man/manpages/usr/X11R6/man/man3/* \
debian/tmp-doc/usr/X11R6/man/man3
-gzip -9f debian/tmp-doc/usr/X11R6/man/man3/*
# examples
$(INSTALL_DIR) debian/tmp-doc/usr/doc/glut-doc/examples
tar -chf advanced.tar progs/advanced
tar -chf contrib.tar progs/contrib
tar -chf demos.tar progs/demos
tar -chf examples.tar progs/examples
# tar -chf fortran.tar progs/fortran
# tar -chf glc.tar progs/glc
tar -chf gle.tar progs/gle
tar -chf mesademos.tar progs/mesademos
tar -chf perf_harness.tar progs/perf_harness
tar -chf redbook.tar progs/redbook
tar -chf texfont.tar progs/texfont
tar -chf tiff.tar progs/tiff
tar -chf test.tar test
-gzip -9f *.tar
$(INSTALL_DATA) *.tar.gz Glut.cf debian/tmp-doc/usr/doc/glut-doc/examples
#
dpkg-gencontrol -isp -pglut-doc -Pdebian/tmp-doc
dpkg --build debian/tmp-doc ..
binary: binary-arch binary-indep
checkroot:
$(checkdir)
test root = "`whoami`"
.PHONY: config clean binary binary-arch binary-indep
|