From 25a28b494481363f143064fddbcbc8c2b584fafe Mon Sep 17 00:00:00 2001 From: William Hart Date: Fri, 12 Jun 2015 13:43:21 +0000 Subject: [PATCH] Fix documentation regarding shared/static libraries on Mingw/Cygwin. --- doc/mpir.info | 274 +++++++++++++++++++++++------------------------ doc/mpir.info-1 | 11 +- doc/mpir.info-2 | 18 ++-- doc/mpir.texi | 10 +- doc/stamp-vti | 4 +- doc/version.texi | 2 +- 6 files changed, 159 insertions(+), 160 deletions(-) diff --git a/doc/mpir.info b/doc/mpir.info index fdb41ec5..9e89f32e 100644 --- a/doc/mpir.info +++ b/doc/mpir.info @@ -24,7 +24,7 @@ END-INFO-DIR-ENTRY  Indirect: mpir.info-1: 1042 -mpir.info-2: 303029 +mpir.info-2: 303103  Tag Table: (Indirect) @@ -37,141 +37,141 @@ Node: ABI and ISA25251 Node: Notes for Package Builds32029 Node: Building with Microsoft Visual Studio35476 Node: Notes for Particular Systems40607 -Node: Known Build Problems45245 -Node: Performance optimization45813 -Node: MPIR Basics46949 -Node: Headers and Libraries47600 -Node: Nomenclature and Types49055 -Node: MPIR on Windows x6450976 -Node: Function Classes52901 -Node: Variable Conventions54437 -Node: Parameter Conventions55966 -Node: Memory Management58019 -Node: Reentrancy59151 -Node: Useful Macros and Constants60587 -Node: Compatibility with older versions61917 -Node: Efficiency63048 -Node: Debugging70717 -Node: Profiling77113 -Node: Autoconf81146 -Node: Emacs83020 -Node: Reporting Bugs83629 -Node: Integer Functions86195 -Node: Initializing Integers86974 -Node: Assigning Integers88908 -Node: Simultaneous Integer Init & Assign90708 -Node: Converting Integers92552 -Node: Integer Arithmetic96150 -Node: Integer Division97616 -Node: Integer Exponentiation103528 -Node: Integer Roots104351 -Node: Number Theoretic Functions106134 -Node: Integer Comparisons115475 -Node: Integer Logic and Bit Fiddling116826 -Node: I/O of Integers119381 -Node: Integer Random Numbers122268 -Node: Integer Import and Export124032 -Node: Miscellaneous Integer Functions128018 -Node: Integer Special Functions129864 -Node: Rational Number Functions133036 -Node: Initializing Rationals134231 -Node: Rational Conversions136681 -Node: Rational Arithmetic138413 -Node: Comparing Rationals139718 -Node: Applying Integer Functions141035 -Node: I/O of Rationals142519 -Node: Floating-point Functions144381 -Node: Initializing Floats147272 -Node: Assigning Floats151359 -Node: Simultaneous Float Init & Assign153906 -Node: Converting Floats155418 -Node: Float Arithmetic158617 -Node: Float Comparison160481 -Node: I/O of Floats161809 -Node: Miscellaneous Float Functions164380 -Node: Low-level Functions167013 -Node: Random Number Functions192405 -Node: Random State Initialization193475 -Node: Random State Seeding195528 -Node: Random State Miscellaneous196898 -Node: Formatted Output197490 -Node: Formatted Output Strings197736 -Node: Formatted Output Functions202977 -Node: C++ Formatted Output207043 -Node: Formatted Input209730 -Node: Formatted Input Strings209967 -Node: Formatted Input Functions214636 -Node: C++ Formatted Input217609 -Node: C++ Class Interface219517 -Node: C++ Interface General220515 -Node: C++ Interface Integers223595 -Node: C++ Interface Rationals227282 -Node: C++ Interface Floats231311 -Node: C++ Interface Random Numbers236843 -Node: C++ Interface Limitations238950 -Node: Custom Allocation241791 -Node: Language Bindings246443 -Node: Algorithms250451 -Node: Multiplication Algorithms251156 -Node: Basecase Multiplication252368 -Node: Karatsuba Multiplication254280 -Node: Toom 3-Way Multiplication257910 -Node: Toom 4-Way Multiplication264327 -Node: FFT Multiplication265701 -Node: Other Multiplication271130 -Node: Unbalanced Multiplication273815 -Node: Division Algorithms274713 -Node: Single Limb Division275061 -Node: Basecase Division277980 -Node: Divide and Conquer Division279183 -Node: Exact Division281454 -Node: Exact Remainder284653 -Node: Small Quotient Division286946 -Node: Greatest Common Divisor Algorithms288545 -Node: Binary GCD288837 -Node: Lehmer's GCD291513 -Node: Subquadratic GCD293728 -Node: Extended GCD296193 -Node: Jacobi Symbol296753 -Node: Powering Algorithms297671 -Node: Normal Powering Algorithm297935 -Node: Modular Powering Algorithm298464 -Node: Root Extraction Algorithms299528 -Node: Square Root Algorithm299844 -Node: Nth Root Algorithm303029 -Node: Perfect Square Algorithm303815 -Node: Perfect Power Algorithm305902 -Node: Radix Conversion Algorithms306524 -Node: Binary to Radix306901 -Node: Radix to Binary310832 -Node: Other Algorithms312797 -Node: Prime Testing Algorithm313151 -Node: Factorial Algorithm314378 -Node: Binomial Coefficients Algorithm315819 -Node: Fibonacci Numbers Algorithm316714 -Node: Lucas Numbers Algorithm319190 -Node: Random Number Algorithms319912 -Node: Assembler Coding322036 -Node: Assembler Code Organisation323013 -Node: Assembler Basics323986 -Node: Assembler Carry Propagation325145 -Node: Assembler Cache Handling326982 -Node: Assembler Functional Units329150 -Node: Assembler Floating Point330771 -Node: Assembler SIMD Instructions334555 -Node: Assembler Software Pipelining335544 -Node: Assembler Loop Unrolling336613 -Node: Assembler Writing Guide338833 -Node: Internals341603 -Node: Integer Internals342117 -Node: Rational Internals344374 -Node: Float Internals345614 -Node: Raw Output Internals352928 -Node: C++ Interface Internals354123 -Node: Contributors357410 -Node: References366418 -Node: GNU Free Documentation License374177 -Node: Concept Index399328 -Node: Function Index443895 +Node: Known Build Problems45319 +Node: Performance optimization45887 +Node: MPIR Basics47023 +Node: Headers and Libraries47674 +Node: Nomenclature and Types49129 +Node: MPIR on Windows x6451050 +Node: Function Classes52975 +Node: Variable Conventions54511 +Node: Parameter Conventions56040 +Node: Memory Management58093 +Node: Reentrancy59225 +Node: Useful Macros and Constants60661 +Node: Compatibility with older versions61991 +Node: Efficiency63122 +Node: Debugging70791 +Node: Profiling77187 +Node: Autoconf81220 +Node: Emacs83094 +Node: Reporting Bugs83703 +Node: Integer Functions86269 +Node: Initializing Integers87048 +Node: Assigning Integers88982 +Node: Simultaneous Integer Init & Assign90782 +Node: Converting Integers92626 +Node: Integer Arithmetic96224 +Node: Integer Division97690 +Node: Integer Exponentiation103602 +Node: Integer Roots104425 +Node: Number Theoretic Functions106208 +Node: Integer Comparisons115549 +Node: Integer Logic and Bit Fiddling116900 +Node: I/O of Integers119455 +Node: Integer Random Numbers122342 +Node: Integer Import and Export124106 +Node: Miscellaneous Integer Functions128092 +Node: Integer Special Functions129938 +Node: Rational Number Functions133110 +Node: Initializing Rationals134305 +Node: Rational Conversions136755 +Node: Rational Arithmetic138487 +Node: Comparing Rationals139792 +Node: Applying Integer Functions141109 +Node: I/O of Rationals142593 +Node: Floating-point Functions144455 +Node: Initializing Floats147346 +Node: Assigning Floats151433 +Node: Simultaneous Float Init & Assign153980 +Node: Converting Floats155492 +Node: Float Arithmetic158691 +Node: Float Comparison160555 +Node: I/O of Floats161883 +Node: Miscellaneous Float Functions164454 +Node: Low-level Functions167087 +Node: Random Number Functions192479 +Node: Random State Initialization193549 +Node: Random State Seeding195602 +Node: Random State Miscellaneous196972 +Node: Formatted Output197564 +Node: Formatted Output Strings197810 +Node: Formatted Output Functions203051 +Node: C++ Formatted Output207117 +Node: Formatted Input209804 +Node: Formatted Input Strings210041 +Node: Formatted Input Functions214710 +Node: C++ Formatted Input217683 +Node: C++ Class Interface219591 +Node: C++ Interface General220589 +Node: C++ Interface Integers223669 +Node: C++ Interface Rationals227356 +Node: C++ Interface Floats231385 +Node: C++ Interface Random Numbers236917 +Node: C++ Interface Limitations239024 +Node: Custom Allocation241865 +Node: Language Bindings246517 +Node: Algorithms250525 +Node: Multiplication Algorithms251230 +Node: Basecase Multiplication252442 +Node: Karatsuba Multiplication254354 +Node: Toom 3-Way Multiplication257984 +Node: Toom 4-Way Multiplication264401 +Node: FFT Multiplication265775 +Node: Other Multiplication271204 +Node: Unbalanced Multiplication273889 +Node: Division Algorithms274787 +Node: Single Limb Division275135 +Node: Basecase Division278054 +Node: Divide and Conquer Division279257 +Node: Exact Division281528 +Node: Exact Remainder284727 +Node: Small Quotient Division287020 +Node: Greatest Common Divisor Algorithms288619 +Node: Binary GCD288911 +Node: Lehmer's GCD291587 +Node: Subquadratic GCD293802 +Node: Extended GCD296267 +Node: Jacobi Symbol296827 +Node: Powering Algorithms297745 +Node: Normal Powering Algorithm298009 +Node: Modular Powering Algorithm298538 +Node: Root Extraction Algorithms299602 +Node: Square Root Algorithm299918 +Node: Nth Root Algorithm303103 +Node: Perfect Square Algorithm303889 +Node: Perfect Power Algorithm305976 +Node: Radix Conversion Algorithms306598 +Node: Binary to Radix306975 +Node: Radix to Binary310906 +Node: Other Algorithms312871 +Node: Prime Testing Algorithm313225 +Node: Factorial Algorithm314452 +Node: Binomial Coefficients Algorithm315893 +Node: Fibonacci Numbers Algorithm316788 +Node: Lucas Numbers Algorithm319264 +Node: Random Number Algorithms319986 +Node: Assembler Coding322110 +Node: Assembler Code Organisation323087 +Node: Assembler Basics324060 +Node: Assembler Carry Propagation325219 +Node: Assembler Cache Handling327056 +Node: Assembler Functional Units329224 +Node: Assembler Floating Point330845 +Node: Assembler SIMD Instructions334629 +Node: Assembler Software Pipelining335618 +Node: Assembler Loop Unrolling336687 +Node: Assembler Writing Guide338907 +Node: Internals341677 +Node: Integer Internals342191 +Node: Rational Internals344448 +Node: Float Internals345688 +Node: Raw Output Internals353002 +Node: C++ Interface Internals354197 +Node: Contributors357484 +Node: References366492 +Node: GNU Free Documentation License374251 +Node: Concept Index399402 +Node: Function Index443969  End Tag Table diff --git a/doc/mpir.info-1 b/doc/mpir.info-1 index 8c9d7f6d..a7352eca 100644 --- a/doc/mpir.info-1 +++ b/doc/mpir.info-1 @@ -972,15 +972,14 @@ MS-DOS and MS Windows We strongly recommend using recent versions of Cygwin/Msys2. MS Windows DLLs - On systems '*-*-cygwin*' and '*-*-mingw*' and '*-*-msys' by default - MPIR builds only a static library, but a DLL can be built instead - using + On systems '*-*-cygwin*' and '*-*-mingw*' and '*-*-msys' static and + DLL libraries can't both be built, since certain export directives + in 'mpir.h' must be different. Therefore you must specify whether + you want a shared library or a static library. For example if you + want just a shared library you can type the following. ./configure --disable-static --enable-shared - Static and DLL libraries can't both be built, since certain export - directives in 'mpir.h' must be different. - Libtool doesn't install a '.lib' format import library, but it can be created with MS 'lib' as follows, and copied to the install directory. Similarly for 'libmpir' and 'libmpirxx'. diff --git a/doc/mpir.info-2 b/doc/mpir.info-2 index cab2484d..4607608b 100644 --- a/doc/mpir.info-2 +++ b/doc/mpir.info-2 @@ -2180,7 +2180,7 @@ Concept Index * '-finstrument-functions': Profiling. (line 66) * '2exp' functions: Efficiency. (line 43) * 80x86: Notes for Particular Systems. - (line 88) + (line 87) * ABI: Build Options. (line 171) * ABI <1>: ABI and ISA. (line 6) * About this manual: Introduction to MPIR. @@ -2412,7 +2412,7 @@ Concept Index * I/O functions <1>: I/O of Rationals. (line 6) * I/O functions <2>: I/O of Floats. (line 6) * i386: Notes for Particular Systems. - (line 88) + (line 87) * IA-64: ABI and ISA. (line 69) * Import: Integer Import and Export. (line 11) @@ -2545,7 +2545,7 @@ Concept Index * Miscellaneous integer functions: Miscellaneous Integer Functions. (line 6) * MMX: Notes for Particular Systems. - (line 94) + (line 93) * Modular inverse functions: Number Theoretic Functions. (line 124) * Most significant bit: Miscellaneous Integer Functions. @@ -2709,20 +2709,20 @@ Concept Index * Small operands: Efficiency. (line 7) * Solaris: ABI and ISA. (line 120) * Solaris <1>: Notes for Particular Systems. - (line 84) + (line 83) * Sparc: Notes for Particular Systems. - (line 51) + (line 50) * Sparc <1>: Notes for Particular Systems. - (line 56) + (line 55) * Sparc <2>: Notes for Particular Systems. - (line 68) + (line 67) * Sparc V9: ABI and ISA. (line 120) * Special integer functions: Integer Special Functions. (line 6) * Square root algorithm: Square Root Algorithm. (line 6) * SSE2: Notes for Particular Systems. - (line 94) + (line 93) * Stack backtrace: Debugging. (line 46) * Stack overflow: Build Options. (line 289) * Stack overflow <1>: Debugging. (line 7) @@ -2772,7 +2772,7 @@ Concept Index (line 34) * Windows <2>: MPIR on Windows x64. (line 6) * x86: Notes for Particular Systems. - (line 88) + (line 87) * x87: Notes for Particular Systems. (line 12) * XML: Build Options. (line 355) diff --git a/doc/mpir.texi b/doc/mpir.texi index 4729e9c1..fcdcf7a6 100644 --- a/doc/mpir.texi +++ b/doc/mpir.texi @@ -1548,16 +1548,16 @@ We strongly recommend using recent versions of Cygwin/Msys2. @cindex DLLs @cindex MS Windows @cindex Windows -On systems @samp{*-*-cygwin*} and @samp{*-*-mingw*} and @samp{*-*-msys} by -default MPIR builds only a static library, but a DLL can be built instead using +On systems @samp{*-*-cygwin*} and @samp{*-*-mingw*} and @samp{*-*-msys} static +and DLL libraries can't both be built, since certain export directives in +@file{mpir.h} must be different. Therefore you must specify whether you want +a shared library or a static library. For example if you want just a shared +library you can type the following. @example ./configure --disable-static --enable-shared @end example -Static and DLL libraries can't both be built, since certain export directives -in @file{mpir.h} must be different. - Libtool doesn't install a @file{.lib} format import library, but it can be created with MS @command{lib} as follows, and copied to the install directory. Similarly for @file{libmpir} and @file{libmpirxx}. diff --git a/doc/stamp-vti b/doc/stamp-vti index f13082a7..32acad2e 100644 --- a/doc/stamp-vti +++ b/doc/stamp-vti @@ -1,4 +1,4 @@ -@set UPDATED 29 June 2014 -@set UPDATED-MONTH June 2014 +@set UPDATED 11 June 2015 +@set UPDATED-MONTH June 2015 @set EDITION 2.7.0 @set VERSION 2.7.0 diff --git a/doc/version.texi b/doc/version.texi index 32acad2e..07d652d8 100644 --- a/doc/version.texi +++ b/doc/version.texi @@ -1,4 +1,4 @@ -@set UPDATED 11 June 2015 +@set UPDATED 12 June 2015 @set UPDATED-MONTH June 2015 @set EDITION 2.7.0 @set VERSION 2.7.0