root/juggler/branches/2.2/modules/gadgeteer/drivers/Makefile.inc.in

Revision 20507, 6.6 kB (checked in by patrick, 1 year ago)

Fixed the release build. The 'debug' subdirectory for the plug-ins was not
being created correctly, and that was causing the build to fail when the
debug plug-in was linked.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1 # ************** <auto-copyright.pl BEGIN do not edit this line> **************
2 #
3 # VR Juggler is (C) Copyright 1998-2007 by Iowa State University
4 #
5 # Original Authors:
6 #   Allen Bierbaum, Christopher Just,
7 #   Patrick Hartling, Kevin Meinert,
8 #   Carolina Cruz-Neira, Albert Baker
9 #
10 # This library is free software; you can redistribute it and/or
11 # modify it under the terms of the GNU Library General Public
12 # License as published by the Free Software Foundation; either
13 # version 2 of the License, or (at your option) any later version.
14 #
15 # This library is distributed in the hope that it will be useful,
16 # but WITHOUT ANY WARRANTY; without even the implied warranty of
17 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
18 # Library General Public License for more details.
19 #
20 # You should have received a copy of the GNU Library General Public
21 # License along with this library; if not, write to the
22 # Free Software Foundation, Inc., 59 Temple Place - Suite 330,
23 # Boston, MA 02111-1307, USA.
24 #
25 # *************** <auto-copyright.pl END do not edit this line> ***************
26
27 # -----------------------------------------------------------------------------
28 # Specialized include file for the top-level makefile.  Targets and variables
29 # needed for building the whole source tree are provided here.  This file
30 # should only be included by the top-level makefile.  It is written in such a
31 # way that no assumptions are made by this file about what the including file
32 # provides except that it includes make.defs.mk.
33 #
34 # Generated for use on @PLATFORM@
35 # -----------------------------------------------------------------------------
36
37 # Variables whose values are specific to this file.
38 includedir=     @includedir@
39 instlinks=      $(topdir)/instlinks
40 srcdir=         @srcdir@
41 top_srcdir=     @top_srcdir@
42
43 # Extra compiler and linker options needed only by this file.
44 DBG_FLAGS=      -DJUGGLER_DEBUG @DBG_FLAGS@
45 OPT_FLAGS=      -DJUGGLER_OPT -DNDEBUG @OPT_FLAGS@
46
47 # =============================================================================
48 # Build and installation directory naming and ownership information.
49 # =============================================================================
50 DEFAULT_DIR=    $(OPT_DIR)
51
52 # If we have a name for the install group, define group-setting options for
53 # UNIX commands (chown(1), chgrp(1)) and for local Perl scripts
54 # (makefiles-gen.pl in particular).
55 ifdef GROUP_NAME
56    _GROUP_OPT_PL=       --gname="$(GROUP_NAME)"
57 endif
58
59 # --------------------------------------------
60 # Library build information.
61 # --------------------------------------------
62
63 # Dependencies for each of the various dynamic libraries we build.
64 DYLIB_DEPS=             @DYLIB_DEPS@
65 DYLIB_PROF_DEPS=        @DYLIB_PROF_DEPS@
66
67 # =============================================================================
68 # Library targets.
69 # =============================================================================
70
71 AFTERBUILD=     afterbuild
72 BEFOREBUILD=    beforebuild
73
74 # Things to do after the object files and library are built.
75 afterbuild:
76         @$(MAKE) links
77
78 beforebuild:
79         @-[ ! -d $(DSO_DRIVER_DIR) ] && rm -rf $(LIBDIR_BASE)
80         $(MKINSTALLDIRS) $(DSO_DRIVER_DIR)
81         $(MKINSTALLDIRS) $(DSO_DRIVER_DIR)/debug
82
83 # =============================================================================
84 # Make links for developer use that provide the needed functionality for
85 # the $GADGET_BASE_DIR environment variable to be used when needed.
86 # $GADGET_BASE_DIR should be set to $(instlinks).
87 # =============================================================================
88 links:
89         @echo "------------------------------------------------"
90         @echo "Setting up developer installation"
91         @echo "------------------------------------------------"
92 ifdef BUILD_TYPE
93         $(MAKE) links-$(BUILD_TYPE)
94 else
95         $(MAKE) links-dbg
96 endif
97
98 links-all:
99         @$(MAKE) EXTRA_INSTALL_ARGS=-l prefix="$(instlinks)" installworld
100
101 links-dbg:
102         @$(MAKE) EXTRA_INSTALL_ARGS=-l prefix="$(instlinks)" install-debug
103
104 links-opt:
105         @$(MAKE) EXTRA_INSTALL_ARGS=-l prefix="$(instlinks)" install-optim
106
107 links-prof:
108         @$(MAKE) EXTRA_INSTALL_ARGS=-l prefix="$(instlinks)" install-profiled
109
110 links-prof-libs:
111         @$(MAKE) EXTRA_INSTALL_ARGS=-l prefix="$(instlinks)" install-prof
112         @$(MAKE) EXTRA_INSTALL_ARGS=-l prefix="$(instlinks)" install-prof-dso
113
114 # Remove the links in $(instlinks).
115 clean-links:
116 ifndef GLOBAL_BUILD
117         @echo "------------------------------------------------"
118         @echo "Removing developer installation links"
119         @echo "------------------------------------------------"
120         rm -rf $(instlinks)/$(DSO_DRIVER_DIR)
121 endif
122
123 # =============================================================================
124 # Installation targets.  The default (what is done by 'install') is to install
125 # the static debugging version of the libraries.  The steps taken for a full
126 # installation are:
127 #
128 #     1) Create the full installation directory hierarchy.
129 #     2) Install the libraries.
130 #     3) Install the header files.
131 #     4) Install the test programs.
132 #     5) Install the contents of the Data directory.
133 #     6) Install the Java-based config editor (if possible).
134 # =============================================================================
135
136 BEFOREINSTALL=  beforeinstall
137
138 # Steps to take before beginning the installation process.  This target is
139 # independent of the current ABI.
140 beforeinstall:
141         if [ -d $(DSO_DRIVER_DIR) ] ; then                              \
142           $(PERL) $(scriptdir)/install-dir.pl -m $(EXEC_PERMS)          \
143             $(GROUP_OPT_UNIX) -e .so,.dll,.dylib $(EXTRA_INSTALL_ARGS)  \
144             -o $(libdir)$(LIBBITSUF)/$(DSO_DRIVER_SUBDIR) -i            \
145             $(DSO_DRIVER_DIR) ;                                         \
146         fi
147
148 # We are not installing anything for the drivers yet :)
149 POSTINSTALL=    post-install
150
151 # Do everything needed after installing the library binaries.
152 post-install:
153         @$(MAKE) install-data
154
155 # Install the standard data files.
156 install-data:
157         @echo "------------------------------------------------"
158         @echo "Installing standard data files"
159         @echo "------------------------------------------------"
160         $(PERL) $(scriptdir)/makefiles-gen.pl --mode="$(FILE_PERMS)"    \
161           --prefix="$(projdatadir)" --vars="$(topdir)/VARS.pl"          \
162           --files="$(top_srcdir)/gadget.driver.mk.in" $(_GROUP_OPT_PL)  \
163           --srcdir="."
164
165 # =============================================================================
166 # Clean-up targets.
167 # =============================================================================
168 _clobber:
169         @$(MAKE) cleandepend
170         @$(MAKE) clean-links
171
172 # Define $(_LOCAL_CLOBBER) to inform the shared 'clobber' target that there is
173 # a '_clobber' target to be run besides the standard target.
174 _LOCAL_CLOBBER=         1
175
176 include $(MKPATH)/dpp.libs.mk
177 include $(MKPATH)/dpp.clean.mk
178 include driver.defs.mk
179
180 CLEAN_DIRS+=    $(BUILDDIR_BASE) $(DSO_DRIVER_DIR)
181 CLOBBER_DIRS+=  $(BUILDDIR_BASE) $(DSO_DRIVER_DIR)
Note: See TracBrowser for help on using the browser.