mirror of
https://github.com/michaelrsweet/mxml.git
synced 2024-11-24 11:25:30 +00:00
Add shared library support.
This commit is contained in:
parent
0d2ca0f2ca
commit
7232c88dad
5
CHANGES
5
CHANGES
@ -1,8 +1,9 @@
|
||||
CHANGES - 01/29/2005
|
||||
CHANGES - 02/25/2005
|
||||
--------------------
|
||||
|
||||
CHANGES IN Mini-XML 2.1.1
|
||||
CHANGES IN Mini-XML 2.2
|
||||
|
||||
- Added shared library support (STR #17)
|
||||
- mxmlLoad*() now returns an error when an XML stream
|
||||
contains illegal control characters (STR #10)
|
||||
- mxmlLoad*() now returns an error when an element
|
||||
|
101
Makefile.in
101
Makefile.in
@ -25,7 +25,11 @@ ARFLAGS = @ARFLAGS@
|
||||
CC = @CC@
|
||||
CFLAGS = $(OPTIM) @CFLAGS@ @CPPFLAGS@
|
||||
CP = @CP@
|
||||
DSO = @DSO@
|
||||
DSOFLAGS = @DSOFLAGS@
|
||||
LDFLAGS = $(OPTIM) @LDFLAGS@
|
||||
LIBMXML = @LIBMXML@
|
||||
LN = @LN@ -s
|
||||
MKDIR = @MKDIR@
|
||||
NROFF = @NROFF@
|
||||
OPTIM = @OPTIM@
|
||||
@ -80,7 +84,7 @@ PUBLIBOBJS = mxml-attr.o mxml-entity.o mxml-file.o mxml-index.o \
|
||||
mxml-node.o mxml-search.o mxml-set.o
|
||||
LIBOBJS = $(PUBLIBOBJS) mxml-private.o mxml-string.o
|
||||
OBJS = mxmldoc.o testmxml.o $(LIBOBJS)
|
||||
TARGETS = libmxml.a mxmldoc doc/mxml.$(CAT3EXT) \
|
||||
TARGETS = $(LIBMXML) mxmldoc doc/mxml.$(CAT3EXT) \
|
||||
doc/mxmldoc.$(CAT1EXT) testmxml mxml.xml
|
||||
|
||||
|
||||
@ -106,15 +110,13 @@ clean:
|
||||
# Install everything...
|
||||
#
|
||||
|
||||
install: $(TARGETS)
|
||||
install: $(TARGETS) install-$(LIBMXML) install-libmxml.a
|
||||
-$(MKDIR) -p $(BUILDROOT)$(bindir)
|
||||
$(CP) mxmldoc $(BUILDROOT)$(bindir)
|
||||
-$(MKDIR) -p $(BUILDROOT)$(docdir)
|
||||
$(CP) $(DOCFILES) $(BUILDROOT)$(docdir)
|
||||
-$(MKDIR) -p $(BUILDROOT)$(includedir)
|
||||
$(CP) mxml.h $(BUILDROOT)$(includedir)
|
||||
-$(MKDIR) -p $(BUILDROOT)$(libdir)
|
||||
$(CP) libmxml.a $(BUILDROOT)$(libdir)
|
||||
-$(MKDIR) -p $(BUILDROOT)$(libdir)/pkgconfig
|
||||
$(CP) mxml.pc $(BUILDROOT)$(libdir)/pkgconfig
|
||||
-$(MKDIR) -p $(BUILDROOT)$(mandir)/cat1
|
||||
@ -126,22 +128,61 @@ install: $(TARGETS)
|
||||
-$(MKDIR) -p $(BUILDROOT)$(mandir)/man3
|
||||
$(CP) doc/mxml.man $(BUILDROOT)$(mandir)/man3/mxml.$(MAN3EXT)
|
||||
|
||||
install-libmxml.a:
|
||||
-$(MKDIR) -p $(BUILDROOT)$(libdir)
|
||||
$(CP) libmxml.a $(BUILDROOT)$(libdir)
|
||||
|
||||
install-libmxml.so.1.0:
|
||||
-$(MKDIR) -p $(BUILDROOT)$(libdir)
|
||||
$(CP) libmxml.so.1.0 $(BUILDROOT)$(libdir)
|
||||
$(RM) $(BUILDROOT)$(libdir)/libmxml.so
|
||||
$(LN) libmxml.so.1.0 $(BUILDROOT)$(libdir)/libmxml.so
|
||||
$(RM) $(BUILDROOT)$(libdir)/libmxml.so.1
|
||||
$(LN) libmxml.so.1.0 $(BUILDROOT)$(libdir)/libmxml.so.1
|
||||
|
||||
install-libmxml.sl.1:
|
||||
-$(MKDIR) -p $(BUILDROOT)$(libdir)
|
||||
$(CP) libmxml.sl.1 $(BUILDROOT)$(libdir)
|
||||
$(RM) $(BUILDROOT)$(libdir)/libmxml.so
|
||||
$(LN) libmxml.sl.1 $(BUILDROOT)$(libdir)/libmxml.sl
|
||||
|
||||
install-libmxml.1.dylib:
|
||||
-$(MKDIR) -p $(BUILDROOT)$(libdir)
|
||||
$(CP) libmxml.1.dylib $(BUILDROOT)$(libdir)
|
||||
$(RM) $(BUILDROOT)$(libdir)/libmxml.dylib
|
||||
$(LN) libmxml.1.dylib $(BUILDROOT)$(libdir)/libmxml.dylib
|
||||
|
||||
|
||||
#
|
||||
# Uninstall everything...
|
||||
#
|
||||
|
||||
uninstall:
|
||||
uninstall: uninstall-$(LIBMXML) uninstall-libmxml.a
|
||||
$(RM) $(BUILDROOT)$(bindir)/mxmldoc
|
||||
$(RM) -r $(BUILDROOT)$(docdir)
|
||||
$(RM) $(BUILDROOT)$(includedir)/mxml.h
|
||||
$(RM) $(BUILDROOT)$(libdir)/libmxml.a
|
||||
$(RM) $(BUILDROOT)$(libdir)/pkgconfig/mxml.pc
|
||||
$(RM) $(BUILDROOT)$(mandir)/cat1/mxmldoc.$(CAT1EXT)
|
||||
$(RM) $(BUILDROOT)$(mandir)/cat3/mxml.$(CAT3EXT)
|
||||
$(RM) $(BUILDROOT)$(mandir)/man1/mxmldoc.$(MAN1EXT)
|
||||
$(RM) $(BUILDROOT)$(mandir)/man3/mxml.$(MAN3EXT)
|
||||
|
||||
uninstall-libmxml.a:
|
||||
$(RM) $(BUILDROOT)$(libdir)/libmxml.a
|
||||
|
||||
uninstall-libmxml.so.1.0:
|
||||
$(RM) $(BUILDROOT)$(libdir)/libmxml.so
|
||||
$(RM) $(BUILDROOT)$(libdir)/libmxml.so.1
|
||||
$(RM) $(BUILDROOT)$(libdir)/libmxml.so.1.0
|
||||
|
||||
uninstall-libmxml.sl.1:
|
||||
$(RM) $(BUILDROOT)$(libdir)/libmxml.sl
|
||||
$(RM) $(BUILDROOT)$(libdir)/libmxml.sl.1
|
||||
|
||||
uninstall-libmxml.1.dylib:
|
||||
$(RM) $(BUILDROOT)$(libdir)/libmxml.dylib
|
||||
$(RM) $(BUILDROOT)$(libdir)/libmxml.1.dylib
|
||||
|
||||
|
||||
#
|
||||
# Make packages using EPM (http://www.easysw.com/epm/)
|
||||
@ -200,11 +241,49 @@ libmxml.a: $(LIBOBJS)
|
||||
$(LIBOBJS): mxml.h
|
||||
|
||||
|
||||
#
|
||||
# libmxml.so.1.0
|
||||
#
|
||||
|
||||
libmxml.so.1.0: $(LIBOBJS)
|
||||
$(DSO) $(DSOFLAGS) -o libmxml.so.1.0 $(LIBOBJS)
|
||||
$(RM) libmxml.so libmxml.so.1
|
||||
$(LN) libmxml.so.1.0 libmxml.so
|
||||
$(LN) libmxml.so.1.0 libmxml.so.1
|
||||
|
||||
|
||||
#
|
||||
# libmxml.sl.1
|
||||
#
|
||||
|
||||
libmxml.sl.1: $(LIBOBJS)
|
||||
$(DSO) $(DSOFLAGS) -o libmxml.sl.1 $(LIBOBJS)
|
||||
$(RM) libmxml.sl libmxml.sl.1
|
||||
$(LN) libmxml.sl.1 libmxml.sl
|
||||
|
||||
|
||||
#
|
||||
# libmxml.1.dylib
|
||||
#
|
||||
|
||||
libmxml.1.dylib: $(LIBOBJS)
|
||||
$(DSO) $(DSOFLAGS) -o libmxml.1.dylib \
|
||||
-install_name $(libdir)/libmxml.dylib \
|
||||
-current_version 1.0.0 \
|
||||
-compatibility_version 1.0.0 \
|
||||
$(LIBOBJS)
|
||||
$(RM) libmxml.dylib libmxml.1.dylib
|
||||
$(LN) libmxml.1.dylib libmxml.dylib
|
||||
|
||||
|
||||
#
|
||||
# mxmldoc
|
||||
#
|
||||
|
||||
mxmldoc: libmxml.a mxmldoc.o
|
||||
mxmldoc: $(LIBMXML) mxmldoc.o
|
||||
$(CC) $(LDFLAGS) -o $@ mxmldoc.o -L. -lmxml
|
||||
|
||||
mxmldoc-static: libmxml.a mxmldoc.o
|
||||
$(CC) $(LDFLAGS) -o $@ mxmldoc.o libmxml.a
|
||||
|
||||
mxmldoc.o: mxml.h
|
||||
@ -245,13 +324,13 @@ testmxml.o: mxml.h
|
||||
# mxml.xml
|
||||
#
|
||||
|
||||
mxml.xml: mxmldoc mxml.h $(PUBLIBOBJS:.o=.c)
|
||||
mxml.xml: mxmldoc-static mxml.h $(PUBLIBOBJS:.o=.c)
|
||||
$(RM) mxml.xml
|
||||
./mxmldoc mxml.xml mxml.h $(PUBLIBOBJS:.o=.c) >doc/reference.html
|
||||
./mxmldoc-static mxml.xml mxml.h $(PUBLIBOBJS:.o=.c) >doc/reference.html
|
||||
|
||||
valgrind: mxmldoc
|
||||
valgrind: mxmldoc-static
|
||||
$(RM) valgrind.xml
|
||||
valgrind --leak-check=yes ./mxmldoc valgrind.xml mxml.h \
|
||||
valgrind --leak-check=yes ./mxmldoc-static valgrind.xml mxml.h \
|
||||
$(PUBLIBOBJS:.o=.c) >valgrind.html 2>valgrind.out
|
||||
|
||||
|
||||
|
4
README
4
README
@ -1,11 +1,11 @@
|
||||
README - 01/29/2005
|
||||
README - 02/25/2005
|
||||
-------------------
|
||||
|
||||
|
||||
INTRODUCTION
|
||||
|
||||
This README file describes the Mini-XML library version
|
||||
2.1.1.
|
||||
2.2.
|
||||
|
||||
Mini-XML is a small XML parsing library that you can use to
|
||||
read XML and XML-like data files in your application without
|
||||
|
2
TODO
2
TODO
@ -1,4 +1,4 @@
|
||||
TODO - 06/21/2004
|
||||
TODO - 02/25/2005
|
||||
-----------------
|
||||
|
||||
- Add access methods and make node structure opaque.
|
||||
|
154
configure
vendored
154
configure
vendored
@ -272,7 +272,7 @@ PACKAGE_STRING=
|
||||
PACKAGE_BUGREPORT=
|
||||
|
||||
ac_unique_file="mxml.h"
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS VERSION LDFLAGS OPTIM docdir CC CFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CXX CXXFLAGS ac_ct_CXX RANLIB ac_ct_RANLIB AR CP MKDIR NROFF GROFF RM ARFLAGS CAT1EXT CAT3EXT MAN1EXT MAN3EXT PC_CFLAGS PC_LIBS LIBOBJS LTLIBOBJS'
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS VERSION LDFLAGS OPTIM docdir CC CFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CXX CXXFLAGS ac_ct_CXX RANLIB ac_ct_RANLIB AR CP LN MKDIR NROFF GROFF RM ARFLAGS DSO DSOFLAGS LIBMXML PICFLAG CAT1EXT CAT3EXT MAN1EXT MAN3EXT PC_CFLAGS PC_LIBS LIBOBJS LTLIBOBJS'
|
||||
ac_subst_files=''
|
||||
|
||||
# Initialize some variables set by options.
|
||||
@ -808,6 +808,7 @@ Optional Features:
|
||||
--disable-FEATURE do not include FEATURE (same as --enable-FEATURE=no)
|
||||
--enable-FEATURE[=ARG] include FEATURE [ARG=yes]
|
||||
--enable-debug turn on debugging, default=no
|
||||
--enable-shared turn on shared libraries, default=no
|
||||
|
||||
Optional Packages:
|
||||
--with-PACKAGE[=ARG] use PACKAGE [ARG=yes]
|
||||
@ -2770,6 +2771,45 @@ else
|
||||
echo "${ECHO_T}no" >&6
|
||||
fi
|
||||
|
||||
# Extract the first word of "ln", so it can be a program name with args.
|
||||
set dummy ln; ac_word=$2
|
||||
echo "$as_me:$LINENO: checking for $ac_word" >&5
|
||||
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
|
||||
if test "${ac_cv_path_LN+set}" = set; then
|
||||
echo $ECHO_N "(cached) $ECHO_C" >&6
|
||||
else
|
||||
case $LN in
|
||||
[\\/]* | ?:[\\/]*)
|
||||
ac_cv_path_LN="$LN" # Let the user override the test with a path.
|
||||
;;
|
||||
*)
|
||||
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||||
for as_dir in $PATH
|
||||
do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
ac_cv_path_LN="$as_dir/$ac_word$ac_exec_ext"
|
||||
echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
LN=$ac_cv_path_LN
|
||||
|
||||
if test -n "$LN"; then
|
||||
echo "$as_me:$LINENO: result: $LN" >&5
|
||||
echo "${ECHO_T}$LN" >&6
|
||||
else
|
||||
echo "$as_me:$LINENO: result: no" >&5
|
||||
echo "${ECHO_T}no" >&6
|
||||
fi
|
||||
|
||||
# Extract the first word of "mkdir", so it can be a program name with args.
|
||||
set dummy mkdir; ac_word=$2
|
||||
echo "$as_me:$LINENO: checking for $ac_word" >&5
|
||||
@ -3156,12 +3196,119 @@ done
|
||||
|
||||
fi
|
||||
|
||||
DSO="${DSO:=:}"
|
||||
DSOFLAGS="${DSOFLAGS:=}"
|
||||
|
||||
# Check whether --enable-shared or --disable-shared was given.
|
||||
if test "${enable_shared+set}" = set; then
|
||||
enableval="$enable_shared"
|
||||
|
||||
fi;
|
||||
|
||||
if test x$enable_shared = xyes; then
|
||||
echo "$as_me:$LINENO: checking for shared library support" >&5
|
||||
echo $ECHO_N "checking for shared library support... $ECHO_C" >&6
|
||||
PICFLAG=1
|
||||
|
||||
case "$uname" in
|
||||
SunOS* | UNIX_S*)
|
||||
echo "$as_me:$LINENO: result: yes" >&5
|
||||
echo "${ECHO_T}yes" >&6
|
||||
LIBMXML="libmxml.so.1.0"
|
||||
DSO="\$(CC)"
|
||||
DSOFLAGS="$DSOFLAGS -Wl,-h,libmxml.so.1 -G -R\$(libdir) \$(OPTIM)"
|
||||
LDFLAGS="$LDFLAGS -R\$(libdir)"
|
||||
;;
|
||||
|
||||
HP-UX*)
|
||||
echo "$as_me:$LINENO: result: yes" >&5
|
||||
echo "${ECHO_T}yes" >&6
|
||||
LIBMXML="libmxml.sl.1"
|
||||
DSO="ld"
|
||||
DSOFLAGS="$DSOFLAGS -b -z +h libmxml.sl.1 +s +b \$(libdir)"
|
||||
LDFLAGS="$LDFLAGS -Wl,+s,+b,\$(libdir)"
|
||||
;;
|
||||
|
||||
IRIX)
|
||||
echo "$as_me:$LINENO: result: yes" >&5
|
||||
echo "${ECHO_T}yes" >&6
|
||||
LIBMXML="libmxml.so.1.0"
|
||||
DSO="\$(CC)"
|
||||
DSOFLAGS="$DSOFLAGS -Wl,-rpath,\$(libdir),-set_version,sgi1.0,-soname,libmxml.so.1 -shared \$(OPTIM)"
|
||||
;;
|
||||
|
||||
OSF1* | Linux | GNU)
|
||||
echo "$as_me:$LINENO: result: yes" >&5
|
||||
echo "${ECHO_T}yes" >&6
|
||||
LIBMXML="libmxml.so.1.0"
|
||||
DSO="\$(CC)"
|
||||
DSOFLAGS="$DSOFLAGS -Wl,-soname,libmxml.so.1,-rpath,\$(libdir) -shared \$(OPTIM)"
|
||||
LDFLAGS="$LDFLAGS -Wl,-rpath,\$(libdir)"
|
||||
;;
|
||||
|
||||
*BSD*)
|
||||
echo "$as_me:$LINENO: result: yes" >&5
|
||||
echo "${ECHO_T}yes" >&6
|
||||
LIBMXML="libmxml.so.1.0"
|
||||
DSO="\$(CC)"
|
||||
DSOFLAGS="$DSOFLAGS -Wl,-soname,libmxml.so.1,-R\$(libdir) -shared \$(OPTIM)"
|
||||
LDFLAGS="$LDFLAGS -Wl,-R\$(libdir)"
|
||||
;;
|
||||
|
||||
Darwin*)
|
||||
echo "$as_me:$LINENO: result: yes" >&5
|
||||
echo "${ECHO_T}yes" >&6
|
||||
LIBMXML="libmxml.1.dylib"
|
||||
DSO="\$(CC)"
|
||||
DSOFLAGS="$DSOFLAGS \$(RC_CFLAGS) -dynamiclib -lc"
|
||||
;;
|
||||
|
||||
*)
|
||||
echo "$as_me:$LINENO: result: no" >&5
|
||||
echo "${ECHO_T}no" >&6
|
||||
{ echo "$as_me:$LINENO: WARNING: shared libraries not supported on this platform." >&5
|
||||
echo "$as_me: WARNING: shared libraries not supported on this platform." >&2;}
|
||||
PICFLAG=0
|
||||
LIBMXML="libmxml.a"
|
||||
;;
|
||||
esac
|
||||
else
|
||||
PICFLAG=0
|
||||
LIBMXML="libmxml.a"
|
||||
fi
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if test -n "$GCC"; then
|
||||
CFLAGS="-Wall $CFLAGS"
|
||||
|
||||
if test "x$use_ansi" = xyes; then
|
||||
CFLAGS="-ansi -pedantic $CFLAGS"
|
||||
fi
|
||||
|
||||
if test $PICFLAG = 1 -a $uname != AIX; then
|
||||
OPTIM="-fPIC $OPTIM"
|
||||
fi
|
||||
else
|
||||
case $uname in
|
||||
HP-UX*)
|
||||
CFLAGS="-Ae $CFLAGS"
|
||||
OPTIM="+DAportable $OPTIM"
|
||||
|
||||
if test $PICFLAG = 1; then
|
||||
OPTIM="+z $OPTIM"
|
||||
fi
|
||||
;;
|
||||
|
||||
UNIX_SVR* | SunOS*)
|
||||
if test $PICFLAG = 1; then
|
||||
OPTIM="-KPIC $OPTIM"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
if test "$prefix" = "NONE"; then
|
||||
@ -3860,11 +4007,16 @@ s,@RANLIB@,$RANLIB,;t t
|
||||
s,@ac_ct_RANLIB@,$ac_ct_RANLIB,;t t
|
||||
s,@AR@,$AR,;t t
|
||||
s,@CP@,$CP,;t t
|
||||
s,@LN@,$LN,;t t
|
||||
s,@MKDIR@,$MKDIR,;t t
|
||||
s,@NROFF@,$NROFF,;t t
|
||||
s,@GROFF@,$GROFF,;t t
|
||||
s,@RM@,$RM,;t t
|
||||
s,@ARFLAGS@,$ARFLAGS,;t t
|
||||
s,@DSO@,$DSO,;t t
|
||||
s,@DSOFLAGS@,$DSOFLAGS,;t t
|
||||
s,@LIBMXML@,$LIBMXML,;t t
|
||||
s,@PICFLAG@,$PICFLAG,;t t
|
||||
s,@CAT1EXT@,$CAT1EXT,;t t
|
||||
s,@CAT3EXT@,$CAT3EXT,;t t
|
||||
s,@MAN1EXT@,$MAN1EXT,;t t
|
||||
|
96
configure.in
96
configure.in
@ -70,6 +70,7 @@ AC_PROG_CXX
|
||||
AC_PROG_RANLIB
|
||||
AC_PATH_PROG(AR,ar)
|
||||
AC_PATH_PROG(CP,cp)
|
||||
AC_PATH_PROG(LN,ln)
|
||||
AC_PATH_PROG(MKDIR,mkdir)
|
||||
AC_PATH_PROG(NROFF,nroff)
|
||||
if test x$NROFF = x; then
|
||||
@ -103,6 +104,80 @@ if test "x$use_vsnprintf" != xyes; then
|
||||
AC_CHECK_FUNCS(vsnprintf)
|
||||
fi
|
||||
|
||||
dnl Shared library support...
|
||||
DSO="${DSO:=:}"
|
||||
DSOFLAGS="${DSOFLAGS:=}"
|
||||
|
||||
AC_ARG_ENABLE(shared, [ --enable-shared turn on shared libraries, default=no])
|
||||
|
||||
if test x$enable_shared = xyes; then
|
||||
AC_MSG_CHECKING(for shared library support)
|
||||
PICFLAG=1
|
||||
|
||||
case "$uname" in
|
||||
SunOS* | UNIX_S*)
|
||||
AC_MSG_RESULT(yes)
|
||||
LIBMXML="libmxml.so.1.0"
|
||||
DSO="\$(CC)"
|
||||
DSOFLAGS="$DSOFLAGS -Wl,-h,libmxml.so.1 -G -R\$(libdir) \$(OPTIM)"
|
||||
LDFLAGS="$LDFLAGS -R\$(libdir)"
|
||||
;;
|
||||
|
||||
HP-UX*)
|
||||
AC_MSG_RESULT(yes)
|
||||
LIBMXML="libmxml.sl.1"
|
||||
DSO="ld"
|
||||
DSOFLAGS="$DSOFLAGS -b -z +h libmxml.sl.1 +s +b \$(libdir)"
|
||||
LDFLAGS="$LDFLAGS -Wl,+s,+b,\$(libdir)"
|
||||
;;
|
||||
|
||||
IRIX)
|
||||
AC_MSG_RESULT(yes)
|
||||
LIBMXML="libmxml.so.1.0"
|
||||
DSO="\$(CC)"
|
||||
DSOFLAGS="$DSOFLAGS -Wl,-rpath,\$(libdir),-set_version,sgi1.0,-soname,libmxml.so.1 -shared \$(OPTIM)"
|
||||
;;
|
||||
|
||||
OSF1* | Linux | GNU)
|
||||
AC_MSG_RESULT(yes)
|
||||
LIBMXML="libmxml.so.1.0"
|
||||
DSO="\$(CC)"
|
||||
DSOFLAGS="$DSOFLAGS -Wl,-soname,libmxml.so.1,-rpath,\$(libdir) -shared \$(OPTIM)"
|
||||
LDFLAGS="$LDFLAGS -Wl,-rpath,\$(libdir)"
|
||||
;;
|
||||
|
||||
*BSD*)
|
||||
AC_MSG_RESULT(yes)
|
||||
LIBMXML="libmxml.so.1.0"
|
||||
DSO="\$(CC)"
|
||||
DSOFLAGS="$DSOFLAGS -Wl,-soname,libmxml.so.1,-R\$(libdir) -shared \$(OPTIM)"
|
||||
LDFLAGS="$LDFLAGS -Wl,-R\$(libdir)"
|
||||
;;
|
||||
|
||||
Darwin*)
|
||||
AC_MSG_RESULT(yes)
|
||||
LIBMXML="libmxml.1.dylib"
|
||||
DSO="\$(CC)"
|
||||
DSOFLAGS="$DSOFLAGS \$(RC_CFLAGS) -dynamiclib -lc"
|
||||
;;
|
||||
|
||||
*)
|
||||
AC_MSG_RESULT(no)
|
||||
AC_MSG_WARN(shared libraries not supported on this platform.)
|
||||
PICFLAG=0
|
||||
LIBMXML="libmxml.a"
|
||||
;;
|
||||
esac
|
||||
else
|
||||
PICFLAG=0
|
||||
LIBMXML="libmxml.a"
|
||||
fi
|
||||
|
||||
AC_SUBST(DSO)
|
||||
AC_SUBST(DSOFLAGS)
|
||||
AC_SUBST(LIBMXML)
|
||||
AC_SUBST(PICFLAG)
|
||||
|
||||
dnl Add -Wall for GCC...
|
||||
if test -n "$GCC"; then
|
||||
CFLAGS="-Wall $CFLAGS"
|
||||
@ -110,6 +185,27 @@ if test -n "$GCC"; then
|
||||
if test "x$use_ansi" = xyes; then
|
||||
CFLAGS="-ansi -pedantic $CFLAGS"
|
||||
fi
|
||||
|
||||
if test $PICFLAG = 1 -a $uname != AIX; then
|
||||
OPTIM="-fPIC $OPTIM"
|
||||
fi
|
||||
else
|
||||
case $uname in
|
||||
HP-UX*)
|
||||
CFLAGS="-Ae $CFLAGS"
|
||||
OPTIM="+DAportable $OPTIM"
|
||||
|
||||
if test $PICFLAG = 1; then
|
||||
OPTIM="+z $OPTIM"
|
||||
fi
|
||||
;;
|
||||
|
||||
UNIX_SVR* | SunOS*)
|
||||
if test $PICFLAG = 1; then
|
||||
OPTIM="-KPIC $OPTIM"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
|
||||
dnl Fix "prefix" variable if it hasn't been specified...
|
||||
|
21
mxml.list.in
21
mxml.list.in
@ -1,7 +1,7 @@
|
||||
#
|
||||
# "$Id$"
|
||||
#
|
||||
# EPM software list file for Mini-XML, a small XML-like file parsing library.
|
||||
# EPM software list file for Mini-XML, a small XML library.
|
||||
#
|
||||
# Copyright 2003-2005 by Michael Sweet.
|
||||
#
|
||||
@ -26,6 +26,8 @@ $libdir=@libdir@
|
||||
$mandir=@mandir@
|
||||
$srcdir=@srcdir@
|
||||
|
||||
$PICFLAG=@PICFLAG@
|
||||
|
||||
# Product information
|
||||
%product mxml
|
||||
%copyright 2003-2005 by Michael Sweet
|
||||
@ -72,6 +74,23 @@ f 0555 root sys ${bindir}/mxmldoc mxmldoc
|
||||
f 0444 root sys ${includedir}/mxml.h mxml.h
|
||||
|
||||
# Libraries
|
||||
%if $PICFLAG
|
||||
%system hpux
|
||||
f 0555 root sys ${libdir}/libmxml.sl.1 libmxml.sl.1
|
||||
l 0555 root sys ${libdir}/libmxml.sl libmxml.sl.1
|
||||
|
||||
%system dylib
|
||||
f 0555 root sys ${libdir}/libmxml.1.dylib libmxml.1.dylib
|
||||
l 0555 root sys ${libdir}/libmxml.dylib libmxml.1.dylib
|
||||
|
||||
%system freebsd irix linux netbsd openbsd solaris tru64
|
||||
f 0555 root sys ${libdir}/libmxml.so.1.0 libmxml.so.1.0
|
||||
l 0555 root sys ${libdir}/libmxml.sl.1 libmxml.sl.1.0
|
||||
l 0555 root sys ${libdir}/libmxml.sl libmxml.sl.1.0
|
||||
|
||||
%system all
|
||||
%endif
|
||||
|
||||
f 0444 root sys ${libdir}/libmxml.a libmxml.a
|
||||
|
||||
# pkg-config info
|
||||
|
14
mxml.spec
14
mxml.spec
@ -1,9 +1,9 @@
|
||||
#
|
||||
# "$Id: mxml.spec,v 1.14 2004/11/13 18:26:32 mike Exp $"
|
||||
# "$Id$"
|
||||
#
|
||||
# RPM "spec" file for Mini-XML, a small XML-like file parsing library.
|
||||
# RPM "spec" file for Mini-XML, a small XML library.
|
||||
#
|
||||
# Copyright 2003-2004 by Michael Sweet.
|
||||
# Copyright 2003-2005 by Michael Sweet.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU Library General Public
|
||||
@ -18,7 +18,7 @@
|
||||
|
||||
Summary: Miniature XML development library
|
||||
Name: mxml
|
||||
Version: 2.1
|
||||
Version: 2.2
|
||||
Release: 1
|
||||
Copyright: GPL
|
||||
Group: Development/Libraries
|
||||
@ -58,7 +58,7 @@ those required by the XML specification.
|
||||
%setup
|
||||
|
||||
%build
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" LDFLAGS="$RPM_OPT_FLAGS" ./configure --prefix=/usr
|
||||
CFLAGS="$RPM_OPT_FLAGS" CXXFLAGS="$RPM_OPT_FLAGS" LDFLAGS="$RPM_OPT_FLAGS" ./configure --enable-shared --prefix=/usr
|
||||
|
||||
# If we got this far, all prerequisite libraries must be here.
|
||||
make
|
||||
@ -80,7 +80,7 @@ rm -rf $RPM_BUILD_ROOT
|
||||
%dir /usr/include
|
||||
/usr/include/mxml.h
|
||||
%dir /usr/lib
|
||||
/usr/lib/libmxml.a
|
||||
/usr/lib/*
|
||||
%dir /usr/lib/pkgconfig
|
||||
/usr/lib/pkgconfig/mxml.pc
|
||||
%dir /usr/share/doc/mxml
|
||||
@ -95,5 +95,5 @@ rm -rf $RPM_BUILD_ROOT
|
||||
/usr/share/man/man3/*
|
||||
|
||||
#
|
||||
# End of "$Id: mxml.spec,v 1.14 2004/11/13 18:26:32 mike Exp $".
|
||||
# End of "$Id$".
|
||||
#
|
||||
|
Loading…
Reference in New Issue
Block a user