- ソースを展開する。
$ tar zxf pari-2.1.5.tgz
$ cd ./pari-2.1.5
- NetBSD-1.6に対応させ、GNU readline 4.3ライブラリ(/usr/gnu/lib/libreadline.a)を組み込むために、./Configureファイルを以下のように変更する。
freebsdに対応している部分に、netbsdを追加する。
GNU readlineライブラリの情報を追加する。
839,840c837
< # OPTFLAGS=-O3
< OPTFLAGS="-m486 -O2"
---
> OPTFLAGS=-O3
873c870
< cygwin*|linux-i?86|freebsd-i?86|netbsd-i?86)
---
> cygwin*|linux-i?86|freebsd-i?86)
945c942
< freebsd|netbsd)
---
> freebsd)
1012c1009
< *-alpha|solaris-*|linux-*|freebsd-*|netbsd-*)
---
> *-alpha|solaris-*|linux-*|freebsd-*)
1047c1044
< freebsd-*|netbsd-*) DLLDFLAGS="-Bshareable -x" ;;
---
> freebsd-*) DLLDFLAGS="-Bshareable -x" ;;
1060c1057
< freebsd|netbsd|linux|sunos|solaris) DLLDFLAGS="$DLLDFLAGS -lc -lm";;
---
> freebsd|linux|sunos|solaris) DLLDFLAGS="$DLLDFLAGS -lc -lm";;
- config/arch-osnameに以下を追加する。
14d13
< netbsd) arch=i386;;
- Configureを実行する。
$ CFLAGS="-m486 -O2" ./Configure --prefix=/usr/gnu --host=i386-netbsd
- ./src/kernel/ix86/l0asm.cのFreeBSDに対応した部分をNetBSDに対応させる。
39c39
< #if defined(__EMX__) || defined(__DJGCC__) || defined(__GO32__) || (defined(linux) && !defined(__ELF__)) || defined(__386BSD__) || (defined(__NetBSD__) && !defined(__ELF__)) || (defined(__FreeBSD__) && !defined(__ELF__)) || defined(NeXT) || defined(__CYGWIN32__) || defined(__MINGW32__)
---
> #if defined(__EMX__) || defined(__DJGCC__) || defined(__GO32__) || (defined(linux) && !defined(__ELF__)) || defined(__386BSD__) || defined(__NetBSD__) || (defined(__FreeBSD__) && !defined(__ELF__)) || defined(NeXT) || defined(__CYGWIN32__) || defined(__MINGW32__)
- ./src/gp/gp.cの関数add_historyのprototype宣言を変更する。
48d47
< /* H.Nakao
50,51d48
< */
< extern int add_history(const char*);
- ./src/gp/gp_rl.cの関数rl_message,filename_completion_function,username_completion_functionのprototype宣言を変更する。
マクロHAS_RL_COMPLETION_MATCHESを定義する。
41,43c41
< #define HAS_RL_COMPLETION_MATCHES /*H.Nakao*/
< /*extern int rl_message (const char *, ...);*/
< extern int rl_message ();
---
> extern int rl_message (const char *, ...);
48d45
< /* H.Nakao
51,53d47
< */
< extern char *filename_completion_function(const char *text,int state);
< extern char *username_completion_function(const char *text,int state);
- ./Onetbsd-i386/Makefleにtermcapライブラリを追加する(GNU readlineライブラリから参照する)。
72c72
< RLLIBS = -L/usr/gnu/lib -lreadline -ltermcap
---
> RLLIBS = -L/usr/gnu/lib -lreadline
- makeする。
$ make all
- installする。
$ su
# make install