Samba 3.0.22 Porting by Vidya Sagar

17
*mpeix*)
export MPEAUTOCONF=1
CPPFLAGS="$CPPFLAGS -Dmpeix -D_POSIX_SOURCE -D_SOCKET_SOURCE
-D_INCLUDE_MPEXL_SOURCE -I/SYSLOG/PUB -I/usr/contrib/include"
LDFLAGS="$LDFLAGS -L/POSIXC60/lib -L/SYSLOG/PUB -Xlinker -WL,xl='/$HPACC
OUNT/$HPGROUP/LIBCPXL'"
LIBS="$LIBS -lposix60 -lunix -lsyslog -lsocket -lsvipc -lcurses"
AC_DEFINE(mpeix,1,[Target is MPE/iX])
AC_DEFINE(_POSIX_SOURCE)
AC_DEFINE(_SOCKET_SOURCE,1,[Socket source])
AC_DEFINE(_INCLUDE_MPEXL_SOURCE,1,[Include MPEXL source])
AC_DEFINE(USE_SETREUID,1)
AC_DEFINE(_INCLUDE_MPEXL_SOURCE,1,[Include MPEXL source])
AC_DEFINE(USE_SETREUID,1)
AC_DEFINE(STAT_STATFS2_BSIZE,1)
;;
.
.
.
You notice the CPPFLAGS, LIBS, LDFLAGS and various defines are set for MPE/iX specific. If compilation
includes creation of shared libraries then one more flag LDSHFLAGS needs to be set appropriately as follows:
LDSHFLAGS = -Wl, -b –nostdlib #Refer the compiler documentation for more
information
The Samba/iX has not been compiled to create any shared library; hence this flag has not been set. Apart from
setting these parameters, configure.in can be hard coded not to build certain features which cannot be
supported on MPE/iX. The features that cannot be supported on MPE/iX can also be disabled by passing
arguments to configure script. Issue configure –help for more details on how not to build certain feature or plugin.
I have disabled building of WINBINDD in configure.in as follows:
.
.
.
AC_MSG_CHECKING(whether to build winbind)
# Initially, the value of $host_os decides whether winbind is supported
HAVE_WINBIND=yes
# Define the winbind shared library name and any specific linker flags
# it needs to be built with.
WINBIND_NSS="nsswitch/libnss_winbind.$SHLIBEXT"
WINBIND_WINS_NSS="nsswitch/libnss_wins.$SHLIBEXT"
WINBIND_NSS_LDSHFLAGS=$LDSHFLAGS
case "$host_os" in
.
.
.
*mpeix*)
HAVE_WINBIND=no
winbind_no_reason=", unsupported on $host_os as C library does n
ot support NSS and PAM on MPE/iX"
;;
.
.
.
Be careful while setting parameters and defines as it should not negatively affect the search of libraries, routines
etc. Changes done here governs the generation of configure script which in turn generates one or more
makefile(s) which finally build your application.
Once configure.in is properly adjusted, run autogen.sh to generate configure.