# Makefile for vector math library. # # Copyright (C) 2006, 2007 Sony Computer Entertainment Inc. # All rights reserved. # # Redistribution and use in source and binary forms, # with or without modification, are permitted provided that the # following conditions are met: # * Redistributions of source code must retain the above copyright # notice, this list of conditions and the following disclaimer. # * Redistributions in binary form must reproduce the above copyright # notice, this list of conditions and the following disclaimer in the # documentation and/or other materials provided with the distribution. # * Neither the name of the Sony Computer Entertainment Inc nor the names # of its contributors may be used to endorse or promote products derived # from this software without specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE # ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE # LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR # CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF # SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. # How to build: # # Nothing to do (The all of the library is implemented as inline). # # How to install: # # To install the library: # # make ARCH= install # # where must be one of: # # ppu (PowerPC) # spu # SSE # scalar (generic) # # e.g.) make ARCH=cell install # topdir = . ARCH = scalar prefix_spu = /usr/spu ARCH_DIRS = $(ARCH) ARCH_INSTALL= $(ARCH_INSTALL_$(ARCH)) ARCH_CHECK= $(ARCH_CHECK_$(ARCH)) prefix = $(if $(prefix_$(ARCH)),$(prefix_$(ARCH)),/usr) DESTDIR = COMMON_DIRS = scalar INSTALL = install LIB_MAJOR_VERSION = 1 LIB_MINOR_VERSION = 0 LIB_RELEASE = 1 LIB_FULL_VERSION = $(LIB_MAJOR_VERSION).$(LIB_MINOR_VERSION).$(LIB_RELEASE) LIB_BASE = vectormath TAR_NAME = $(LIB_BASE)-$(LIB_FULL_VERSION) TAR_BALL = $(TAR_NAME).tar.gz all: @true install: $(INSTALL) -m 755 -d $(DESTDIR)$(prefix)/include/vectormath/c $(INSTALL) -m 755 -d $(DESTDIR)$(prefix)/include/vectormath/cpp $(INSTALL) -m 644 include/vectormath/c/*.h $(DESTDIR)$(prefix)/include/vectormath/c/ $(INSTALL) -m 644 include/vectormath/cpp/*.h $(DESTDIR)$(prefix)/include/vectormath/cpp/ $(INSTALL) -m 755 -d $(DESTDIR)$(prefix)/include/vectormath/cpp for _d in $(ARCH_DIRS) $(COMMON_DIRS); do \ if test -d include/vectormath/$$_d/c; then \ $(INSTALL) -m 755 -d $(DESTDIR)$(prefix)/include/vectormath/$$_d/c && \ $(INSTALL) -m 644 include/vectormath/$$_d/c/*.h \ $(DESTDIR)$(prefix)/include/vectormath/$$_d/c/ || exit 1; \ fi; \ if test -d include/vectormath/$$_d/cpp; then \ $(INSTALL) -m 755 -d $(DESTDIR)$(prefix)/include/vectormath/$$_d/cpp && \ $(INSTALL) -m 644 include/vectormath/$$_d/cpp/*.h \ $(DESTDIR)$(prefix)/include/vectormath/$$_d/cpp/ || exit 1; \ fi; \ done check: $(MAKE) -C tests ARCH=$(ARCH) check clean: $(MAKE) -C tests clean -rm -f $(TAR_BALL) distclean: $(MAKE) -C tests distclean dist: -rm -rf .dist mkdir -p .dist/$(TAR_NAME) find . -name .dist -prune -o \ -name .CVS -prune -o -name .svn -prune -o \ -name .pc -prune -o -name patches -prune -o \ '(' -name README -o -name LICENSE -o \ -name Makefile -o -name '*.[ch]' -o -name '*.cpp' -o \ -name '*.pl' -o -name '*.txt' -o -name '*.pdf' -o -name '*.spec' ')' \ -print | tar -T - -cf - | tar xf - -C .dist/$(TAR_NAME) tar zcf $(TAR_BALL) -C .dist $(TAR_NAME) -rm -rf .dist