SPARCでは32bit版と64bit版を両方コンパイルします。
次のようなスクリプトを実行します。
setup.sh
#!/bin/sh if [ $# -eq 1 ]; then . ../setup-pre.sh $1 else . ../setup-pre.sh fi if [ "$ISA" = "sparcv9" ]; then CFLAGS="-M /usr/lib/ld/sparcv9/map.default $CFLAGS" export CFLAGS fi if [ "$ISA" = "amd64" ]; then CFLAGS="-M /usr/lib/ld/amd64/map.default $CFLAGS" export CFLAGS fi sdk="openldap" #sdk="auto" if [ "$sdk" = "auto" ]; then sdkpath="/usr" CPPFLAGS= export CPPFLAGS LDFLAGS= export LDFLAGS else sdkpath="/usr/local" fi ./configure --prefix=/usr/local \ --sysconfdir=/etc \ --with-ldap-lib=$sdk \ --with-ldap-dir=$sdkpath \ --with-ldap-conf-file=/etc/ldap.conf \ --with-ldap-secret-file=/etc/ldap.secret
% ./setup.sh [ sparcv8plus | sparcv9 | i386 | amd64 ] && gmake
sparcv9 or amd64ではMakefileを修正します。
- -L/usr/local/lib -R/usr/local/lib + -L/usr/local/lib/64 -R/usr/local/lib/64 ... - $(mkinstalldirs) $(DESTDIR)$(libdir)/security + $(mkinstalldirs) $(DESTDIR)$(libdir)/security/sparcv9 - $(INSTALL_PROGRAM) -o root -g root pam_ldap.so $(DESTDIR)$(libdir)/security/pam_ldap.so.1 + $(INSTALL_PROGRAM) -o root -g root pam_ldap.so $(DESTDIR)$(libdir)/security/sparcv9/pam_ldap.so.1 - (cd $(DESTDIR)$(libdir)/security; rm -f pam_ldap.so; ln -s pam_ldap.so.1 pam_ldap.so) + (cd $(DESTDIR)$(libdir)/security/sparcv9; rm -f pam_ldap.so; ln -s pam_ldap.so.1 pam_ldap.so)
setup.shを実行してmakeします。
% ./setup.sh % gmake # gmake install