1$NetBSD: README,v 1.4 2013/07/15 08:59:47 mrg Exp $ 2 3GMP in NetBSD. We need GMP for GCC >= 4.2. 4 5 6Building GMP without configure - how to port GMP build to a new platform. 7 8The GMP build doesn't map very well to normal make. The ./configure phase 9creates a bunch of symlinks and weeds out the sources lists, and there are 10files with the same name in different subdirectories linked into the same 11final product. All of these issues need to be dealt with. 12 13There are a few steps to this: 14 15 - run ./configure, save the output. you can use the makefile 16 "Makefile.netbsd-gmp" in this directory to run this with the 17 right options, etc. run it with nbmake-$MACHINE. 18 19 - create src/external/gpl3/gmp/lib/libgmp/arch/${MACHINE_ARCH} dir, 20 and copy these files into it: 21 config.h 22 config.m4 23 gmp-mparam.h 24 gmp.h 25 mp.h 26 27 some of these files might have src/obj references. in particular 28 fix GMP_MPARAM_H_SUGGEST to start from ./mpn/... and make sure 29 we #define __GMP_CC to "gcc -std=gnu99". XXX make this automatic 30 31 32 - parse the ./configure output and note all created symlinks 33 for mpn. these need to be converted into a new Makefile.inc. 34 there is a script in this subdir build-gmp-Makefile.inc.awk 35 that can be used to do this. it should just work to generate 36 the first section of Makefile.inc if fed the entire configure 37 output. 38 39 assembler files generally want -DOPERATION_${foo} defined for 40 each way they are compiled or pre-processed. the pre-processor 41 used is m4 to parse, and we and create .s files from the .asm 42 files that we then we feed into $CC. 43 44The amd64 port is a good reference to compare. The trialdivtab.h 45generation may need to be moved the into libgmp/Makefile itself. 46 47 48This is still a work in progress and methods used to build may be 49changed at any time. 50 51 52mrg@netbsd.org 53- 2011/06/22 54