summaryrefslogtreecommitdiff
path: root/Makefile.vc
diff options
context:
space:
mode:
authorenge <enge@211d60ee-9f03-0410-a15a-8952a2c7a4e4>2008-11-28 09:49:41 +0000
committerenge <enge@211d60ee-9f03-0410-a15a-8952a2c7a4e4>2008-11-28 09:49:41 +0000
commit3b005a7f212828fe358678ea0cc186b00fb1b015 (patch)
tree52cf944d921c019a684840ccb96e609814f48148 /Makefile.vc
parentbebde27c3f185eea83edb2ef87723eb4cfb16aa6 (diff)
downloadmpc-3b005a7f212828fe358678ea0cc186b00fb1b015.tar.gz
new Makefile.vc
git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@362 211d60ee-9f03-0410-a15a-8952a2c7a4e4
Diffstat (limited to 'Makefile.vc')
-rw-r--r--Makefile.vc321
1 files changed, 321 insertions, 0 deletions
diff --git a/Makefile.vc b/Makefile.vc
new file mode 100644
index 0000000..0936d22
--- /dev/null
+++ b/Makefile.vc
@@ -0,0 +1,321 @@
+# Makefile for the MPC library (Windows version).
+#
+# Copyright (C) 2002, 2004, 2005, 2007, 2008 Andreas Enge, Mickael Gastineau, Paul Zimmermann
+#
+# This file is part of the MPC Library.
+#
+# The MPC Library is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2.1 of the License, or (at your
+# option) any later version.
+#
+# The MPC Library is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public
+# License for more details.
+#
+# You should have received a copy of the GNU Lesser General Public License
+# along with the MPC Library; see the file COPYING.LIB. If not, write to
+# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston,
+# MA 02111-1307, USA.
+#
+
+# usage:
+# nmake /f Makefile.vc clean
+# clean the temporaries objects
+#
+# nmake /f Makefile.vc GMPDIR=gmpdirectory MPFRDIR=mpfrdirectory
+# compile MPC
+#
+# nmake /f Makefile.vc install DESTDIR=installdirectory
+# install MPC to installdirectory
+#
+# nmake /f Makefile.vc check GMPDIR=gmpdirectory MPFRDIR=mpfrdirectory
+# perform tests on MPC
+#
+
+
+CPP = cl.exe
+CC = cl.exe
+CDEFAULTFLAGS=/O2 /GR- /MD /nologo /EHs
+
+VERSION=0.5.1
+
+######################## do not edit below this line ##########################
+
+DIRMPC=.\src\
+DIRMPCTESTS=$(DIRMPC)\..\tests\
+
+INCLUDES = /I$(DIRMPC) /I$(GMPDIR)\include /I$(MPFR)\include
+CKERNELFLAGS = $(CDEFAULTFLAGS) /D__GMP_LIBGMP_DLL $(INCLUDES)
+CFLAGS = $(CKERNELFLAGS) /D__MPC_WITHIN_MPC /D_GMP_IEEE_FLOATS /DHAVE_CONFIG_H
+
+TESTCOMPILE=$(CC) $(CKERNELFLAGS) $(DIRMPC)\..\tests\tgeneric.c $(DIRMPC)\..\tests\comparisons.c $(DIRMPC)\..\tests\read_data.c $(DIRMPC)\..\tests\random.c $(DIRMPC)\..\tests\
+MIDTESTCOMPILE=/link /out:$(DIRMPCTESTS)
+ENDTESTCOMPILE=/LIBPATH:"$(GMPDIR)\lib" libmpc.lib libmpfr.lib libgmp.lib
+
+
+#generate the CPPOBJECTS : goto src and execute
+# ls *.c | sed "s/\.c/\.obj/" | awk ' { printf("$(DIRMPC)\\%s \\\n",$1); } '
+#generate the CPPLINKOBJECTS : goto src and execute
+# ls *.c | sed "s/\.c/\.obj/" | awk ' { printf("%s \\\n",$1); } '
+#generate the list for tests : goto tests and execute
+# ls *.c | sed "s/\.c//" | awk ' { printf("\t$(TESTCOMPILE)%s.c $(MIDTESTCOMPILE)%s.exe $(ENDTESTCOMPILE)\n\tcd $(DIRMPCTESTS) && %s.exe && cd ..\n",$1,$1,$1,$1); } '
+
+LIBRARY = libmpc.dll
+LIBRARYLIB = libmpc.lib
+
+CPPOBJECTS = $(DIRMPC)\abs.obj \
+$(DIRMPC)\add.obj \
+$(DIRMPC)\add_fr.obj \
+$(DIRMPC)\add_ui.obj \
+$(DIRMPC)\arg.obj \
+$(DIRMPC)\clear.obj \
+$(DIRMPC)\cmp.obj \
+$(DIRMPC)\cmp_si_si.obj \
+$(DIRMPC)\conj.obj \
+$(DIRMPC)\cos.obj \
+$(DIRMPC)\cosh.obj \
+$(DIRMPC)\div.obj \
+$(DIRMPC)\div_2exp.obj \
+$(DIRMPC)\div_fr.obj \
+$(DIRMPC)\div_ui.obj \
+$(DIRMPC)\exp.obj \
+$(DIRMPC)\fr_div.obj \
+$(DIRMPC)\fr_sub.obj \
+$(DIRMPC)\get_prec.obj \
+$(DIRMPC)\get_prec2.obj \
+$(DIRMPC)\imag.obj \
+$(DIRMPC)\init.obj \
+$(DIRMPC)\init2.obj \
+$(DIRMPC)\init3.obj \
+$(DIRMPC)\inp_str.obj \
+$(DIRMPC)\log.obj \
+$(DIRMPC)\mul.obj \
+$(DIRMPC)\mul_2exp.obj \
+$(DIRMPC)\mul_fr.obj \
+$(DIRMPC)\mul_i.obj \
+$(DIRMPC)\mul_si.obj \
+$(DIRMPC)\mul_ui.obj \
+$(DIRMPC)\neg.obj \
+$(DIRMPC)\norm.obj \
+$(DIRMPC)\out_str.obj \
+$(DIRMPC)\proj.obj \
+$(DIRMPC)\random.obj \
+$(DIRMPC)\random2.obj \
+$(DIRMPC)\real.obj \
+$(DIRMPC)\set.obj \
+$(DIRMPC)\set_d_d.obj \
+$(DIRMPC)\set_dfl_prec.obj \
+$(DIRMPC)\set_fr.obj \
+$(DIRMPC)\set_fr_fr.obj \
+$(DIRMPC)\set_prec.obj \
+$(DIRMPC)\set_si_si.obj \
+$(DIRMPC)\set_ui_fr.obj \
+$(DIRMPC)\set_ui_ui.obj \
+$(DIRMPC)\sin.obj \
+$(DIRMPC)\sinh.obj \
+$(DIRMPC)\sqr.obj \
+$(DIRMPC)\sqrt.obj \
+$(DIRMPC)\sub.obj \
+$(DIRMPC)\sub_fr.obj \
+$(DIRMPC)\sub_ui.obj \
+$(DIRMPC)\tan.obj \
+$(DIRMPC)\tanh.obj \
+$(DIRMPC)\uceil_log2.obj \
+$(DIRMPC)\ui_div.obj \
+$(DIRMPC)\ui_ui_sub.obj \
+$(DIRMPC)\urandom.obj \
+$(DIRMPC)\version.obj
+
+
+
+CPPLINKOBJECTS = abs.obj \
+add.obj \
+add_fr.obj \
+add_ui.obj \
+arg.obj \
+clear.obj \
+cmp.obj \
+cmp_si_si.obj \
+conj.obj \
+cos.obj \
+cosh.obj \
+div.obj \
+div_2exp.obj \
+div_fr.obj \
+div_ui.obj \
+exp.obj \
+fr_div.obj \
+fr_sub.obj \
+get_prec.obj \
+get_prec2.obj \
+imag.obj \
+init.obj \
+init2.obj \
+init3.obj \
+inp_str.obj \
+log.obj \
+mul.obj \
+mul_2exp.obj \
+mul_fr.obj \
+mul_i.obj \
+mul_si.obj \
+mul_ui.obj \
+neg.obj \
+norm.obj \
+out_str.obj \
+proj.obj \
+random.obj \
+random2.obj \
+real.obj \
+set.obj \
+set_d_d.obj \
+set_dfl_prec.obj \
+set_fr.obj \
+set_fr_fr.obj \
+set_prec.obj \
+set_si_si.obj \
+set_ui_fr.obj \
+set_ui_ui.obj \
+sin.obj \
+sinh.obj \
+sqr.obj \
+sqrt.obj \
+sub.obj \
+sub_fr.obj \
+sub_ui.obj \
+tan.obj \
+tanh.obj \
+uceil_log2.obj \
+ui_div.obj \
+ui_ui_sub.obj \
+urandom.obj \
+version.obj
+
+#
+# Link target: automatically builds its object dependencies before
+# executing its link command.
+#
+
+$(LIBRARY): $(DIRMPC)config.h $(CPPOBJECTS)
+ link.exe /DLL /out:$@ $(CPPLINKOBJECTS) /LIBPATH:"$(GMPDIR)\lib" libmpfr.lib libgmp.lib
+
+$(DIRMPC)config.h :
+ echo #define PACKAGE_STRING "mpc" >$(DIRMPC)config.h
+ echo #define PACKAGE_VERSION "$(VERSION)" >>$(DIRMPC)config.h
+ echo #define STDC_HEADERS 1 >>$(DIRMPC)config.h
+
+
+#
+# Clean target: "nmake /f Makefile.vc clean" to remove unwanted
+# objects and executables.
+#
+
+clean:
+ del *.obj $(CPPLINKOBJECTS) $(LIBRARY) *.tlh $(DIRMPC)config.h *.dll *.lib *.exe
+
+
+
+#
+# install target: "nmake /f Makefile.vc install DESTDIR=xxx" to perform the installation.
+#
+
+install:
+ -mkdir $(DESTDIR)
+ -mkdir $(DESTDIR)\include
+ copy $(DIRMPC)mpc.h $(DESTDIR)\include
+ -mkdir $(DESTDIR)\lib
+ copy $(LIBRARY) $(DESTDIR)\lib
+ copy $(LIBRARYLIB) $(DESTDIR)\lib
+
+#
+# install target: "nmake /f Makefile.vc check GMPDIR=xxx MPFRDIR=xxx" to perform the installation.
+#
+check : test
+test :
+ copy $(GMPDIR)\lib\*gmp*.dll $(DIRMPCTESTS)
+ copy $(MPFRDIR)\lib\*mpfr*.dll $(DIRMPCTESTS)
+ copy $(LIBRARY) $(DIRMPCTESTS)
+ $(TESTCOMPILE)tabs.c $(MIDTESTCOMPILE)tabs.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tabs.exe && cd ..
+ $(TESTCOMPILE)tadd.c $(MIDTESTCOMPILE)tadd.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tadd.exe && cd ..
+ $(TESTCOMPILE)tadd_fr.c $(MIDTESTCOMPILE)tadd_fr.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tadd_fr.exe && cd ..
+ $(TESTCOMPILE)tadd_ui.c $(MIDTESTCOMPILE)tadd_ui.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tadd_ui.exe && cd ..
+ $(TESTCOMPILE)targ.c $(MIDTESTCOMPILE)targ.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && targ.exe && cd ..
+ $(TESTCOMPILE)tconj.c $(MIDTESTCOMPILE)tconj.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tconj.exe && cd ..
+ $(TESTCOMPILE)tcos.c $(MIDTESTCOMPILE)tcos.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tcos.exe && cd ..
+ $(TESTCOMPILE)tcosh.c $(MIDTESTCOMPILE)tcosh.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tcosh.exe && cd ..
+ $(TESTCOMPILE)tdiv.c $(MIDTESTCOMPILE)tdiv.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tdiv.exe && cd ..
+ $(TESTCOMPILE)tdiv_2exp.c $(MIDTESTCOMPILE)tdiv_2exp.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tdiv_2exp.exe && cd ..
+ $(TESTCOMPILE)tdiv_fr.c $(MIDTESTCOMPILE)tdiv_fr.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tdiv_fr.exe && cd ..
+ $(TESTCOMPILE)tdiv_ui.c $(MIDTESTCOMPILE)tdiv_ui.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tdiv_ui.exe && cd ..
+# $(TESTCOMPILE)test.c $(MIDTESTCOMPILE)test.exe $(ENDTESTCOMPILE)
+# cd $(DIRMPCTESTS) && test.exe && cd ..
+ $(TESTCOMPILE)texp.c $(MIDTESTCOMPILE)texp.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && texp.exe && cd ..
+ $(TESTCOMPILE)tfr_div.c $(MIDTESTCOMPILE)tfr_div.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tfr_div.exe && cd ..
+ $(TESTCOMPILE)tfr_sub.c $(MIDTESTCOMPILE)tfr_sub.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tfr_sub.exe && cd ..
+ $(TESTCOMPILE)timag.c $(MIDTESTCOMPILE)timag.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && timag.exe && cd ..
+ $(TESTCOMPILE)tlog.c $(MIDTESTCOMPILE)tlog.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tlog.exe && cd ..
+# $(TESTCOMPILE)tmul.c $(MIDTESTCOMPILE)tmul.exe $(ENDTESTCOMPILE)
+# cd $(DIRMPCTESTS) && tmul.exe && cd ..
+ $(TESTCOMPILE)tmul_2exp.c $(MIDTESTCOMPILE)tmul_2exp.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tmul_2exp.exe && cd ..
+ $(TESTCOMPILE)tmul_fr.c $(MIDTESTCOMPILE)tmul_fr.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tmul_fr.exe && cd ..
+ $(TESTCOMPILE)tmul_i.c $(MIDTESTCOMPILE)tmul_i.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tmul_i.exe && cd ..
+ $(TESTCOMPILE)tmul_si.c $(MIDTESTCOMPILE)tmul_si.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tmul_si.exe && cd ..
+ $(TESTCOMPILE)tmul_ui.c $(MIDTESTCOMPILE)tmul_ui.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tmul_ui.exe && cd ..
+ $(TESTCOMPILE)tneg.c $(MIDTESTCOMPILE)tneg.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tneg.exe && cd ..
+ $(TESTCOMPILE)tnorm.c $(MIDTESTCOMPILE)tnorm.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tnorm.exe && cd ..
+ $(TESTCOMPILE)tproj.c $(MIDTESTCOMPILE)tproj.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tproj.exe && cd ..
+ $(TESTCOMPILE)treal.c $(MIDTESTCOMPILE)treal.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && treal.exe && cd ..
+ $(TESTCOMPILE)tsin.c $(MIDTESTCOMPILE)tsin.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tsin.exe && cd ..
+ $(TESTCOMPILE)tsinh.c $(MIDTESTCOMPILE)tsinh.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tsinh.exe && cd ..
+ $(TESTCOMPILE)tsqr.c $(MIDTESTCOMPILE)tsqr.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tsqr.exe && cd ..
+ $(TESTCOMPILE)tsqrt.c $(MIDTESTCOMPILE)tsqrt.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tsqrt.exe && cd ..
+ $(TESTCOMPILE)tsub.c $(MIDTESTCOMPILE)tsub.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tsub.exe && cd ..
+ $(TESTCOMPILE)tsub_fr.c $(MIDTESTCOMPILE)tsub_fr.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tsub_fr.exe && cd ..
+ $(TESTCOMPILE)tsub_ui.c $(MIDTESTCOMPILE)tsub_ui.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tsub_ui.exe && cd ..
+ $(TESTCOMPILE)ttan.c $(MIDTESTCOMPILE)ttan.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && ttan.exe && cd ..
+ $(TESTCOMPILE)ttanh.c $(MIDTESTCOMPILE)ttanh.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && ttanh.exe && cd ..
+ $(TESTCOMPILE)tui_div.c $(MIDTESTCOMPILE)tui_div.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tui_div.exe && cd ..
+ $(TESTCOMPILE)tui_ui_sub.c $(MIDTESTCOMPILE)tui_ui_sub.exe $(ENDTESTCOMPILE)
+ cd $(DIRMPCTESTS) && tui_ui_sub.exe && cd ..
+ @echo --------------------------------------------------
+ @echo All tests passed
+ @echo --------------------------------------------------
+