1# Makefile for the MPC library (Windows version). 2# 3# Copyright (C) INRIA - CNRS, 2002, 2004, 2005, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2016, 2017, 2018, 2020 4# 5# This file is part of the MPC Library. 6# 7# The MPC Library is free software; you can redistribute it and/or modify 8# it under the terms of the GNU Lesser General Public License as published by 9# the Free Software Foundation; either version 2.1 of the License, or (at your 10# option) any later version. 11# 12# The MPC Library is distributed in the hope that it will be useful, but 13# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY 14# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public 15# License for more details. 16# 17# You should have received a copy of the GNU Lesser General Public License 18# along with the MPC Library; see the file COPYING.LIB. If not, write to 19# the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, 20# MA 02111-1307, USA. 21# 22 23# usage: 24# nmake /f Makefile.vc clean 25# clean the temporaries objects 26# 27# nmake /f Makefile.vc STATIC=0|1 GMPDIR=gmpdirectory MPFRDIR=mpfrdirectory 28# compile MPC 29# 30# nmake /f Makefile.vc STATIC=0|1 install GMPDIR=gmpdirectory MPFRDIR=mpfrdirectory DESTDIR=installdirectory 31# install MPC to installdirectory 32# 33# nmake /f Makefile.vc STATIC=0|1 check GMPDIR=gmpdirectory MPFRDIR=mpfrdirectory 34# perform tests on MPC 35# 36# GMPDIR : specify the location where GMP is installed 37# MPFRDIR : specify the location where MPFR is installed 38# DESTDIR : specify the location where MPC will be installed 39# STATIC : specify if a static or dynamic library of MPC will be created 40# STATIC=1 : build a static library 41# STATIC=0 : build a dynamic library (DLL) 42# A dynamic library is created by default if STATIC is omitted (STATIC=0) 43# ENABLELOGGING : specify if MPC functions calls are logged 44# ENABLELOGGING=1 : MPC functions calls are logged 45# ENABLELOGGING=0 : MPC functions calls are not logged (default) 46# Functions calls are not logged by default if ENABLELOGGING is omitted (ENABLELOGGING=0) 47 48 49CPP = cl.exe 50CC = cl.exe 51CDEFAULTFLAGS=/O2 /GR- /MD /nologo /EHs 52 53VERSION=1.2.1 54 55######################## do not edit below this line ########################## 56 57DIRMPC=.\src 58DIRMPCTESTS=.\tests\\ 59 60!if "$(STATIC)" == "0" 61LIBRARY = libmpc.dll 62LINKER = link.exe /DLL 63GMPMUSTBEDLL=/D__GMP_LIBGMP_DLL 64!else 65LIBRARY = libmpc.lib 66LINKER = lib.exe 67GMPMUSTBEDLL= 68!endif 69 70#check for logging. if yes then add logging.c to the library 71!if "$(ENABLELOGGING)" == "1" 72CPPOBJECTS_LOGGING = $(DIRMPC)\logging.obj 73CPPLINKOBJECTS_LOGGING = logging.obj 74LIBS_LOGGING = kernel32.lib 75!else 76CPPOBJECTS_LOGGING = 77CPPLINKOBJECTS_LOGGING = 78LIBS_LOGGING = 79!endif 80 81 82INCLUDES = /I$(DIRMPC) /I$(GMPDIR)\include /I$(MPFR)\include 83CKERNELFLAGS = $(CDEFAULTFLAGS) $(GMPMUSTBEDLL) $(INCLUDES) 84CFLAGS = $(CKERNELFLAGS) /D__MPC_WITHIN_MPC /D_GMP_IEEE_FLOATS /DHAVE_CONFIG_H 85 86TESTSSOURCES=$(DIRMPCTESTS)\check_data.c $(DIRMPCTESTS)\clear_parameters.c \ 87 $(DIRMPCTESTS)\close_datafile.c $(DIRMPCTESTS)\comparisons.c $(DIRMPCTESTS)\copy_parameter.c $(DIRMPCTESTS)\double_rounding.c \ 88 $(DIRMPCTESTS)\init_parameters.c $(DIRMPCTESTS)\mpfr_flags.c $(DIRMPCTESTS)\open_datafile.c $(DIRMPCTESTS)\print_parameter.c \ 89 $(DIRMPCTESTS)\random.c $(DIRMPCTESTS)\read_data.c $(DIRMPCTESTS)\read_description.c $(DIRMPCTESTS)\read_line.c $(DIRMPCTESTS)\rounding.c \ 90 $(DIRMPCTESTS)\setprec_parameters.c $(DIRMPCTESTS)\tpl_gmp.c $(DIRMPCTESTS)\tpl_mpc.c $(DIRMPCTESTS)\tpl_mpfr.c $(DIRMPCTESTS)\tpl_native.c 91 92TESTCOMPILE=$(CC) $(CKERNELFLAGS) $(TESTSSOURCES) $(DIRMPCTESTS) 93MIDTESTCOMPILE=/link /out:$(DIRMPCTESTS) 94ENDTESTCOMPILE=/LIBPATH:"$(DIRMPCTESTS)" libmpc.lib /LIBPATH:"$(GMPDIR)\lib" libmpfr.lib libgmp.lib $(LIBS_LOGGING) 95 96 97#generate the CPPOBJECTS : goto src and execute 98# ls *.c | sed "s/\.c/\.obj/" | awk ' { printf("$(DIRMPC)\\%s \\\n",$1); } ' 99#generate the CPPLINKOBJECTS : goto src and execute 100# ls *.c | sed "s/\.c/\.obj/" | awk ' { printf("%s \\\n",$1); } ' 101#generate the list for tests : goto tests and execute 102# ls t*.c | sed "s/\.c//" | grep -v comparisons | grep -v read_data | grep -v random | awk ' { printf("\t$(TESTCOMPILE)%s.c $(MIDTESTCOMPILE)%s.exe $(ENDTESTCOMPILE)\n\tcd $(DIRMPCTESTS) && %s.exe && cd ..\n",$1,$1,$1,$1); } ' 103 104LIBRARYLIB = libmpc.lib 105 106CPPOBJECTS =$(DIRMPC)\abs.obj \ 107$(DIRMPC)\acos.obj \ 108$(DIRMPC)\acosh.obj \ 109$(DIRMPC)\add.obj \ 110$(DIRMPC)\add_fr.obj \ 111$(DIRMPC)\add_si.obj \ 112$(DIRMPC)\add_ui.obj \ 113$(DIRMPC)\arg.obj \ 114$(DIRMPC)\asin.obj \ 115$(DIRMPC)\asinh.obj \ 116$(DIRMPC)\atan.obj \ 117$(DIRMPC)\atanh.obj \ 118$(DIRMPC)\clear.obj \ 119$(DIRMPC)\cmp.obj \ 120$(DIRMPC)\cmp_abs.obj \ 121$(DIRMPC)\cmp_si_si.obj \ 122$(DIRMPC)\conj.obj \ 123$(DIRMPC)\cos.obj \ 124$(DIRMPC)\cosh.obj \ 125$(DIRMPC)\div.obj \ 126$(DIRMPC)\div_2ui.obj \ 127$(DIRMPC)\div_fr.obj \ 128$(DIRMPC)\div_ui.obj \ 129$(DIRMPC)\exp.obj \ 130$(DIRMPC)\fma.obj \ 131$(DIRMPC)\fr_div.obj \ 132$(DIRMPC)\fr_sub.obj \ 133$(DIRMPC)\get_prec.obj \ 134$(DIRMPC)\get_prec2.obj \ 135$(DIRMPC)\get_version.obj \ 136$(DIRMPC)\get_x.obj \ 137$(DIRMPC)\imag.obj \ 138$(DIRMPC)\init2.obj \ 139$(DIRMPC)\init3.obj \ 140$(DIRMPC)\inp_str.obj \ 141$(DIRMPC)\log.obj \ 142$(DIRMPC)\log10.obj \ 143$(DIRMPC)\mem.obj \ 144$(DIRMPC)\mul.obj \ 145$(DIRMPC)\mul_2ui.obj \ 146$(DIRMPC)\mul_fr.obj \ 147$(DIRMPC)\mul_i.obj \ 148$(DIRMPC)\mul_si.obj \ 149$(DIRMPC)\mul_ui.obj \ 150$(DIRMPC)\neg.obj \ 151$(DIRMPC)\norm.obj \ 152$(DIRMPC)\out_str.obj \ 153$(DIRMPC)\pow.obj \ 154$(DIRMPC)\pow_d.obj \ 155$(DIRMPC)\pow_fr.obj \ 156$(DIRMPC)\pow_ld.obj \ 157$(DIRMPC)\pow_si.obj \ 158$(DIRMPC)\pow_ui.obj \ 159$(DIRMPC)\pow_z.obj \ 160$(DIRMPC)\proj.obj \ 161$(DIRMPC)\real.obj \ 162$(DIRMPC)\rootofunity.obj \ 163$(DIRMPC)\set.obj \ 164$(DIRMPC)\set_prec.obj \ 165$(DIRMPC)\set_str.obj \ 166$(DIRMPC)\set_x.obj \ 167$(DIRMPC)\set_x_x.obj \ 168$(DIRMPC)\sin.obj \ 169$(DIRMPC)\sin_cos.obj \ 170$(DIRMPC)\sinh.obj \ 171$(DIRMPC)\sqr.obj \ 172$(DIRMPC)\sqrt.obj \ 173$(DIRMPC)\strtoc.obj \ 174$(DIRMPC)\sub.obj \ 175$(DIRMPC)\sub_fr.obj \ 176$(DIRMPC)\sub_ui.obj \ 177$(DIRMPC)\swap.obj \ 178$(DIRMPC)\tan.obj \ 179$(DIRMPC)\tanh.obj \ 180$(DIRMPC)\uceil_log2.obj \ 181$(DIRMPC)\ui_div.obj \ 182$(DIRMPC)\ui_ui_sub.obj $(CPPOBJECTS_LOGGING) \ 183$(DIRMPC)\urandom.obj 184 185CPPLINKOBJECTS = abs.obj \ 186acos.obj \ 187acosh.obj \ 188add.obj \ 189add_fr.obj \ 190add_si.obj \ 191add_ui.obj \ 192arg.obj \ 193asin.obj \ 194asinh.obj \ 195atan.obj \ 196atanh.obj \ 197clear.obj \ 198cmp.obj \ 199cmp_abs.obj \ 200cmp_si_si.obj \ 201conj.obj \ 202cos.obj \ 203cosh.obj \ 204div.obj \ 205div_2ui.obj \ 206div_fr.obj \ 207div_ui.obj \ 208exp.obj \ 209fma.obj \ 210fr_div.obj \ 211fr_sub.obj \ 212get_prec.obj \ 213get_prec2.obj \ 214get_version.obj \ 215get_x.obj \ 216imag.obj \ 217init2.obj \ 218init3.obj \ 219inp_str.obj \ 220log.obj \ 221log10.obj \ 222mem.obj \ 223mul.obj \ 224mul_2ui.obj \ 225mul_fr.obj \ 226mul_i.obj \ 227mul_si.obj \ 228mul_ui.obj \ 229neg.obj \ 230norm.obj \ 231out_str.obj \ 232pow.obj \ 233pow_d.obj \ 234pow_fr.obj \ 235pow_ld.obj \ 236pow_si.obj \ 237pow_ui.obj \ 238pow_z.obj \ 239proj.obj \ 240real.obj \ 241rootofunity.obj \ 242set.obj \ 243set_prec.obj \ 244set_str.obj \ 245set_x.obj \ 246set_x_x.obj \ 247sin.obj \ 248sin_cos.obj \ 249sinh.obj \ 250sqr.obj \ 251sqrt.obj \ 252strtoc.obj \ 253sub.obj \ 254sub_fr.obj \ 255sub_ui.obj \ 256swap.obj \ 257tan.obj \ 258tanh.obj \ 259uceil_log2.obj \ 260ui_div.obj \ 261ui_ui_sub.obj $(CPPLINKOBJECTS_LOGGING) \ 262urandom.obj 263 264# 265# Link target: automatically builds its object dependencies before 266# executing its link command. 267# 268 269$(LIBRARY): $(DIRMPC)config.h $(CPPOBJECTS) 270 $(LINKER) /out:$@ $(CPPLINKOBJECTS) /LIBPATH:"$(GMPDIR)\lib" libmpfr.lib libgmp.lib $(LIBS_LOGGING) 271 272$(DIRMPC)config.h : 273 echo #define PACKAGE_STRING "mpc" >$(DIRMPC)\config.h 274 echo #define PACKAGE_VERSION "$(VERSION)" >>$(DIRMPC)\config.h 275 echo #define STDC_HEADERS 1 >>$(DIRMPC)\config.h 276 echo #define dlsym(handle, name) GetProcAddress(GetModuleHandle(handle), name) >>$(DIRMPC)\config.h 277 echo #include "windows.h" >>$(DIRMPC)\config.h 278 279 280# 281# Clean target: "nmake /f Makefile.vc clean" to remove unwanted 282# objects and executables. 283# 284 285clean: 286 del *.obj $(CPPLINKOBJECTS) $(LIBRARY) *.tlh $(DIRMPC)config.h *.dll *.lib *.exe 287 288 289 290# 291# install target: "nmake /f Makefile.vc install DESTDIR=xxx" to perform the installation. 292# 293 294install: $(LIBRARY) 295 -mkdir $(DESTDIR) 296 -mkdir $(DESTDIR)\include 297 copy $(DIRMPC)\mpc.h $(DESTDIR)\include 298 -mkdir $(DESTDIR)\lib 299 copy $(LIBRARY) $(DESTDIR)\lib 300 copy $(LIBRARYLIB) $(DESTDIR)\lib 301 302# 303# check target: "nmake /f Makefile.vc check GMPDIR=xxx MPFRDIR=xxx" to perform the installation. 304# 305check : test 306test : 307 -copy $(GMPDIR)\lib\*gmp*.dll $(DIRMPCTESTS) 308 -copy $(MPFRDIR)\lib\*mpfr*.dll $(DIRMPCTESTS) 309 copy $(LIBRARY) $(DIRMPCTESTS) 310 $(TESTCOMPILE)tabs.c $(MIDTESTCOMPILE)tabs.exe $(ENDTESTCOMPILE) 311 cd $(DIRMPCTESTS) && tabs.exe && cd .. 312 $(TESTCOMPILE)tacos.c $(MIDTESTCOMPILE)tacos.exe $(ENDTESTCOMPILE) 313 cd $(DIRMPCTESTS) && tacos.exe && cd .. 314 $(TESTCOMPILE)tacosh.c $(MIDTESTCOMPILE)tacosh.exe $(ENDTESTCOMPILE) 315 cd $(DIRMPCTESTS) && tacosh.exe && cd .. 316 $(TESTCOMPILE)tadd.c $(MIDTESTCOMPILE)tadd.exe $(ENDTESTCOMPILE) 317 cd $(DIRMPCTESTS) && tadd.exe && cd .. 318 $(TESTCOMPILE)tadd_fr.c $(MIDTESTCOMPILE)tadd_fr.exe $(ENDTESTCOMPILE) 319 cd $(DIRMPCTESTS) && tadd_fr.exe && cd .. 320 $(TESTCOMPILE)tadd_si.c $(MIDTESTCOMPILE)tadd_si.exe $(ENDTESTCOMPILE) 321 cd $(DIRMPCTESTS) && tadd_si.exe && cd .. 322 $(TESTCOMPILE)tadd_ui.c $(MIDTESTCOMPILE)tadd_ui.exe $(ENDTESTCOMPILE) 323 cd $(DIRMPCTESTS) && tadd_ui.exe && cd .. 324 $(TESTCOMPILE)targ.c $(MIDTESTCOMPILE)targ.exe $(ENDTESTCOMPILE) 325 cd $(DIRMPCTESTS) && targ.exe && cd .. 326 $(TESTCOMPILE)tasin.c $(MIDTESTCOMPILE)tasin.exe $(ENDTESTCOMPILE) 327 cd $(DIRMPCTESTS) && tasin.exe && cd .. 328 $(TESTCOMPILE)tasinh.c $(MIDTESTCOMPILE)tasinh.exe $(ENDTESTCOMPILE) 329 cd $(DIRMPCTESTS) && tasinh.exe && cd .. 330 $(TESTCOMPILE)tatan.c $(MIDTESTCOMPILE)tatan.exe $(ENDTESTCOMPILE) 331 cd $(DIRMPCTESTS) && tatan.exe && cd .. 332 $(TESTCOMPILE)tatanh.c $(MIDTESTCOMPILE)tatanh.exe $(ENDTESTCOMPILE) 333 cd $(DIRMPCTESTS) && tatanh.exe && cd .. 334 $(TESTCOMPILE)tcmp_abs.c $(MIDTESTCOMPILE)tcmp_abs.exe $(ENDTESTCOMPILE) 335 cd $(DIRMPCTESTS) && tcmp_abs.exe && cd .. 336 $(TESTCOMPILE)tconj.c $(MIDTESTCOMPILE)tconj.exe $(ENDTESTCOMPILE) 337 cd $(DIRMPCTESTS) && tconj.exe && cd .. 338 $(TESTCOMPILE)tcos.c $(MIDTESTCOMPILE)tcos.exe $(ENDTESTCOMPILE) 339 cd $(DIRMPCTESTS) && tcos.exe && cd .. 340 $(TESTCOMPILE)tcosh.c $(MIDTESTCOMPILE)tcosh.exe $(ENDTESTCOMPILE) 341 cd $(DIRMPCTESTS) && tcosh.exe && cd .. 342 $(TESTCOMPILE)tdiv.c $(MIDTESTCOMPILE)tdiv.exe $(ENDTESTCOMPILE) 343 cd $(DIRMPCTESTS) && tdiv.exe && cd .. 344 $(TESTCOMPILE)tdiv_2ui.c $(MIDTESTCOMPILE)tdiv_2ui.exe $(ENDTESTCOMPILE) 345 cd $(DIRMPCTESTS) && tdiv_2ui.exe && cd .. 346 $(TESTCOMPILE)tdiv_fr.c $(MIDTESTCOMPILE)tdiv_fr.exe $(ENDTESTCOMPILE) 347 cd $(DIRMPCTESTS) && tdiv_fr.exe && cd .. 348 $(TESTCOMPILE)tdiv_ui.c $(MIDTESTCOMPILE)tdiv_ui.exe $(ENDTESTCOMPILE) 349 cd $(DIRMPCTESTS) && tdiv_ui.exe && cd .. 350 $(TESTCOMPILE)texp.c $(MIDTESTCOMPILE)texp.exe $(ENDTESTCOMPILE) 351 cd $(DIRMPCTESTS) && texp.exe && cd .. 352 $(TESTCOMPILE)tfma.c $(MIDTESTCOMPILE)tfma.exe $(ENDTESTCOMPILE) 353 cd $(DIRMPCTESTS) && tfma.exe && cd .. 354 $(TESTCOMPILE)tfr_div.c $(MIDTESTCOMPILE)tfr_div.exe $(ENDTESTCOMPILE) 355 cd $(DIRMPCTESTS) && tfr_div.exe && cd .. 356 $(TESTCOMPILE)tfr_sub.c $(MIDTESTCOMPILE)tfr_sub.exe $(ENDTESTCOMPILE) 357 cd $(DIRMPCTESTS) && tfr_sub.exe && cd .. 358 $(TESTCOMPILE)tget_version.c $(MIDTESTCOMPILE)tget_version.exe $(ENDTESTCOMPILE) 359 cd $(DIRMPCTESTS) && tget_version.exe && cd .. 360 $(TESTCOMPILE)timag.c $(MIDTESTCOMPILE)timag.exe $(ENDTESTCOMPILE) 361 cd $(DIRMPCTESTS) && timag.exe && cd .. 362 $(TESTCOMPILE)tio_str.c $(MIDTESTCOMPILE)tio_str.exe $(ENDTESTCOMPILE) 363 cd $(DIRMPCTESTS) && tio_str.exe && cd .. 364 $(TESTCOMPILE)tlog.c $(MIDTESTCOMPILE)tlog.exe $(ENDTESTCOMPILE) 365 cd $(DIRMPCTESTS) && tlog.exe && cd .. 366 $(TESTCOMPILE)tlog10.c $(MIDTESTCOMPILE)tlog10.exe $(ENDTESTCOMPILE) 367 cd $(DIRMPCTESTS) && tlog10.exe && cd .. 368 $(TESTCOMPILE)tmul.c $(MIDTESTCOMPILE)tmul.exe $(ENDTESTCOMPILE) 369 cd $(DIRMPCTESTS) && tmul.exe && cd .. 370 $(TESTCOMPILE)tmul_2si.c $(MIDTESTCOMPILE)tmul_2si.exe $(ENDTESTCOMPILE) 371 cd $(DIRMPCTESTS) && tmul_2si.exe && cd .. 372 $(TESTCOMPILE)tmul_2ui.c $(MIDTESTCOMPILE)tmul_2ui.exe $(ENDTESTCOMPILE) 373 cd $(DIRMPCTESTS) && tmul_2ui.exe && cd .. 374 $(TESTCOMPILE)tmul_fr.c $(MIDTESTCOMPILE)tmul_fr.exe $(ENDTESTCOMPILE) 375 cd $(DIRMPCTESTS) && tmul_fr.exe && cd .. 376 $(TESTCOMPILE)tmul_i.c $(MIDTESTCOMPILE)tmul_i.exe $(ENDTESTCOMPILE) 377 cd $(DIRMPCTESTS) && tmul_i.exe && cd .. 378 $(TESTCOMPILE)tmul_si.c $(MIDTESTCOMPILE)tmul_si.exe $(ENDTESTCOMPILE) 379 cd $(DIRMPCTESTS) && tmul_si.exe && cd .. 380 $(TESTCOMPILE)tmul_ui.c $(MIDTESTCOMPILE)tmul_ui.exe $(ENDTESTCOMPILE) 381 cd $(DIRMPCTESTS) && tmul_ui.exe && cd .. 382 $(TESTCOMPILE)tneg.c $(MIDTESTCOMPILE)tneg.exe $(ENDTESTCOMPILE) 383 cd $(DIRMPCTESTS) && tneg.exe && cd .. 384 $(TESTCOMPILE)tnorm.c $(MIDTESTCOMPILE)tnorm.exe $(ENDTESTCOMPILE) 385 cd $(DIRMPCTESTS) && tnorm.exe && cd .. 386 $(TESTCOMPILE)tpow.c $(MIDTESTCOMPILE)tpow.exe $(ENDTESTCOMPILE) 387 cd $(DIRMPCTESTS) && tpow.exe && cd .. 388 $(TESTCOMPILE)tpow_d.c $(MIDTESTCOMPILE)tpow_d.exe $(ENDTESTCOMPILE) 389 cd $(DIRMPCTESTS) && tpow_d.exe && cd .. 390 $(TESTCOMPILE)tpow_fr.c $(MIDTESTCOMPILE)tpow_fr.exe $(ENDTESTCOMPILE) 391 cd $(DIRMPCTESTS) && tpow_fr.exe && cd .. 392 $(TESTCOMPILE)tpow_ld.c $(MIDTESTCOMPILE)tpow_ld.exe $(ENDTESTCOMPILE) 393 cd $(DIRMPCTESTS) && tpow_ld.exe && cd .. 394 $(TESTCOMPILE)tpow_si.c $(MIDTESTCOMPILE)tpow_si.exe $(ENDTESTCOMPILE) 395 cd $(DIRMPCTESTS) && tpow_si.exe && cd .. 396 $(TESTCOMPILE)tpow_ui.c $(MIDTESTCOMPILE)tpow_ui.exe $(ENDTESTCOMPILE) 397 cd $(DIRMPCTESTS) && tpow_ui.exe && cd .. 398 $(TESTCOMPILE)tpow_z.c $(MIDTESTCOMPILE)tpow_z.exe $(ENDTESTCOMPILE) 399 cd $(DIRMPCTESTS) && tpow_z.exe && cd .. 400 $(TESTCOMPILE)tprec.c $(MIDTESTCOMPILE)tprec.exe $(ENDTESTCOMPILE) 401 cd $(DIRMPCTESTS) && tprec.exe && cd .. 402 $(TESTCOMPILE)tproj.c $(MIDTESTCOMPILE)tproj.exe $(ENDTESTCOMPILE) 403 cd $(DIRMPCTESTS) && tproj.exe && cd .. 404 $(TESTCOMPILE)treal.c $(MIDTESTCOMPILE)treal.exe $(ENDTESTCOMPILE) 405 cd $(DIRMPCTESTS) && treal.exe && cd .. 406 $(TESTCOMPILE)treimref.c $(MIDTESTCOMPILE)treimref.exe $(ENDTESTCOMPILE) 407 cd $(DIRMPCTESTS) && treimref.exe && cd .. 408 $(TESTCOMPILE)trootofunity.c $(MIDTESTCOMPILE)trootofunity.exe $(ENDTESTCOMPILE) 409 cd $(DIRMPCTESTS) && trootofunity.exe && cd .. 410 $(TESTCOMPILE)tset.c $(MIDTESTCOMPILE)tset.exe $(ENDTESTCOMPILE) 411 cd $(DIRMPCTESTS) && tset.exe && cd .. 412 $(TESTCOMPILE)tsin.c $(MIDTESTCOMPILE)tsin.exe $(ENDTESTCOMPILE) 413 cd $(DIRMPCTESTS) && tsin.exe && cd .. 414 $(TESTCOMPILE)tsin_cos.c $(MIDTESTCOMPILE)tsin_cos.exe $(ENDTESTCOMPILE) 415 cd $(DIRMPCTESTS) && tsin_cos.exe && cd .. 416 $(TESTCOMPILE)tsinh.c $(MIDTESTCOMPILE)tsinh.exe $(ENDTESTCOMPILE) 417 cd $(DIRMPCTESTS) && tsinh.exe && cd .. 418 $(TESTCOMPILE)tsqr.c $(MIDTESTCOMPILE)tsqr.exe $(ENDTESTCOMPILE) 419 cd $(DIRMPCTESTS) && tsqr.exe && cd .. 420 $(TESTCOMPILE)tsqrt.c $(MIDTESTCOMPILE)tsqrt.exe $(ENDTESTCOMPILE) 421 cd $(DIRMPCTESTS) && tsqrt.exe && cd .. 422 $(TESTCOMPILE)tstrtoc.c $(MIDTESTCOMPILE)tstrtoc.exe $(ENDTESTCOMPILE) 423 cd $(DIRMPCTESTS) && tstrtoc.exe && cd .. 424 $(TESTCOMPILE)tsub.c $(MIDTESTCOMPILE)tsub.exe $(ENDTESTCOMPILE) 425 cd $(DIRMPCTESTS) && tsub.exe && cd .. 426 $(TESTCOMPILE)tsub_fr.c $(MIDTESTCOMPILE)tsub_fr.exe $(ENDTESTCOMPILE) 427 cd $(DIRMPCTESTS) && tsub_fr.exe && cd .. 428 $(TESTCOMPILE)tsub_ui.c $(MIDTESTCOMPILE)tsub_ui.exe $(ENDTESTCOMPILE) 429 cd $(DIRMPCTESTS) && tsub_ui.exe && cd .. 430 $(TESTCOMPILE)tswap.c $(MIDTESTCOMPILE)tswap.exe $(ENDTESTCOMPILE) 431 cd $(DIRMPCTESTS) && tswap.exe && cd .. 432 $(TESTCOMPILE)ttan.c $(MIDTESTCOMPILE)ttan.exe $(ENDTESTCOMPILE) 433 cd $(DIRMPCTESTS) && ttan.exe && cd .. 434 $(TESTCOMPILE)ttanh.c $(MIDTESTCOMPILE)ttanh.exe $(ENDTESTCOMPILE) 435 cd $(DIRMPCTESTS) && ttanh.exe && cd .. 436 $(TESTCOMPILE)tui_div.c $(MIDTESTCOMPILE)tui_div.exe $(ENDTESTCOMPILE) 437 cd $(DIRMPCTESTS) && tui_div.exe && cd .. 438 $(TESTCOMPILE)tui_ui_sub.c $(MIDTESTCOMPILE)tui_ui_sub.exe $(ENDTESTCOMPILE) 439 cd $(DIRMPCTESTS) && tui_ui_sub.exe && cd .. 440 @echo -------------------------------------------------- 441 @echo All tests passed 442 @echo -------------------------------------------------- 443