| 1 | #----------------------------------------------------------------------------- | 
|---|
| 2 | # makedefs: Installation-specific definitions used by AIPS++ makefiles | 
|---|
| 3 | #----------------------------------------------------------------------------- | 
|---|
| 4 | # | 
|---|
| 5 | #   Copyright (C) 1997,1998,1999,2000,2001,2003 | 
|---|
| 6 | #   Associated Universities, Inc. Washington DC, USA. | 
|---|
| 7 | # | 
|---|
| 8 | #   This program is free software; you can redistribute it and/or modify | 
|---|
| 9 | #   it under the terms of the GNU General Public License as published by | 
|---|
| 10 | #   the Free Software Foundation; either version 2 of the License, or | 
|---|
| 11 | #   (at your option) any later version. | 
|---|
| 12 | # | 
|---|
| 13 | #   This program is distributed in the hope that it will be useful, | 
|---|
| 14 | #   but WITHOUT ANY WARRANTY; without even the implied warranty of | 
|---|
| 15 | #   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the | 
|---|
| 16 | #   GNU General Public License for more details. | 
|---|
| 17 | # | 
|---|
| 18 | #   You should have received a copy of the GNU General Public License | 
|---|
| 19 | #   along with this program; if not, write to the Free Software | 
|---|
| 20 | #   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. | 
|---|
| 21 | # | 
|---|
| 22 | #   Correspondence concerning AIPS++ should be addressed as follows: | 
|---|
| 23 | #          Internet email: aips2-request@nrao.edu. | 
|---|
| 24 | #          Postal address: AIPS++ Project Office | 
|---|
| 25 | #                          National Radio Astronomy Observatory | 
|---|
| 26 | #                          520 Edgemont Road | 
|---|
| 27 | #                          Charlottesville, VA 22903-2475 USA | 
|---|
| 28 | # | 
|---|
| 29 | #----------------------------------------------------------------------------- | 
|---|
| 30 | # This GNU makefile is read in by the makedefs file in the directory above | 
|---|
| 31 | # this.  That "default makedefs" file defines default values of each and | 
|---|
| 32 | # every variable required by the AIPS++ makefiles.  Those default values are | 
|---|
| 33 | # overridden where necessary by redefining them in this file. | 
|---|
| 34 | # | 
|---|
| 35 | # Installation instructions: | 
|---|
| 36 | # | 
|---|
| 37 | #    A template version of this file was copied from the "install/linux_gnu" | 
|---|
| 38 | #    directory into the site-specific AIPS++ system directory for this | 
|---|
| 39 | #    architecture (this directory) by the 'configure' script as part of the | 
|---|
| 40 | #    AIPS++ installation. | 
|---|
| 41 | # | 
|---|
| 42 | #    While default definitions are made in the default makedefs file in the | 
|---|
| 43 | #    directory above this, certain platform-specific redefinitions may have | 
|---|
| 44 | #    been included here to help make the installation easier. | 
|---|
| 45 | # | 
|---|
| 46 | #    You must carefully check all of the definitions made in the default | 
|---|
| 47 | #    makedefs file (as well as the redefinitions made here) and if necessary, | 
|---|
| 48 | #    correct them by making an overriding definition (or correction) here. | 
|---|
| 49 | #    However, | 
|---|
| 50 | # | 
|---|
| 51 | #                  DO NOT MODIFY THE DEFAULT MAKEDEFS FILE - | 
|---|
| 52 | # | 
|---|
| 53 | #                         MODIFY THIS FILE INSTEAD | 
|---|
| 54 | # | 
|---|
| 55 | #    Certain of the defaults in the default makedefs file are expressed in | 
|---|
| 56 | #    terms of another default using "recursively expanded" variables (defined | 
|---|
| 57 | #    with '=') rather than "simply expanded" (defined with ':=').  For | 
|---|
| 58 | #    example the TeX variables are defined in terms of "TEXROOT".  This may | 
|---|
| 59 | #    allow this makedefs file to redefine a whole set of variables, for | 
|---|
| 60 | #    example all of the TeX variables, simply by redefining one, TEXROOT. | 
|---|
| 61 | #    However, | 
|---|
| 62 | # | 
|---|
| 63 | #           ALWAYS USE "SIMPLY EXPANDED" VARIABLES WITHIN THIS FILE | 
|---|
| 64 | # | 
|---|
| 65 | #    That is, always use ":=" to make the assignments. | 
|---|
| 66 | # | 
|---|
| 67 | # Original: 1996/08/30 by Mark Calabretta, ATNF | 
|---|
| 68 | # $Id: makedefs.template,v 19.3 2006/05/25 15:49:39 wyoung Exp $ | 
|---|
| 69 | #============================================================================= | 
|---|
| 70 |  | 
|---|
| 71 | # General external libraries. | 
|---|
| 72 | #---------------------------- | 
|---|
| 73 |  | 
|---|
| 74 | # X11. | 
|---|
| 75 | X11ROOT := /usr/X11R6 | 
|---|
| 76 |  | 
|---|
| 77 | # Motif (lesstif is fine). | 
|---|
| 78 | MotifROOT := $(X11ROOT)/LessTif/Motif2.1 | 
|---|
| 79 |  | 
|---|
| 80 | # XPM (X Pixmap) library | 
|---|
| 81 | XPMROOT  := $(X11ROOT) | 
|---|
| 82 |  | 
|---|
| 83 | # TCL (version 7.6 or later). | 
|---|
| 84 | TCLROOT  := /usr | 
|---|
| 85 | TCLLIB   += -ldl | 
|---|
| 86 |  | 
|---|
| 87 | # PGPLOT (FORTRAN plotting package). | 
|---|
| 88 | PGPLOTROOT := /usr | 
|---|
| 89 |  | 
|---|
| 90 | # FFTW Highly optimized FFT routines | 
|---|
| 91 | FFTWROOT := /usr | 
|---|
| 92 | FFTWLIB := -lfftw -lrfftw | 
|---|
| 93 |  | 
|---|
| 94 | CFITSIOROOT := /usr | 
|---|
| 95 |  | 
|---|
| 96 | RPFITSROOT := /usr/local | 
|---|
| 97 |  | 
|---|
| 98 | #----------------------------------------------------------------------------- | 
|---|
| 99 | # Compilation and linkage variables | 
|---|
| 100 | #----------------------------------------------------------------------------- | 
|---|
| 101 | # The C++ compiler. | 
|---|
| 102 | C++ROOT := /usr | 
|---|
| 103 |  | 
|---|
| 104 | # Preprocessor flags for system debug/optimized compilations. | 
|---|
| 105 | CPPSTD   += -DAIPS_LINUX -DAIPS_LITTLE_ENDIAN -DAIPS_STDLIB -DAIPS_NO_LEA_MALLOC  -D_GLIBCPP_DEPRECATED -DAIPS_AUTO_STL | 
|---|
| 106 |  | 
|---|
| 107 | # C compiler flags for system debug/optimized compilations. | 
|---|
| 108 | CC      := $(C++ROOT)/bin/gcc | 
|---|
| 109 | CSTD    += -DHAVE_LINUX_GLIBC -Wall | 
|---|
| 110 | COPTLVL := -O2 -fno-strength-reduce | 
|---|
| 111 |  | 
|---|
| 112 | # C++ compiler flags for system debug/optimized compilations. | 
|---|
| 113 | C++       := $(C++ROOT)/bin/g++ -Wno-deprecated | 
|---|
| 114 | C++STD    += -pipe -Wall -Wno-non-template-friend -Woverloaded-virtual -Wcast-align -Wno-comment -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE | 
|---|
| 115 |  | 
|---|
| 116 |  | 
|---|
| 117 | # FORTRAN compiler - using gcc (g77) | 
|---|
| 118 | F77ROOT  := $(C++ROOT) | 
|---|
| 119 | F77LIB := -lg2c | 
|---|
| 120 | FC       := $(F77ROOT)/bin/g77 | 
|---|
| 121 | FCOPTLVL := -O2 | 
|---|
| 122 | FCOPT    += -fPIC | 
|---|
| 123 |  | 
|---|
| 124 | # Link flags for system debug/optimized compilations; these are passed to | 
|---|
| 125 | # the C++ compiler. | 
|---|
| 126 | LDSTD := -Xlinker -rpath -Xlinker $(AIPSARCH)/lib:$(C++ROOT)/lib:$(MotifLIBD):$(X11LIBD) | 
|---|
| 127 |  | 
|---|
| 128 | # Control table for building AIPS++ libraries.  Four keywords are recognized: | 
|---|
| 129 | #    defeat:  The library will not be built (and if an old version exists it | 
|---|
| 130 | #             will be deleted). | 
|---|
| 131 | #    static:  The static library is built and is the one linked to. | 
|---|
| 132 | #    shatic:  The static and shared libraries are built but the static library | 
|---|
| 133 | #             is the one linked to. | 
|---|
| 134 | #    shared:  The static and shared libraries are built and the shared library | 
|---|
| 135 | #             is the one linked to. | 
|---|
| 136 | # | 
|---|
| 137 | #                    C++            C          FORTRAN | 
|---|
| 138 | #                 dbg    opt    dbg    opt    dbg    opt | 
|---|
| 139 | #               ------------- ------------- ------------- | 
|---|
| 140 | LIBatnf      := defeat static defeat defeat defeat defeat | 
|---|
| 141 |  | 
|---|
| 142 | # What consortium packages to build (atnf bima hia nfra nral nrao tifr). | 
|---|
| 143 | CONSORTIA += atnf | 
|---|
| 144 |  | 
|---|
| 145 | # Absolute pathname of perl-5 executable | 
|---|
| 146 | PERL5 := /usr/bin/perl | 
|---|
| 147 |  | 
|---|
| 148 | # Unset this to defeat document compilation. | 
|---|
| 149 | DOCSYS := | 
|---|
| 150 |  | 
|---|
| 151 | # Unset this to defeat document extraction from C++ sources. | 
|---|
| 152 | DOCEXTR := | 
|---|