Add some more files
This commit is contained in:
parent
7f3ae182e1
commit
aa2a1dedd8
3 changed files with 347 additions and 0 deletions
334
src/configure
vendored
Executable file
334
src/configure
vendored
Executable file
|
@ -0,0 +1,334 @@
|
|||
#! /bin/sh
|
||||
# © M E C Swanson 2008
|
||||
#
|
||||
#Script to generate the mangle Makefile
|
||||
#supports Linux, Darwin (MacOSX Intel or PPC), and SunOS
|
||||
#can generate Makefile for real*10 or real*8 versions of mangle
|
||||
#
|
||||
#USAGE: configure [<OS>] [<architecture>] [<real8 or real10>]
|
||||
#EXAMPLES:
|
||||
#to automatically detect OS, architecture, and mangle version:
|
||||
#configure
|
||||
#to generate Makefile for Linux:
|
||||
#configure Linux
|
||||
#to generate Makefile for real8 for Mac PPC:
|
||||
#configure Darwin ppc real8
|
||||
|
||||
#process command line arguments
|
||||
if [ "$1" = "" ]; then
|
||||
OS=`uname -s`
|
||||
else
|
||||
OS=$1
|
||||
fi
|
||||
|
||||
if [ "$2" = "" ]; then
|
||||
ARCH=`arch`
|
||||
else
|
||||
ARCH=$2
|
||||
fi
|
||||
|
||||
if [ "$3" = "" ]; then
|
||||
BYTES="real10"
|
||||
else
|
||||
BYTES=$3
|
||||
fi
|
||||
|
||||
#Warnings
|
||||
if [ "$ARCH" = "ppc" ]; then
|
||||
OS=$OS$ARCH
|
||||
if [ "$BYTES" = "real10" ]; then
|
||||
echo "WARNING: the real*10 version of mangle has not yet been"
|
||||
echo "successfully compiled on a PPC Mac. Please contact the mangle"
|
||||
echo "development team (tegmark@mit.edu) if you manage to succeed!"
|
||||
fi
|
||||
fi
|
||||
|
||||
if [ "$OS" = "SunOS" ]; then
|
||||
echo "WARNING: mangle2.x has not yet been successfully compiled"
|
||||
echo "on SunOS. Please contact the mangle development team"
|
||||
echo "(tegmark@mit.edu) if you manage to succeed!"
|
||||
fi
|
||||
|
||||
if [ "$ARCH" = "ppc64" ]; then
|
||||
echo "WARNING: mangle has not yet been tested on the ppc64 architecture."
|
||||
echo "Please contact the mangle development team (tegmark@mit.edu)"
|
||||
echo "if you manage to compile mangle on this system!"
|
||||
fi
|
||||
|
||||
if [ "$OS" != "Linux" ] && [ "$OS" != "Darwin" ] && [ "$OS" != "Darwinppc" ] && [ "$OS" != "SunOS" ] ; then
|
||||
echo "WARNING: this configure script does not support $OS."
|
||||
echo "Attempting to use configuration for Linux ..."
|
||||
OS="Linux"
|
||||
fi
|
||||
|
||||
#Start of Makefile
|
||||
echo "#Makefile for $OS $ARCH $BYTES generated with configure." > Makefile
|
||||
|
||||
cat <<EOF >> Makefile
|
||||
|
||||
###############################################################################
|
||||
# LOCAL CONFIGURATION: EDIT AS DESIRED
|
||||
###############################################################################
|
||||
|
||||
EOF
|
||||
|
||||
#For real*10 version of Mangle, add compiler flags to the Makefile for
|
||||
#Linux, Darwin, Darwinppc, or SunOS
|
||||
if [ "$BYTES" = "real10" ]; then
|
||||
case $OS in
|
||||
#Linux compiler flags:
|
||||
Linux)
|
||||
cat <<EOF >> Makefile
|
||||
#------
|
||||
# Gnu
|
||||
|
||||
CC = gcc
|
||||
CFLAGS = -g -O3 \$(CPPFLAGS) -Wall -DLINUX -DGCC -D_FILE_OFFSET_BITS=64
|
||||
|
||||
F77 = gfortran
|
||||
FFLAGS:= -Wall \$(CPPFLAGS) -g -O3 -DGFORTRAN -ff2c -D_FILE_OFFSET_BITS=64
|
||||
STATICFLAGS:= -static
|
||||
|
||||
#MAKE=gmake
|
||||
|
||||
all: mangle
|
||||
|
||||
EOF
|
||||
;;
|
||||
#Intel Mac compiler flags:
|
||||
Darwin)
|
||||
cat <<EOF >> Makefile
|
||||
#------
|
||||
# Gnu
|
||||
|
||||
CC = gcc
|
||||
CFLAGS = -g -O3 -Wall -DMACOSX -DGCC -m32 -D_FILE_OFFSET_BITS=64
|
||||
|
||||
F77 = gfortran
|
||||
FFLAGS:= -Wall -g -O3 -DGFORTRAN -ff2c -m32 -D_FILE_OFFSET_BITS=64
|
||||
#STATICFLAGS:= -static-libgfortran
|
||||
STATICFLAGS:= -nodefaultlibs -lSystem -lgcc -lm -lgfortran_static
|
||||
# static linking of gfortran library to compile for distribution.
|
||||
# hack to work around the fact that the -static-libgfortran flag does
|
||||
# not currently work on Darwin - requires running the following
|
||||
# command to make a symbolic link to the static gfortran library
|
||||
# in /usr/local/gfortran/lib or wherever gfortran is installed:
|
||||
# sudo ln -s libgfortran.a libgfortran_static.a
|
||||
|
||||
#MAKE=gmake
|
||||
|
||||
all: mangle
|
||||
|
||||
EOF
|
||||
echo "WARNING: To compile statically with gfortran (i.e., using 'make static'),"
|
||||
echo "you need to make a symbolic link to the static gfortran library as follows:"
|
||||
echo ""
|
||||
echo "cd /usr/local/gfortran/lib (or wherever gfortran is installed)"
|
||||
echo "sudo ln -s libgfortran.a libgfortran_static.a"
|
||||
echo ""
|
||||
;;
|
||||
#PPC Mac compiler flags:
|
||||
Darwinppc)
|
||||
cat <<EOF >> Makefile
|
||||
#------
|
||||
# Gnu
|
||||
|
||||
CC = gcc
|
||||
CFLAGS = -g -O3 -Wall -DMACOSX -DGCC -D_FILE_OFFSET_BITS=64
|
||||
|
||||
F77 = gfortran
|
||||
FFLAGS:= -Wall -g -O3 -DGFORTRAN -ff2c -D_FILE_OFFSET_BITS=64
|
||||
#STATICFLAGS:= -static-libgfortran
|
||||
STATICFLAGS:= -nodefaultlibs -lSystem -lgcc -lm -lgfortran_static
|
||||
# static linking of gfortran library to compile for distribution.
|
||||
# hack to work around the fact that the -static-libgfortran flag does
|
||||
# not currently work on Darwin - requires running the following
|
||||
# command to make a symbolic link to the static gfortran library
|
||||
# in /usr/local/gfortran/lib or wherever gfortran is installed:
|
||||
# sudo ln -s libgfortran.a libgfortran_static.a
|
||||
|
||||
#MAKE=gmake
|
||||
|
||||
all: mangle
|
||||
|
||||
EOF
|
||||
;;
|
||||
#SunOS compiler flags:
|
||||
SunOS)
|
||||
cat <<EOF >> Makefile
|
||||
#----
|
||||
# Sun
|
||||
|
||||
#CC = cc
|
||||
#CFLAGS = -O -DSUN
|
||||
|
||||
CC = gcc
|
||||
CFLAGS = -g -O3 -DGCC -D_FILE_OFFSET_BITS=64
|
||||
|
||||
#F77 = f90
|
||||
##FFLAGS = -u -O -pg -DSUN
|
||||
#FFLAGS = -u -O -DSUN
|
||||
|
||||
# gnu gfortran
|
||||
F77 = gfortran
|
||||
FFLAGS = -W -g -O3 -DGFORTRAN -ff2c -D_FILE_OFFSET_BITS=64
|
||||
|
||||
#MAKE=make
|
||||
|
||||
all: mangler
|
||||
|
||||
EOF
|
||||
;;
|
||||
esac
|
||||
|
||||
#If real*10 is not specified, default to real*8 version and add compiler
|
||||
#flags to the Makefile for Linux, Darwin, Darwinppc, or SunOS
|
||||
else
|
||||
case $OS in
|
||||
#Linux compiler flags:
|
||||
Linux)
|
||||
cat <<EOF >> Makefile
|
||||
#------
|
||||
# Gnu
|
||||
|
||||
CC = gcc
|
||||
CFLAGS = -g -O3 -Wall -DLINUX -DGCC -m32 -D_FILE_OFFSET_BITS=64
|
||||
|
||||
## f2c
|
||||
#F77 = fort77
|
||||
#FFLAGS = -u -a -C -g -DF2C
|
||||
##-O3
|
||||
##-pg
|
||||
|
||||
# gnu g77 (which assumes no SAVE)
|
||||
F77 = g77
|
||||
FFLAGS = -Wimplicit -fbounds-check -g -O3 -DG77 -m32 -D_FILE_OFFSET_BITS=64
|
||||
|
||||
#MAKE=gmake
|
||||
|
||||
all: mangle
|
||||
|
||||
EOF
|
||||
;;
|
||||
#Intel Mac compiler flags:
|
||||
Darwin)
|
||||
cat <<EOF >> Makefile
|
||||
#------
|
||||
# Gnu
|
||||
|
||||
CC = gcc
|
||||
CFLAGS = -g -O3 -Wall -DMACOSX -DGCC -m32 -D_FILE_OFFSET_BITS=64
|
||||
|
||||
# gnu g77 (which assumes no SAVE)
|
||||
F77 = g77
|
||||
FFLAGS = -Wimplicit -fbounds-check -g -O3 -DG77 -m32 -D_FILE_OFFSET_BITS=64
|
||||
|
||||
#MAKE=gmake
|
||||
|
||||
all: mangle
|
||||
|
||||
EOF
|
||||
;;
|
||||
#PPC Mac compiler flags:
|
||||
Darwinppc)
|
||||
|
||||
cat <<EOF >> Makefile
|
||||
#------
|
||||
# Gnu
|
||||
|
||||
CC = gcc
|
||||
CFLAGS = -g -O3 -Wall -DMACOSX -DGCC -D_FILE_OFFSET_BITS=64
|
||||
|
||||
# gnu g77 (which assumes no SAVE)
|
||||
F77 = g77
|
||||
FFLAGS = -Wimplicit -fbounds-check -g -O3 -DG77 -D_FILE_OFFSET_BITS=64
|
||||
|
||||
#MAKE=gmake
|
||||
|
||||
all: mangle
|
||||
|
||||
EOF
|
||||
;;
|
||||
#SunOS compiler flags:
|
||||
SunOS)
|
||||
cat <<EOF >> Makefile
|
||||
#----
|
||||
# Sun
|
||||
|
||||
CC = cc
|
||||
CFLAGS = -O -DSUN -m32 -D_FILE_OFFSET_BITS=64
|
||||
|
||||
#CC = gcc
|
||||
#CFLAGS = -g -O3 -DGCC
|
||||
|
||||
F77 = f77
|
||||
#FFLAGS = -u -O -pg -DSUN
|
||||
FFLAGS = -u -O -DSUN -m32 -D_FILE_OFFSET_BITS=64
|
||||
|
||||
## gnu g77 (which assumes no SAVE)
|
||||
#F77 = g77
|
||||
#FFLAGS = -Wimplicit -g -O3 -DG77
|
||||
|
||||
#MAKE=make
|
||||
|
||||
all: mangler
|
||||
|
||||
EOF
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
#add this text to Makefile for all systems:
|
||||
cat <<EOF >> Makefile
|
||||
#-----------------
|
||||
# starlink library
|
||||
|
||||
# path to search for the starlink library
|
||||
ISLIB = -L./lib/starlink -L\$(HOME)/lib/starlink
|
||||
|
||||
# starlink library should be called libstar.a
|
||||
# Edit as desired,
|
||||
# or make a soft link from the actual starlink library to libstar.a:
|
||||
# ln -s <name_of_starlink_library> libstar.a
|
||||
SLIB = -lstar
|
||||
|
||||
###############################################################################
|
||||
# END OF LOCAL CONFIGURATION
|
||||
###############################################################################
|
||||
|
||||
BIN=../bin
|
||||
ILIB = -L.
|
||||
LLIB = \$(LDFLAGS) -lmangle
|
||||
|
||||
PROGS = balkanize drangle harmonize map pixelize pixelmap polyid poly2hpx weight_dumb poly2poly ransack rasterize snap unify weight test
|
||||
#ddcount rotate rrcoeffs
|
||||
|
||||
COBJ = progress.o rwhealpix.o rwbinpoly.o advise_fmt.o braktop_.o cmminf.o convert.o copy_format.o copy_poly.o drandom.o drangle_polys.o dranglepolys_.o dump_poly.o findtop_.o get_pixel.o garea.o gcmlim.o gphbv.o gphi.o gptin.o gspher.o gsphr.o gvert.o gvlim.o gvphi.o harmonize_polys.o harmonizepolys_.o healpix_ang2pix_nest.o healpixpolys.o ikrand.o msg.o new_poly.o new_vert.o partition_poly.o places.o poly_id.o poly_sort.o prune_poly.o rasterize.o rdangle.o rdline.o rdmask.o rdmask_.o rdspher.o rrcoeffs.o scale.o sdsspix.o search.o snap_poly.o split_poly.o strcmpl.o strdict.o vmid.o weight_fn.o which_pixel.o wrangle.o wrho.o wrmask.o wrrrcoeffs.o wrspher.o
|
||||
|
||||
FOBJ = azel.s.o azell.s.o braktop.s.o felp.s.o fframe.s.o findtop.s.o garea.s.o gaream.s.o gcmlim.s.o gphi.s.o gphim.s.o gphbv.s.o gptin.s.o gsphera.s.o gspher.s.o gsubs.s.o gvert.s.o gvlim.s.o gvphi.s.o iylm.s.o pix2vec_nest.s.o twodf100k.o twodf230k.o twoqz.o wlm.s.o wrho.s.o
|
||||
|
||||
EOF
|
||||
|
||||
#add this text to Makefile for all systems except Sun:
|
||||
if [ ! "$OS" = "SunOS" ]; then
|
||||
cat <<EOF >> Makefile
|
||||
# objects not already present (will try to extract them from libmangle.a)
|
||||
OBJ := \$(strip \$(foreach objfile, \$(COBJ) \$(FOBJ), \$(shell if [ ! -r \$(objfile) ]; then echo \$(objfile); fi)))
|
||||
|
||||
mangle:
|
||||
@ if [ -r libmangle.a -a "\$(OBJ)" ] ; then \\
|
||||
echo "extracting files from libmangle.a" ; \\
|
||||
ar xo libmangle.a \$(OBJ) >/dev/null 2>&1 ; \\
|
||||
rm -f __.SYMDEF ; \\
|
||||
fi
|
||||
@ \$(MAKE) mangler
|
||||
@ rm -f \$(COBJ) \$(FOBJ)
|
||||
|
||||
EOF
|
||||
|
||||
fi
|
||||
|
||||
#append non-system dependent part of (in Makefile.in) to Makefile
|
||||
cat Makefile.in >> Makefile
|
||||
|
||||
echo "Makefile generated for $OS $ARCH $BYTES."
|
4
src/maker
Executable file
4
src/maker
Executable file
|
@ -0,0 +1,4 @@
|
|||
echo ""
|
||||
includec advise_fmt.c balkanize.c braktop_.c cmminf.c convert.c copy_format.c copy_poly.c ddcount.c drandom.c drangle.c drangle_polys.c dranglepolys_.c dump_poly.c findtop_.c garea.c gcmlim.c gphbv.c gphi.c gptin.c gspher.c gsphr.c gvert.c gvlim.c gvphi.c get_pixel.c harmonize.c harmonize_polys.c harmonizepolys_.c healpix_ang2pix_nest.c healpixpolys.c ikrand.c map.c msg.c new_poly.c new_vert.c partition_poly.c pixelize.c pixelmap.c places.c poly2poly.c poly_id.c polyid.c poly_sort.c prune_poly.c ransack.c rasterize.c rdangle.c rdline.c rdmask_.c rdmask.c rdspher.c rotate.c rrcoeffs.c scale.c sdsspix.c search.c snap.c snap_poly.c split_poly.c strcmpl.c strdict.c unify.c vmid.c weight.c weight_fn.c which_pixel.c wrangle.c wrho.c wrmask.c wrrrcoeffs.c wrspher.c test.c
|
||||
echo ""
|
||||
includef azell.s.f azel.s.f braktop.s.f felp.s.f fframe.s.f findtop.s.f garea.s.f gaream.s.f gcmlim.s.f gphbv.s.f gphi.s.f gphim.s.f gptin.s.f gsphera.s.f gspher.s.f gsubs.s.f gvert.s.f gvlim.s.f gvphi.s.f iylm.s.f pix2vec_nest.s.f twodf100k.f twodf230k.f twoqz.f wlm.s.f wrho.s.f
|
9
src/mangdir.data
Normal file
9
src/mangdir.data
Normal file
|
@ -0,0 +1,9 @@
|
|||
c-----------------------------------------------------------------------
|
||||
c * mangenv = name of environment variable containing mangle directory.
|
||||
c * mangdir = pathname of directory containing mangle code.
|
||||
c * These variables are declared in mangdir.inc
|
||||
data mangenv,mangdir /'MANGLEDIR',
|
||||
c * DO NOT TRY CHANGING THE FOLLOWING, AS THE NAME WILL BE OVERWRITTEN.
|
||||
c * THE DIRECTORY IS OBTAINED FROM THE ENVIRONMENT VARIABLE 'MANGLEDIR'.
|
||||
* '<pathname_of_directory_containing_mangle>'/
|
||||
c
|
Loading…
Add table
Reference in a new issue