summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Paul <brian.paul@tungstengraphics.com>2006-06-22 22:50:48 +0000
committerBrian Paul <brian.paul@tungstengraphics.com>2006-06-22 22:50:48 +0000
commit0e794a1bc6885cf569c3dc07b7fd56725aee2c2e (patch)
tree6535a05d50a72c91571c1c366a5f297451b9c8c7
parentb4517527ebe9933cd3f49da29a9443c1abaa8242 (diff)
New 'install' targets in makefile. See bug 2372.
-rw-r--r--Makefile5
-rw-r--r--configs/aix3
-rw-r--r--configs/default13
-rw-r--r--configs/freebsd3
-rw-r--r--progs/Makefile2
-rw-r--r--src/Makefile6
-rw-r--r--src/glu/Makefile3
-rw-r--r--src/glut/glx/Makefile7
-rw-r--r--src/glw/Makefile5
-rw-r--r--src/glx/x11/Makefile5
-rw-r--r--src/mesa/Makefile9
-rw-r--r--src/mesa/drivers/dri/Makefile.template5
12 files changed, 59 insertions, 7 deletions
diff --git a/Makefile b/Makefile
index 9cdbe32288..e799ecfae8 100644
--- a/Makefile
+++ b/Makefile
@@ -33,8 +33,9 @@ realclean:
install:
- @echo "Installing"
- $(TOP)/bin/installmesa $(DESTDIR)
+ @for dir in $(SUBDIRS) ; do \
+ (cd $$dir ; $(MAKE) install) || exit 1 ; \
+ done
# DirectFBGL module installation
linux-directfb-install:
diff --git a/configs/aix b/configs/aix
index a509732876..313d4c4fdb 100644
--- a/configs/aix
+++ b/configs/aix
@@ -10,7 +10,10 @@ CXX = xlC
CFLAGS = -O -DAIXV3 -DPTHREADS
CXXFLAGS = -O -DAIXV3 -DPTHREADS
+
+# Misc tools and flags
MKLIB_OPTIONS =
+COPY_LIBS = cp -f -h
# Library names (actual file names)
GL_LIB_NAME = libGL.a
diff --git a/configs/default b/configs/default
index d85ce14eaf..ec44c8af2b 100644
--- a/configs/default
+++ b/configs/default
@@ -2,6 +2,8 @@
# This is included by other config files which may override some
# of these variables.
+# Think of this as a base class from which configs are derived.
+
CONFIG_NAME = default
@@ -25,6 +27,8 @@ MKLIB_OPTIONS =
MKDEP = makedepend
MKDEP_OPTIONS = -fdepend
MAKE = make
+INSTALL = install
+COPY_LIBS = cp -f -d
# Python and flags (generally only needed by the developers)
PYTHON2 = python
@@ -54,9 +58,8 @@ ASM_SOURCES =
GLW_SOURCES = GLwDrawA.c
-# Directories
+# Directories to build
LIB_DIR = $(TOP)/lib
-INSTALL_PREFIX = /usr/local
SRC_DIRS = mesa glu glut/glx glw
GLU_DIRS = sgi
DRIVER_DIRS = x11 osmesa
@@ -72,3 +75,9 @@ GLU_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) -lm
GLUT_LIB_DEPS = -L$(LIB_DIR) -l$(GLU_LIB) -l$(GL_LIB) $(EXTRA_LIB_PATH) -lX11 -lXmu -lXt -lXi -lm
GLW_LIB_DEPS = -L$(LIB_DIR) -l$(GL_LIB) $(EXTRA_LIB_PATH) -lXt -lX11
APP_LIB_DEPS = -L$(LIB_DIR) -l$(GLUT_LIB) -l$(GLU_LIB) -l$(GL_LIB) -lm
+
+
+
+# Installation directories (for make install)
+INSTALL_DIR = /usr/local
+DRI_DRIVER_INSTALL_DIR = /usr/X11R6/lib/modules/dri
diff --git a/configs/freebsd b/configs/freebsd
index c390b8bf9c..782e0c3219 100644
--- a/configs/freebsd
+++ b/configs/freebsd
@@ -9,6 +9,9 @@ CC = cc
CXX = c++
MAKE = gmake
+# cp -d not supported on FreeBSD (see bug 4435)
+COPY_LIBS = cp -f
+
OPT_FLAGS = -O2
PIC_FLAGS = -fPIC
diff --git a/progs/Makefile b/progs/Makefile
index 858d628c0a..d5ec17d43e 100644
--- a/progs/Makefile
+++ b/progs/Makefile
@@ -21,6 +21,8 @@ subdirs:
fi \
done
+# Dummy install target
+install:
clean:
@for dir in $(SUBDIRS) tests ; do \
diff --git a/src/Makefile b/src/Makefile
index ffe2dbc6a2..c6082e8519 100644
--- a/src/Makefile
+++ b/src/Makefile
@@ -21,6 +21,12 @@ subdirs:
fi \
done
+install:
+ @for dir in $(SUBDIRS) ; do \
+ if [ -d $$dir ] ; then \
+ (cd $$dir ; $(MAKE) install) || exit 1 ; \
+ fi \
+ done
$(LIB_DIR):
-mkdir $(LIB_DIR)
diff --git a/src/glu/Makefile b/src/glu/Makefile
index 915b95081a..4e02e86da6 100644
--- a/src/glu/Makefile
+++ b/src/glu/Makefile
@@ -13,6 +13,9 @@ default: $(TOP)/configs/current
(cd $$dir ; $(MAKE)) ; \
done
+install:
+ $(INSTALL) -d $(INSTALL_DIR)/lib
+ $(COPY_LIBS) $(TOP)/lib/libGLU.* $(INSTALL_DIR)/lib
clean:
@for dir in $(SUBDIRS) ; do \
diff --git a/src/glut/glx/Makefile b/src/glut/glx/Makefile
index 86920aba99..49c775fb22 100644
--- a/src/glut/glx/Makefile
+++ b/src/glut/glx/Makefile
@@ -96,6 +96,13 @@ $(LIB_DIR)/$(GLUT_LIB_NAME): depend $(OBJECTS)
$(GLUT_LIB_DEPS) $(OBJECTS)
+install:
+ $(INSTALL) -d $(INSTALL_DIR)/include/GL
+ $(INSTALL) -d $(INSTALL_DIR)/lib
+ $(INSTALL) -m 644 $(TOP)/include/GL/glut.h $(INSTALL_DIR)/include/GL
+ $(COPY_LIBS) $(TOP)/lib/libglut* $(INSTALL_DIR)/lib
+
+
clean:
-rm -f *.o *~
-rm -f *.lo
diff --git a/src/glw/Makefile b/src/glw/Makefile
index e21cbbd405..af25f7dcbc 100644
--- a/src/glw/Makefile
+++ b/src/glw/Makefile
@@ -25,6 +25,11 @@ OBJECTS = $(GLW_SOURCES:.c=.o)
default: $(LIB_DIR)/$(GLW_LIB_NAME)
+install:
+ $(INSTALL) -d $(INSTALL_DIR)/include/GL
+ $(INSTALL) -d $(INSTALL_DIR)/lib
+ $(INSTALL) -m 644 *.h $(INSTALL_DIR)/include/GL
+ $(COPY_LIBS) $(TOP)/lib/libGLw.* $(INSTALL_DIR)/lib
clean:
-rm depend depend.bak
diff --git a/src/glx/x11/Makefile b/src/glx/x11/Makefile
index 977967ac2f..b33a84e94b 100644
--- a/src/glx/x11/Makefile
+++ b/src/glx/x11/Makefile
@@ -1,7 +1,8 @@
TOP = ../../..
include $(TOP)/configs/current
-EXTRA_DEFINES = -DXF86VIDMODE -D_REENTRANT -UIN_DRI_DRIVER
+EXTRA_DEFINES = -DXF86VIDMODE -D_REENTRANT -UIN_DRI_DRIVER \
+ -DDEFAULT_DRIVER_DIR=\"$(DRI_DRIVER_INSTALL_DIR)\"
SOURCES = \
glcontextmodes.c \
@@ -82,6 +83,8 @@ depend: $(SOURCES) $(MESA_GLAPI_SOURCES) $(MESA_ASM_API) Makefile
tags:
etags `find . -name \*.[ch]` `find ../include`
+# Dummy install target
+install:
# Remove .o and backup files
clean:
diff --git a/src/mesa/Makefile b/src/mesa/Makefile
index 8896bb2869..5f171f4757 100644
--- a/src/mesa/Makefile
+++ b/src/mesa/Makefile
@@ -149,11 +149,20 @@ subdirs:
install: default
+ $(INSTALL) -d $(INSTALL_DIR)/include/GL
+ $(INSTALL) -d $(INSTALL_DIR)/lib
+ $(INSTALL) -m 644 $(TOP)/include/GL/*.h $(INSTALL_DIR)/include/GL
+ $(COPY_LIBS) $(TOP)/lib/libGL.* $(INSTALL_DIR)/lib
@if [ "${DRIVER_DIRS}" = "dri" ] ; then \
cd drivers/dri ; $(MAKE) install ; \
fi
+ ## NOT YET:
+ ## $(INSTALL) -d $(INSTALL_DIR)/include/GLES
+ ## $(INSTALL) -m 644 include/GLES/*.h $(INSTALL_DIR)/include/GLES
+
+
# Emacs tags
tags:
etags `find . -name \*.[ch]` $(TOP)/include/GL/*.h
diff --git a/src/mesa/drivers/dri/Makefile.template b/src/mesa/drivers/dri/Makefile.template
index 4a7a6552ac..9d08c44d65 100644
--- a/src/mesa/drivers/dri/Makefile.template
+++ b/src/mesa/drivers/dri/Makefile.template
@@ -70,7 +70,7 @@ default: depend symlinks $(LIBNAME) $(LIB_DIR)/$(LIBNAME)
# $(TOP)/bin/mklib -o $(LIBNAME) -noprefix -install $(LIB_DIR) \
# $(WINLIB) $(LIB_DEPS) $(WINOBJ) $(MESA_MODULES) $(OBJECTS)
-$(LIBNAME): $(OBJECTS) $(MESA_MODULES) $(WINOBJ) Makefile $(TOP)/src/mesa/drivers/dri/Makefile.template
+$(LIBNAME): $(OBJECTS) $(MESA_MODULES) $(WINOBJ) Makefile $(TOP)/src/mesa/drivers/dri/Makefile.template
$(TOP)/bin/mklib -noprefix -o $@ \
$(OBJECTS) $(MESA_MODULES) $(WINOBJ) $(DRI_LIB_DEPS)
@@ -99,6 +99,7 @@ clean:
-rm -f depend depend.bak
install: $(LIBNAME)
- install $(LIBNAME) /usr/X11R6/lib/modules/dri/$(LIBNAME)
+ $(INSTALL) -d $(DRI_DRIVER_INSTALL_DIR)
+ $(INSTALL) -m 755 $(LIBNAME) $(DRI_DRIVER_INSTALL_DIR)
include depend