Package: fbset
Version: 2.1
Author: Guillem Jover <guillem@hadrons.org>
Status: sent
Description:
 Use DESTDIR.
 Split device creation into a new target.
 Split compiler flags into CFLAGS.
 Create target directories.
 Install missing programs.
 Use proper permissions for each different target file.


Index: Makefile
===================================================================
--- Makefile.orig	2006-10-09 04:46:54.000000000 +0300
+++ Makefile	2006-10-09 04:47:13.000000000 +0300
@@ -2,10 +2,14 @@
 # Linux Frame Buffer Device Configuration
 #
 
-CC =		gcc -Wall -O2 -I.
+CC =		gcc
+CFLAGS =	-Wall -O2
 BISON =		bison -d
 FLEX =		flex
 INSTALL =	install
+INSTALL_DIR =	$(INSTALL) -d
+INSTALL_PROGRAM = $(INSTALL) -m 755
+INSTALL_DATA =	$(INSTALL) -m 644
 RM =		rm -f
 
 All:		fbset
@@ -24,18 +28,26 @@ modes.tab.c:	modes.y
 		$(BISON) modes.y
 
 install:	fbset
-		if [ -f /sbin/fbset ]; then rm /sbin/fbset; fi
-		$(INSTALL) fbset /usr/sbin
-		$(INSTALL) fbset.8 /usr/man/man8
-		$(INSTALL) fb.modes.5 /usr/man/man5
-		if [ ! -c /dev/fb0 ]; then mknod /dev/fb0 c 29 0; fi
-		if [ ! -c /dev/fb1 ]; then mknod /dev/fb1 c 29 32; fi
-		if [ ! -c /dev/fb2 ]; then mknod /dev/fb2 c 29 64; fi
-		if [ ! -c /dev/fb3 ]; then mknod /dev/fb3 c 29 96; fi
-		if [ ! -c /dev/fb4 ]; then mknod /dev/fb4 c 29 128; fi
-		if [ ! -c /dev/fb5 ]; then mknod /dev/fb5 c 29 160; fi
-		if [ ! -c /dev/fb6 ]; then mknod /dev/fb6 c 29 192; fi
-		if [ ! -c /dev/fb7 ]; then mknod /dev/fb7 c 29 224; fi
+		$(INSTALL_DIR) $(DESTDIR)/etc
+		$(INSTALL_DATA) etc/fb.modes.ATI $(DESTDIR)/etc/fb.modes
+		$(INSTALL_DIR) $(DESTDIR)/usr/share/man/man5
+		$(INSTALL_DATA) fb.modes.5 $(DESTDIR)/usr/share/man/man5
+		$(INSTALL_DIR) $(DESTDIR)/bin
+		$(INSTALL_PROGRAM) fbset $(DESTDIR)/bin
+		$(INSTALL_DIR) $(DESTDIR)/usr/share/man/man1
+		$(INSTALL_DATA) fbset.8 $(DESTDIR)/usr/share/man/man1/fbset.1
+		$(INSTALL_PROGRAM) modeline2fb $(DESTDIR)/bin
+		$(INSTALL_DATA) modeline2fb.1 $(DESTDIR)/usr/share/man/man1
+
+install-devices:
+		if [ ! -c /dev/fb0 ]; then mknod $(DESTDIR)/dev/fb0 c 29 0; fi
+		if [ ! -c /dev/fb1 ]; then mknod $(DESTDIR)/dev/fb1 c 29 32; fi
+		if [ ! -c /dev/fb2 ]; then mknod $(DESTDIR)/dev/fb2 c 29 64; fi
+		if [ ! -c /dev/fb3 ]; then mknod $(DESTDIR)/dev/fb3 c 29 96; fi
+		if [ ! -c /dev/fb4 ]; then mknod $(DESTDIR)/dev/fb4 c 29 128; fi
+		if [ ! -c /dev/fb5 ]; then mknod $(DESTDIR)/dev/fb5 c 29 160; fi
+		if [ ! -c /dev/fb6 ]; then mknod $(DESTDIR)/dev/fb6 c 29 192; fi
+		if [ ! -c /dev/fb7 ]; then mknod $(DESTDIR)/dev/fb7 c 29 224; fi
 
 clean:
 		$(RM) *.o fbset lex.yy.c modes.tab.c modes.tab.h
