summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorL Jonas Olsson <ljo@FreeBSD.org>1994-11-22 12:06:23 +0000
committerL Jonas Olsson <ljo@FreeBSD.org>1994-11-22 12:06:23 +0000
commit305d7c6f694fc724d1bb62910e3f83acc5eb3c91 (patch)
treef5f800b0363f191ca67a3b0900172aaeeb17940f
parentAdd pkg files. (diff)
Make a separate package for the config files. This is a simple way
out of having to install config files before the rest (libs and clients) can be built.
-rw-r--r--x11-toolkits/xview/Makefile13
-rw-r--r--x11-toolkits/xview/files/patch-aa299
-rw-r--r--x11-toolkits/xview/pkg-comment1
-rw-r--r--x11-toolkits/xview/pkg-descr254
-rw-r--r--x11-toolkits/xview/pkg-plist6
5 files changed, 573 insertions, 0 deletions
diff --git a/x11-toolkits/xview/Makefile b/x11-toolkits/xview/Makefile
new file mode 100644
index 000000000000..004c1de091b1
--- /dev/null
+++ b/x11-toolkits/xview/Makefile
@@ -0,0 +1,13 @@
+DISTNAME= xview3.2p1-X11R6
+USE_IMAKE= yes
+MASTER_SITES= ftp://ftp.x.org/contrib/libraries/
+EXTRACT_SUFX= .tar.gz
+WRKDIR= xview3.2p1-X11R6/config
+WRKSRC= xview3.2p1-X11R6/config
+DISTFILES= xview3.2p1-X11R6.tar.gz
+
+configure: extract patch ${CONFIGURE_COOKIE}
+ (cd $(WRKSRC)/config; xmkmf)
+ @${TOUCH} ${TOUCH_FLAGS} ${CONFIGURE_COOKIE}
+
+.include <bsd.port.mk>
diff --git a/x11-toolkits/xview/files/patch-aa b/x11-toolkits/xview/files/patch-aa
new file mode 100644
index 000000000000..11c40bd3aebf
--- /dev/null
+++ b/x11-toolkits/xview/files/patch-aa
@@ -0,0 +1,299 @@
+diff -rc ../old/xview3.2p1-X11R6/config/Imakefile ./config/Imakefile
+*** ../old/xview3.2p1-X11R6/config/Imakefile Tue Jun 29 01:13:19 1993
+--- ./config/Imakefile Sun Nov 20 13:38:58 1994
+***************
+*** 8,14 ****
+ /**/# config directory
+ /**/# @(#)Imakefile 1.9 28 Jun 1993 SMI
+
+! XVFILES = XView.cf XView.lib XView.obj XView.rules XView.tmpl library.tmpl
+ CFFILES = $(XVFILES) $(HEADERS)
+
+ InstallMultipleDestFlags(install,$(CFFILES),$(CONFIGDIR),$(INSTDATFLAGS))
+--- 8,14 ----
+ /**/# config directory
+ /**/# @(#)Imakefile 1.9 28 Jun 1993 SMI
+
+! XVFILES = XView.cf XView.lib XView.obj XView.rules XView.tmpl XView.prog
+ CFFILES = $(XVFILES) $(HEADERS)
+
+ InstallMultipleDestFlags(install,$(CFFILES),$(CONFIGDIR),$(INSTDATFLAGS))
+diff -rc ../old/xview3.2p1-X11R6/config/XView.cf ./config/XView.cf
+*** ../old/xview3.2p1-X11R6/config/XView.cf Sun Jun 26 22:09:19 1994
+--- ./config/XView.cf Sun Nov 20 13:38:58 1994
+***************
+*** 101,107 ****
+ * the appropriate value.
+ */
+ #ifndef XVDestDir
+! #define XVDestDir /usr/X11/xview
+ #endif
+ /*
+ * Command to add object modules to the library.
+--- 101,107 ----
+ * the appropriate value.
+ */
+ #ifndef XVDestDir
+! #define XVDestDir /usr/X11R6
+ #endif
+ /*
+ * Command to add object modules to the library.
+***************
+*** 139,145 ****
+ * installed in $(DESTDIR)/lib/X11/config (aka $(CONFIGDIR)).
+ */
+ #ifndef OnlyNeedsNewXViewConfigInstalled
+! #define OnlyNeedsNewXViewConfigInstalled NO
+ #endif
+ /*
+ * If you would like the XView man pages to be installed in
+--- 139,145 ----
+ * installed in $(DESTDIR)/lib/X11/config (aka $(CONFIGDIR)).
+ */
+ #ifndef OnlyNeedsNewXViewConfigInstalled
+! #define OnlyNeedsNewXViewConfigInstalled YES
+ #endif
+ /*
+ * If you would like the XView man pages to be installed in
+***************
+*** 305,311 ****
+ * malloc() and read() will be used instead.
+ */
+ #ifndef OsHasMmap
+! #define OsHasMmap YES
+ #endif
+ /*
+ * The implementation of internationalization support in XView depends
+--- 305,311 ----
+ * malloc() and read() will be used instead.
+ */
+ #ifndef OsHasMmap
+! #define OsHasMmap NO
+ #endif
+ /*
+ * The implementation of internationalization support in XView depends
+***************
+*** 315,321 ****
+ * features disabled.
+ */
+ #ifndef OsHasLocale
+! #define OsHasLocale YES
+ #endif
+ /*
+ * There are number of memory allocation macros in lib/libxview/base.h
+--- 315,321 ----
+ * features disabled.
+ */
+ #ifndef OsHasLocale
+! #define OsHasLocale NO
+ #endif
+ /*
+ * There are number of memory allocation macros in lib/libxview/base.h
+***************
+*** 360,366 ****
+ * be defined as -PIC
+ */
+ #ifndef PositionIndependentCodeFlag
+! #define PositionIndependentCodeFlag -PIC
+ #endif
+
+ /*
+--- 360,366 ----
+ * be defined as -PIC
+ */
+ #ifndef PositionIndependentCodeFlag
+! #define PositionIndependentCodeFlag -fpic
+ #endif
+
+ /*
+diff -rc ../old/xview3.2p1-X11R6/config/XView.obj ./config/XView.obj
+*** ../old/xview3.2p1-X11R6/config/XView.obj Tue Jun 29 01:13:20 1993
+--- ./config/XView.obj Sun Nov 20 13:38:59 1994
+***************
+*** 15,21 ****
+ STD_DEFINES = StandardDefines LibXViewDefines
+ #endif
+ HEADERS= ${HDRSPUBLIC} ${HDRSPRIVATE}
+! INCLUDES= -I$(BUILDINCDIR)$(INCDIR)
+ OBJS = $(TEXT_OBJS) $(DATA_OBJS) $(SPECIAL_OBJS)
+ #if !NotLibXView
+ ALLFILES = $(SRCS) $(HEADERS)
+--- 15,21 ----
+ STD_DEFINES = StandardDefines LibXViewDefines
+ #endif
+ HEADERS= ${HDRSPUBLIC} ${HDRSPRIVATE}
+! INCLUDES= -I$(BUILDINCDIR)/$(INCDIR)
+ OBJS = $(TEXT_OBJS) $(DATA_OBJS) $(SPECIAL_OBJS)
+ #if !NotLibXView
+ ALLFILES = $(SRCS) $(HEADERS)
+***************
+*** 85,98 ****
+
+ #if SubdirHasPublicHeaders
+ # if NotLibXView
+! BuildIncludes($(HDRSPUBLIC),$(PUB_INCDIR),/**/)
+
+ install::
+ $(MKDIRHIER) $(PUB_HEADER_DEST)
+
+ InstallMultiple($(HDRSPUBLIC),$(PUB_HEADER_DEST))
+ # else
+! BuildIncludes($(HDRSPUBLIC),$(XVPUB_INCDIR),/**/)
+
+ install::
+ $(MKDIRHIER) $(XVPUB_HEADER_DEST)
+--- 85,98 ----
+
+ #if SubdirHasPublicHeaders
+ # if NotLibXView
+! BuildIncludes($(HDRSPUBLIC),$(PUB_INCDIR),.)
+
+ install::
+ $(MKDIRHIER) $(PUB_HEADER_DEST)
+
+ InstallMultiple($(HDRSPUBLIC),$(PUB_HEADER_DEST))
+ # else
+! BuildIncludes($(HDRSPUBLIC),$(XVPUB_INCDIR),.)
+
+ install::
+ $(MKDIRHIER) $(XVPUB_HEADER_DEST)
+***************
+*** 103,111 ****
+
+ #if SubdirHasPrivateHeaders
+ # if NotLibXView
+! BuildIncludes($(HDRSPRIVATE),$(PRI_INCDIR),/**/)
+ # else
+! BuildIncludes($(HDRSPRIVATE),$(XVPRI_INCDIR),/**/)
+ # endif
+ # if InstallPrivateHeaders
+ # if NotLibXView
+--- 103,111 ----
+
+ #if SubdirHasPrivateHeaders
+ # if NotLibXView
+! BuildIncludes($(HDRSPRIVATE),$(PRI_INCDIR),.)
+ # else
+! BuildIncludes($(HDRSPRIVATE),$(XVPRI_INCDIR),.)
+ # endif
+ # if InstallPrivateHeaders
+ # if NotLibXView
+diff -rc ../old/xview3.2p1-X11R6/config/XView.rules ./config/XView.rules
+*** ../old/xview3.2p1-X11R6/config/XView.rules Tue Jun 29 01:13:20 1993
+--- ./config/XView.rules Sun Nov 20 13:38:59 1994
+***************
+*** 366,374 ****
+ #ifndef InstallSharedLibraryNoBuild
+ #define InstallSharedLibraryNoBuild(libname,rev,dest) @@\
+ install:: @@\
+! $(RM) /dest/lib/**/libname.so @@\
+ $(INSTALL) -c $(INSTSHAREDLIBFLAGS) lib/**/libname.so.rev dest @@\
+! (cd dest; $(LN) lib/**/libname.so.rev lib/**/libname.so)
+
+ #endif /* InstallSharedLibraryNoBuild */
+
+--- 366,374 ----
+ #ifndef InstallSharedLibraryNoBuild
+ #define InstallSharedLibraryNoBuild(libname,rev,dest) @@\
+ install:: @@\
+! $(RM) /dest/lib/**/libname.so @@\
+ $(INSTALL) -c $(INSTSHAREDLIBFLAGS) lib/**/libname.so.rev dest @@\
+! (cd dest; $(LN) lib/**/libname.so.rev lib/**/libname.so)
+
+ #endif /* InstallSharedLibraryNoBuild */
+
+diff -rc ../old/xview3.2p1-X11R6/config/XView.tmpl ./config/XView.tmpl
+*** ../old/xview3.2p1-X11R6/config/XView.tmpl Sun Jun 26 22:10:00 1994
+--- ./config/XView.tmpl Sun Nov 20 13:38:59 1994
+***************
+*** 96,102 ****
+ * Work around small conflict with Project.tmpl file
+ */
+ #if UseInstalled
+! MKDIRHIER = BourneShell BinDir/mkdirhier
+ #endif
+
+ #if OsHasLocale
+--- 96,102 ----
+ * Work around small conflict with Project.tmpl file
+ */
+ #if UseInstalled
+! MKDIRHIER = mkdirhier
+ #endif
+
+ #if OsHasLocale
+***************
+*** 224,230 ****
+ * afterwards.
+ */
+ #ifndef XVIncludeDirName
+! #define XVIncludeDirName /include
+ #endif
+ INCDIR = XVIncludeDirName
+ /*
+--- 224,230 ----
+ * afterwards.
+ */
+ #ifndef XVIncludeDirName
+! #define XVIncludeDirName include
+ #endif
+ INCDIR = XVIncludeDirName
+ /*
+***************
+*** 356,365 ****
+
+ #if SystemV4
+ SYSV_CLIENT_LIB = -lintl -ldl
+! XVCLIENTSYSDEFINES = -DSVR4 -DSYSV
+ #else
+ SYSV_CLIENT_LIB =
+! XVCLIENTSYSDEFINES = -DSUNOS41
+ #endif
+
+ /*
+--- 356,365 ----
+
+ #if SystemV4
+ SYSV_CLIENT_LIB = -lintl -ldl
+! XVCLIENTSYSDEFINES = -DSVR4 -DSYSV
+ #else
+ SYSV_CLIENT_LIB =
+! XVCLIENTSYSDEFINES = -DSUNOS41
+ #endif
+
+ /*
+***************
+*** 371,386 ****
+ */
+
+ #if XvI18nLevel == 4
+! XVCLIENTI18NDEFINES = -DOW_I18N_L4 -DOW_I18N_L3 -DOW_I18N -DFULL_R5
+! XVCLIENTMISCLIB = -lw
+! XVCLIENTINCLUDES = -I$(OPENWINHOME)/include
+ #else
+! XVCLIENTI18NDEFINES = -DOW_I18N_L3
+! XVCLIENTMISCLIB =
+! XVCLIENTINCLUDES =
+ #endif
+
+! XVCLIENTDEFINES = $(XVCLIENTSYSDEFINES) $(XVCLIENTI18NDEFINES)
+
+ /*
+ * Define libraries for XView clients
+--- 371,386 ----
+ */
+
+ #if XvI18nLevel == 4
+! XVCLIENTI18NDEFINES = -DOW_I18N_L4 -DOW_I18N_L3 -DOW_I18N -DFULL_R5
+! XVCLIENTMISCLIB = -lw
+! XVCLIENTINCLUDES = -I$(OPENWINHOME)/include
+ #else
+! XVCLIENTI18NDEFINES = -DOW_I18N_L3
+! XVCLIENTMISCLIB =
+! XVCLIENTINCLUDES =
+ #endif
+
+! XVCLIENTDEFINES = $(XVCLIENTSYSDEFINES) $(XVCLIENTI18NDEFINES)
+
+ /*
+ * Define libraries for XView clients
diff --git a/x11-toolkits/xview/pkg-comment b/x11-toolkits/xview/pkg-comment
new file mode 100644
index 000000000000..b1107af77497
--- /dev/null
+++ b/x11-toolkits/xview/pkg-comment
@@ -0,0 +1 @@
+Xview3.2 executables libs, includes, and man pages
diff --git a/x11-toolkits/xview/pkg-descr b/x11-toolkits/xview/pkg-descr
new file mode 100644
index 000000000000..ae6ad1794f41
--- /dev/null
+++ b/x11-toolkits/xview/pkg-descr
@@ -0,0 +1,254 @@
+###########################################################################
+# README file for the XView Toolkit, Version 3.2, source release
+# @(#)README 1.7 1/7/92 SMI
+#
+# Please read this document before building the XView release.
+
+
+What Is XView
+-------------
+XView (X Window-System-based Visual/Integrated Environment for Workstations)
+is a user-interface toolkit to support interactive, graphics-based
+applications running under the X Window System. XView provides a set of
+pre-built, user-interface objects such as canvases, scrollbars, menus, and
+control panels. The appearance and functionality of these objects follow
+the OPEN LOOK Graphical User Interface (GUI) specification. XView features
+an object-oriented style Application Programmer's Interface (API) that is
+straightforward and easy to learn.
+
+
+More Information
+----------------
+More information on the XView release is supplied in the
+<XVIEW>/doc/whats_new.ps files. Please refer to these for issues
+related to using the XView libraries and clients and changes for the 3.2
+release. Information on documentation, bug reporting and help
+can be found in the doc directory: xview-info. Information on
+resources/defaults is included in the XView man page contained in
+this directory.
+
+
+XView Requirements
+------------------
+XView requires the use of an ICCCM-compliant window
+manager. One such window manager is olwm, which supports the OPEN
+LOOK (TM) user interface. Further, XView requires full ICCCM
+support in Xlib. This is the standard in the X Window System
+Version 11, Release 5. In order to run under Release 3, you must
+define the PRE_R4_ICCCM compile-time flag (see config/XView.cf)
+and the set resource, xview.icccmcompliant, to False in the
+.Xdefaults file (see the xview man page). This release of XView
+was only tested (executing the builds, and running the binaries)
+on X11 R5.
+
+
+Contents
+--------
+The XView release contains the following:
+
+lib/libxview The XView toolkit
+lib/libolgx The OLGX toolkit (used by XView and olwm)
+clients/clock An XView clock application.
+clients/cmdtool An XView terminal emulator.
+clients/olwm The OPENLOOK window manager.
+clients/olwmslave 'helper' program for olwm.
+contrib/examples A bunch of XView examples.
+fonts/bdf The OPENLOOK fonts required for Pre-R4 based servers.
+doc Documentation about XView.
+misc/message_files Message file templates for localization.
+misc/xrdb_files X resource files for olwm/XView 3.2
+
+The unpacked source is ~20meg
+You'll need an additional 18meg to do a complete build. (assuming shared libs)
+To install everything, you'll need about 8.5meg.
+
+
+Building the Release
+--------------------
+This release of XView was tested on these systems:
+ SparcStation 10, SunOS 5.2
+ SparcStation 2, SunOS 5.2
+ SparcStation 1, SunOS 4.1.2
+
+Like X11, XView uses imake to configure the Makefiles for a particular
+system. The Makefiles delivered with this release are probably not
+configured correctly for your system. New Makefiles will need
+to be generated from the Imakefiles. In order to do this,
+the following items are required:
+
+ 1. Installed X11 R5
+
+ a. X11 header files.
+ b. X11 libraries.
+ c. X11 config directory.
+
+ 2. If you set XvI18nLevel to 4 in config/XView.cf, Asian locale
+ support will be built in XView, and olwm. In this case, for
+ olwm to work properly, the Xlib library (libX11) has to be
+ built with internationalization support. If this cannot be
+ done, config/XView.tmpl will have to be edited for the clients/olwm
+ build as follows. Change the line:
+
+ XVCLIENTI18NDEFINES = -DOW_I18N_L4 -DOW_I18N_L3 -DOW_I18N -DFULL_R5
+
+ to
+
+ XVCLIENTI18NDEFINES = -DOW_I18N_L3 -DOW_I18N -DFULL_R5
+
+ 3. Compiled versions of imake and makedepend must be found
+ in your $PATH. If you are building the fonts you'll
+ need the X11 font compilers in your path too. The fonts
+ are only needed if you are building for a Pre-R4 server.
+
+
+Assuming R5 is installed in /foobar/R5, the X11 config directory is
+in /foobar/R5/lib/X11, and compiled versions of imake and makedepend
+should be found in /foobar/R5/bin.
+
+The XView release provides an additional set of rules and configuration
+parameters that are necessary to build the release. These can be
+found in ./config. Most notably is ./config/XView.cf which contains
+XView specific build options. This file should be read before a build
+is attempted. XView.cf, by default, is designed for building XView 3.2
+on Solaris 2.2.
+
+################
+NOTE (IMPORTANT)
+################
+The default configuration will build XView with Asian locale support
+(turned on by -DOW_I18N). This requires the presence of Sun private
+header files (i.e. XSunExt.h) available only with Solaris 2.2. It is
+included by the build via "-I$(OPENWINHOME)/include".
+Therefore, the default configuration requires Solaris 2.2 to be
+installed. If it is not installed, Asian locale support has to be turned
+off by setting XvI18nLevel (in config/XView.cf) to 3. This has to be done
+for builds done on SunOS 4.x as well.
+
+In the source release of XView 3.0, we used 'xstr' in shared library
+builds. 'xstr' was used to extract string literals from the source which
+was then put into an array which was indexed into instead of using the
+string literal directly. We have removed this functionality for this
+release. Most compilers already have options (-strconst, -xstrconst)
+to insert string literals into the text segment instead of the data
+segment. Building without xstr is also much faster.
+
+But, if your builds fail with:
+
+ "GLOBAL_OFFSET_TABLE overflown"
+
+then, you should revert back to the old way of doing things, with 'xstr'.
+This can be done as follows (in the config directory):
+
+ a. mv XView.rules XView.rules.bak
+ b. cp XView.rules.xstr XView.rules
+
+
+Here is what you need to do to build:
+
+ 1. Set the environment variable IMAKEINCLUDE to point to both the
+ R5 config directory and the XView config directory.
+ Examples, first one for csh, second for sh:
+
+ % setenv IMAKEINCLUDE -I`pwd`/config -I/foobar/R5/lib/X11/config
+ or
+ $ IMAKEINCLUDE="-I`pwd`/config -I/foobar/R5/lib/X11/config"
+ $ export IMAKEINCLUDE
+
+ 2. Set the OSMajorVersion and OSMinorVersion variables in the
+ appropriate <X11>/config/*.cf files.
+
+ 3. Double-check the parameters in <X11>/config/site.def.
+
+ 4. Double-check the build options in ./config/XView.cf.
+ There are comments in this file to explain what each option
+ is for. Among other things, this is where you can define where you
+ want XView to be installed.
+
+ 5. Type "imake -DUseInstalled -I<X11>/lib/X11/config -I./config"
+ Type make World >& make.world &"
+ (do not name the log file make.log or it will get deleted).
+ This will build libxview and libolgx.
+
+ 6. Check the log file for any errors. The release should build
+ without any problems on sun4 with SunOS 4.x and sun4 with
+ SunOS 5.x.
+
+ 7. As root, type "make install". See tail end of log file for
+ special directions for shared libraries, if used.
+
+ 8. Type "make Clients >& make.clients &"
+ This will cause the programs in ./clients to be built.
+
+ 9. Type "make Contrib >& make.contrib &"
+ This will cause the examples in ./contrib to be built.
+
+ 10. Type "make 'SUBDIRS=clients contrib' install"
+
+ 11. Type "make 'SUBDIRS=clients contrib' install.man"
+
+ 12. Type "make 'SUBDIRS=clients contrib' install.srcs"
+
+ 13. Documents, release notes, known bugs are in the doc directory.
+ Can install these with "make -k 'SUBDIRS=doc' install".
+
+ 14. When done, can get rid of all compiled files and links used
+ during the build with: "make Clean"
+
+Building a lint library is not yet supported.
+
+Source Notes
+------------
+This version of the XView source corresponds to that provided with
+OpenWindows Version 3.2 from SunSoft Inc. Libraries generated with this
+source should be interchangeable with those from the OpenWindows Version 3.2
+release.
+
+
+Porting Notes
+-------------
+This release of XView has been tested extensively on two Sun
+platforms, a SunOS 4.1.2 system and a SunOS 5.2 system. X11R5 was
+build for the SunOS 5.2 system using the base MIT X11R5 source and
+the R5.SunOS5.patch in the contrib directory on export.lcs.mit.edu.
+While efforts have been made to keep the toolkit portable to other
+platforms, you may encounter problems. Please inform us of the
+porting problems you find. Send email to xviewbugs@Eng.Sun.COM
+and we will attempt to evaluate the problem and possibly include
+a fix in a future patch or release.
+
+
+Build Environment Notes
+-----------------------
+The style of the build environment has been outlined by the X.V11 Release 5
+build environment from MIT. "Outlined" is used instead of "defined" since
+there is no standard procedure for X software builds. The precedent is set
+by the X Consortium for certain procedures and conventions; however, since
+these conventions are neither reviewed nor documented, they cannot always
+be followed. As much as possible, the conventions used in the X11R5 build
+have been followed in the XView build.
+
+If you've not used imake before, there is a document which explains how
+it works in doc/config/usenixws. The easiest way to think of it is creating a
+Makefile description language with CPP macros. The order in which files
+are included will define which CPP rules and variables are active.
+
+The configuration files specific to XView all begin with "XView."
+The "XView.cf" file is one meant to easily choose certain build or
+configuration options. The "XView.tmpl" file defines common configurations
+for XView and is included by each Imakefile. All relevant variables
+defined in the XView.tmpl file may be changed in the site.def file by
+pre-defining the appropriate CPP variable. Both files are heavily
+commented to explain what each option does. The other files, "XView.lib",
+"XView.obj", and "XView.prog" are just a means of sharing common Imakefile
+commands among many Imakefiles. The "XView.rules" file supplements the
+"Imake.rules" file as supplied by X11R5.
+
+
+Feedback
+--------
+While the XView team makes every effort to watch the ``net'' for questions
+and problems with XView some messages may slip by. The xviewbugs@Eng.Sun.COM
+alias has been created to provide a means for XView source product customers
+to send input to the XView engineers. If you find problems or have
+comments on XView, please forwarded them to this alias. We appreciate
+any and all input.
diff --git a/x11-toolkits/xview/pkg-plist b/x11-toolkits/xview/pkg-plist
new file mode 100644
index 000000000000..890079ea0beb
--- /dev/null
+++ b/x11-toolkits/xview/pkg-plist
@@ -0,0 +1,6 @@
+@cwd /usr/X11R6
+lib/X11/config/XView.cf
+lib/X11/config/XView.lib
+lib/X11/config/XView.obj
+lib/X11/config/XView.rules
+lib/X11/config/XView.tmpl