summaryrefslogtreecommitdiff
path: root/x11/xforms
diff options
context:
space:
mode:
authorjlam <jlam@pkgsrc.org>1999-09-24 04:37:31 +0000
committerjlam <jlam@pkgsrc.org>1999-09-24 04:37:31 +0000
commit60d5ec5b241cdfd9f7fef1ad54577ef5ffc9dd99 (patch)
tree07a8d85eb30fd490f9e2f0a03cde75f73cfefe1d /x11/xforms
parent98ef3eb09203d627d83b707052f6401225b5d3e5 (diff)
downloadpkgsrc-60d5ec5b241cdfd9f7fef1ad54577ef5ffc9dd99.tar.gz
Rebuild shared library with appropriate library version numbers from
the static library so our shared lib versioning semantics can be preserved. Suggested on tech-pkg.
Diffstat (limited to 'x11/xforms')
-rw-r--r--x11/xforms/Makefile43
-rw-r--r--x11/xforms/files/Makefile66
-rw-r--r--x11/xforms/files/patch-sum3
-rw-r--r--x11/xforms/patches/patch-aa43
4 files changed, 92 insertions, 63 deletions
diff --git a/x11/xforms/Makefile b/x11/xforms/Makefile
index 45bb58e321c..f099d90b30e 100644
--- a/x11/xforms/Makefile
+++ b/x11/xforms/Makefile
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.19 1999/09/23 05:29:24 jlam Exp $
+# $NetBSD: Makefile,v 1.20 1999/09/24 04:37:31 jlam Exp $
#
DISTNAME= bxform-088
@@ -12,20 +12,22 @@ MAINTAINER= packages@netbsd.org
HOMEPAGE= http://bragg.phys.uwm.edu/xforms/
.if (${MACHINE_ARCH} == "arm32")
-ARCH_SUBDIR= netBSD-arm
+ARCH_SUBDIR= netBSD-arm
.elif (${MACHINE_ARCH} == "i386")
-ARCH_SUBDIR= netBSD
+ARCH_SUBDIR= netBSD
.elif (${MACHINE_ARCH} == "ns32k")
-ARCH_SUBDIR= netBSD-pc532
+ARCH_SUBDIR= netBSD-pc532
.else
-ARCH_SUBDIR= netBSD-${MACHINE_ARCH}
+ARCH_SUBDIR= netBSD-${MACHINE_ARCH}
.endif
-ONLY_FOR_PLATFORM= *-*-arm32 *-*-i386 *-*-m68k *-*-ns32k *-*-sparc
+DIST_SUBDIR= xforms-${MACHINE_ARCH}
+
+ONLY_FOR_PLATFORM= NetBSD-*-arm32 NetBSD-*-i386 NetBSD-*-m68k \
+ NetBSD-*-ns32k NetBSD-*-sparc
.include "../../mk/bsd.prefs.mk"
-.if ${OPSYS} == "NetBSD"
.if ${MACHINE_ARCH} == "i386" && ${OBJECT_FMT} == "ELF"
DISTNAME= bxform-088-ELF
.endif
@@ -33,29 +35,36 @@ DISTNAME= bxform-088-ELF
# XXX no ELF objects for sparc on NetBSD
IGNORE="is not available for ${MACHINE_PLATFORM} using the ELF object format."
.endif
-.endif
-
-DIST_SUBDIR= xforms-${MACHINE_ARCH}
## Define OBJMACHINE so WRKDIR is defined to be ${MACHINE_ARCH}-specific.
OBJMACHINE= yes
USE_X11BASE= yes
-NO_BUILD= yes
+USE_LIBTOOL= yes
+MAKEFILE= ${FILESDIR}/Makefile
+PLIST_SRC= ${PKGDIR}/PLIST.mi ${PKGDIR}/PLIST.shlib
-PLIST_SRC= ${PKGDIR}/PLIST.mi ${PKGSRC}/PLIST.shlib
+# When the XForms API changes and breaks binary-compatibility with the
+# previous version, increment the MAJOR by 1 and reset the MINOR to 0.
+#
+SHLIB_MAJOR= 0
+SHLIB_MINOR= 88
-post-patch:
- ${MV} ${WRKSRC}/mkconfig.h ${WRKSRC}/mkconfig.h.orig
- ${CP} ${FILESDIR}/mkconfig.h ${WRKSRC}
+MAKE_ENV+= SHLIB_MAJOR="${SHLIB_MAJOR}" SHLIB_MINOR="${SHLIB_MINOR}"
# XXX ELF linker tries to resolve libGL.so symbols when linking with
-# XXX shared libxforms, so for now, disable installation of shared lib.
+# XXX shared libxforms, so for now, remove the shared lib.
.if ${OBJECT_FMT} == "ELF"
PLIST_SRC= ${PKGDIR}/PLIST.mi
post-install:
- ${RM} ${PREFIX}/lib/libforms.so.0.88 ${PREFIX}/lib/libxforms.so.0.88
+ ${RM} -f \
+ ${PREFIX}/lib/libforms.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+ ${PREFIX}/lib/libforms.so.${SHLIB_MAJOR} \
+ ${PREFIX}/lib/libforms.so \
+ ${PREFIX}/lib/libxforms.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+ ${PREFIX}/lib/libxforms.so.${SHLIB_MAJOR} \
+ ${PREFIX}/lib/libxforms.so
.endif
.include "../../mk/bsd.pkg.mk"
diff --git a/x11/xforms/files/Makefile b/x11/xforms/files/Makefile
new file mode 100644
index 00000000000..395ee8601a5
--- /dev/null
+++ b/x11/xforms/files/Makefile
@@ -0,0 +1,66 @@
+# $NetBSD: Makefile,v 1.1 1999/09/24 04:37:32 jlam Exp $
+#
+# Makefile using LIBTOOL to generate a shared library from the static one.
+
+SHELL= /bin/sh
+
+BINDIR= ${PREFIX}/bin
+INCLUDEDIR= ${PREFIX}/include/X11
+LIBDIR= ${PREFIX}/lib
+MANDIR= ${PREFIX}/man
+
+PROGS= DESIGN/fdesign fd2ps/fd2ps
+INCLUDES= FORMS/forms.h
+
+MAN1= DESIGN/fdesign.1 fd2ps/fd2ps.1
+MAN5= FORMS/xforms.5
+
+all: libforms.la
+
+libforms.la: FORMS/libforms.a
+ mkdir -p objects
+ cd objects; \
+ ${AR} x ../FORMS/libforms.a; \
+ for file in *.o; do \
+ ln -f $${file} $${file%.o}.lo; \
+ done
+ ${LIBTOOL} --mode=link ${CC} -o ${.TARGET} objects/*.lo \
+ -rpath ${LIBDIR} -version-info ${SHLIB_MAJOR}:${SHLIB_MINOR}
+
+install: install-progs install-includes install-libs install-man
+
+install-progs: ${PROGS}
+ @for file in ${PROGS}; do \
+ echo "${BSD_INSTALL_PROGRAM} $$file ${BINDIR}"; \
+ ${BSD_INSTALL_PROGRAM} $$file ${BINDIR}; \
+ done
+
+install-includes: ${INCLUDES}
+ @for file in ${INCLUDES}; do \
+ echo "${BSD_INSTALL_MAN} $$file ${INCLUDEDIR}"; \
+ ${BSD_INSTALL_MAN} $$file ${INCLUDEDIR}; \
+ done
+
+install-libs: libforms.la
+ ${LIBTOOL} --mode=install ${BSD_INSTALL_DATA} libforms.la ${LIBDIR}
+ @if [ -f ${LIBDIR}/libforms.a ]; then \
+ echo "ln -sf libforms.a ${LIBDIR}/libxforms.a"; \
+ ln -sf libforms.a ${LIBDIR}/libxforms.a; \
+ fi
+ @if [ -f ${LIBDIR}/libforms.so.${SHLIB_MAJOR}.${SHLIB_MINOR} ]; then \
+ echo "ln -sf libforms.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+ ${LIBDIR}/libxforms.so.${SHLIB_MAJOR}.${SHLIB_MINOR}"; \
+ ln -sf libforms.so.${SHLIB_MAJOR}.${SHLIB_MINOR} \
+ ${LIBDIR}/libxforms.so.${SHLIB_MAJOR}.${SHLIB_MINOR}; \
+ fi
+
+install-man: ${MAN1} ${MAN5}
+ @for file in ${MAN1}; do \
+ echo "${BSD_INSTALL_MAN} $$file ${MANDIR}/man1"; \
+ ${BSD_INSTALL_MAN} $$file ${MANDIR}/man1; \
+ done
+ @for file in ${MAN5}; do \
+ echo "${BSD_INSTALL_MAN} $$file ${MANDIR}/man5"; \
+ ${BSD_INSTALL_MAN} $$file ${MANDIR}/man5; \
+ done
+ ln -sf xforms.5 ${MANDIR}/man5/forms.5
diff --git a/x11/xforms/files/patch-sum b/x11/xforms/files/patch-sum
deleted file mode 100644
index 29b1ad700ad..00000000000
--- a/x11/xforms/files/patch-sum
+++ /dev/null
@@ -1,3 +0,0 @@
-$NetBSD: patch-sum,v 1.1 1999/07/09 14:23:35 agc Exp $
-
-MD5 (patch-aa) = 0b18f61f9a48123fe18791b12eac0d52
diff --git a/x11/xforms/patches/patch-aa b/x11/xforms/patches/patch-aa
deleted file mode 100644
index 25225f7c757..00000000000
--- a/x11/xforms/patches/patch-aa
+++ /dev/null
@@ -1,43 +0,0 @@
-$NetBSD: patch-aa,v 1.3 1998/08/07 11:18:24 agc Exp $
-
---- Makefile.orig Thu Feb 26 04:03:26 1998
-+++ Makefile Fri May 8 15:56:29 1998
-@@ -25,24 +25,27 @@
- @(cd DEMOS; make)
-
- install:
-- cp FORMS/$(FORMLIB) $(LIB_DIR);chmod $(LIBMODE) $(LIB_DIR)/$(FORMLIB)
-- cp DESIGN/fdesign $(BIN_DIR); chmod $(BINMODE) $(BIN_DIR)/fdesign
-- cp fd2ps/fd2ps $(BIN_DIR); chmod $(BINMODE) $(BIN_DIR)/fd2ps
-+ ${BSD_INSTALL_DATA} FORMS/$(FORMLIB) $(LIB_DIR)
-+ $(RANLIB) $(LIB_DIR)/$(FORMLIB)
-+ if [ "$(STATIC_NAME)" != "" ]; then\
-+ $(LN) $(LIB_DIR)/$(FORMLIB) $(LIB_DIR)/$(STATIC_NAME);\
-+ fi
-+ ${BSD_INSTALL_PROGRAM} DESIGN/fdesign $(BIN_DIR)
-+ ${BSD_INSTALL_PROGRAM} fd2ps/fd2ps $(BIN_DIR)
- -@if [ "$(SHARED_LIB)" != "" ]; then\
-- cp FORMS/$(SHARED_LIB) $(LIB_DIR); \
-- chmod $(LIBMODE) $(LIB_DIR)/$(SHARED_LIB);\
-+ ${BSD_INSTALL_DATA} FORMS/$(SHARED_LIB) $(LIB_DIR); \
- if [ "$(SHARED_NAME)" != "" ]; then\
- $(LN) $(LIB_DIR)/$(SHARED_LIB) $(LIB_DIR)/$(SHARED_NAME);\
- fi \
- fi
-- cp FORMS/$(FORMHEADER) $(HEADER_DIR);\
-- chmod $(HEADERMODE) $(HEADER_DIR)/$(FORMHEADER)
-- cp FORMS/xforms.5 $(MAN5_DIR); chmod $(MANMODE) $(MAN5_DIR)/xforms.5
-- cp DESIGN/fdesign.1 $(MAN1_DIR); chmod $(MANMODE) $(MAN1_DIR)/fdesign.1
-- cp fd2ps/fd2ps.1 $(MAN1_DIR); chmod $(MANMODE) $(MAN1_DIR)/fd2ps.1
-+ ${BSD_INSTALL_DATA} FORMS/$(FORMHEADER) $(HEADER_DIR)
-+ ${BSD_INSTALL_MAN} FORMS/xforms.5 $(MAN5_DIR)
-+ ${BSD_INSTALL_MAN} DESIGN/fdesign.1 $(MAN1_DIR)
-+ ${BSD_INSTALL_MAN} fd2ps/fd2ps.1 $(MAN1_DIR)
- @if [ ! -f $(MAN5_DIR)/forms.5 ]; then\
-- ln -s $(MAN5_DIR)/xforms.5 $(MAN5_DIR)/forms.5;\
-+ $(LN) $(MAN5_DIR)/xforms.5 $(MAN5_DIR)/forms.5;\
- fi
-+
- clean:
- (cd DEMOS; make $@)
- empty: