Note: This is a public test instance of Red Hat Bugzilla. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback at bugzilla.redhat.com.
Bug 195420 - Review Request: clips - Tools for developing expert systems
Summary: Review Request: clips - Tools for developing expert systems
Keywords:
Status: CLOSED NEXTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: Package Review
Version: rawhide
Hardware: All
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Gérard Milmeister
QA Contact: Fedora Package Reviews List
URL:
Whiteboard:
: 195421 (view as bug list)
Depends On:
Blocks: FE-ACCEPT
TreeView+ depends on / blocked
 
Reported: 2006-06-15 04:40 UTC by Rick L Vinyard Jr
Modified: 2009-02-27 00:04 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2006-07-01 03:29:52 UTC
Type: ---
Embargoed:
kevin: fedora-cvs+


Attachments (Terms of Use)

Description Rick L Vinyard Jr 2006-06-15 04:40:23 UTC
Spec URL: http://miskatonic.cs.nmsu.edu/pub/clips.spec
SRPM URL: http://miskatonic.cs.nmsu.edu/pub/fedora/5/srpms/clips-6.23-1.src.rpm

Description: 

CLIPS is a productive development and delivery expert system tool which provides a complete environment for the construction of rule and/or object based expert systems. Created in 1985 by NASA, CLIPS is now widely used throughout the government, industry, and academia.

The public domain release of CLIPS by NASA contains code to create the clips
command line interpreter and xclips, an X11 CLIPS gui.

This package contains a patch for Linux released under the GPLv2 that does the following:
 - Adds autotool support to build libclips as a libtool library. This library can be used to build embedded CLIPS applications.

 - Builds clips and xclips as applications linked against libclips rather than statically including the clips code

 - Installs the proper clips headers for developing embedded CLIPS applications under /usr/include/clips-6.23

 - Clean up some minor code points that prevented 6.23 from compiling under Linux

Since the original code was released into the public domain, and I have released the Linux patch under GPLv2 I have set the License tag as GPL.

Comment 1 Jason Tibbitts 2006-06-15 13:25:23 UTC
*** Bug 195421 has been marked as a duplicate of this bug. ***

Comment 2 Gérard Milmeister 2006-06-15 17:03:00 UTC
Missing BuildReq: libXt-devel, libXaw-devel, maybe others
This is on FC5, on FC6 these may possibly be sucked in xorg-x11-proto-devel.



Comment 3 John Mahowald 2006-06-15 17:45:12 UTC
"Others" includes libXext-devel and libXmu-devel.

Built against devel, probably not going to avoid these.

Comment 4 Rick L Vinyard Jr 2006-06-16 04:17:24 UTC
Thanks for the input... and I'm really glad to hear it built against devel.

Added libXt-devel, libXext-devel and libXmu-devel to BuildRequires (libXaw-devel
was already in there).

Here's the new files:
Spec URL: http://miskatonic.cs.nmsu.edu/pub/clips.spec
SRPM URL: http://miskatonic.cs.nmsu.edu/pub/fedora/5/srpms/clips-6.23-2.src.rpm


Comment 5 Gérard Milmeister 2006-06-16 07:27:03 UTC
Ok, builds fine now.

* rpmlint is silent on clips, clips-devel and clips-x11
  however on clips-debuginfo:
    E: clips-debuginfo script-without-shellbang
/usr/src/debug/clips-6.23/clipssrc/prntutil.c
    etc...
  simply chmod 0644 the sources files (in the %prep section for example)
* I used to bundle
  http://www.ghg.net/clips/download/executables/examples/AllExamples.tar.Z
  with the package. I think this would be helpful.
* xclips should have a .desktop file

Comment 6 Gérard Milmeister 2006-06-16 07:31:48 UTC
(In reply to comment #5)
> * xclips should have a .desktop file
Ok, sorry, I didn't see it.



Comment 7 Gérard Milmeister 2006-06-16 07:34:35 UTC
* Problem:
         CLIPS (V6.23 01/31/05)
CLIPS> (help)
Loading help file entries from /usr/share/clips/clips.hlp.
Please wait...
[TEXTPRO1] Could not open file "/usr/share/clips/clips.hlp".
CLIPS>

same with xclips

* I would use XCLIPS instead of xclips as the name in the .desktop file

Comment 8 Gérard Milmeister 2006-06-16 07:41:31 UTC
* Doesn't bpg.pdf properly belong to the main package?
  It doesn't contain anything about the C interface, AFAIK.
* Is it really necessary to use /usr/include/clips-6.23/clips
  instead of just /usr/include/clips. I don't see there is
  much chance of parallel install of different versions of
  clips-devel.

Comment 9 Rick L Vinyard Jr 2006-06-17 19:30:37 UTC
Looks like there's a new 6.24 release of CLIPS. Here's a new spec and srpm for 
the new release that incorporates Gérard's feedback and adds the XCLIPS color 
utility built as xclips-color.

Spec URL: http://miskatonic.cs.nmsu.edu/pub/clips.spec
SRPM URL: http://miskatonic.cs.nmsu.edu/pub/fedora/5/srpms/clips-6.24-1.src.rpm

Here's the changes:
- New release 6.24
- Changed desktop entry name from xclips to XCLIPS
- New autotools struture builds clips and xclips in separate directories
- Moved bpg.pdf to clips main package
- Added examples from AllExamples.tar.Z
- Moved clips.hlp to clips main package
- Remove xclips.desktop source and moved it into autotools patch
- Added build for xclips color utility as xclips-color
- Devel headers now install /usr/include/clips
- Autotools patch adds defines to find clips.hlp properly

Comment 10 Gérard Milmeister 2006-06-17 20:11:49 UTC
A few issues
* you can now change
  "Cflags: -I${includedir}/clips-6.24"
  to
  "Cflags: -I${includedir}"
* "(help)" does not yet work. It seems that it tries to open
  "/usr/share/doc/clips-6.24" instead of "/usr/share/doc/clips-6.24/clisp.hlp"
* I know it is annoying, but clisp.hlp must go to /usr/share/clisp/clisp.hlp,
  since it is part of the correct functioning of the program. Remember that
  a package can be installed without the docs.

Comment 11 Rick L Vinyard Jr 2006-06-17 21:48:22 UTC
> * you can now change
>   "Cflags: -I${includedir}/clips-6.24"
>   to
>   "Cflags: -I${includedir}"

Ahh... missed that one.

As for the help file, I was testing directory expansion in autoconf and missed 
putting clips.hlp on the end of the string. I put handling of the location of 
clips.hlp into configure.in, and used the clips standard file usrsetup.h to 
define the autoconf location. That way autoconf can move the help file around 
and still handle it in a way that the clips source likes.

These files have a proper pkgconfig entry as well as the fixed help file define.

Spec URL: http://miskatonic.cs.nmsu.edu/pub/clips.spec
SRPM URL: http://miskatonic.cs.nmsu.edu/pub/fedora/5/srpms/clips-6.24-2.src.rpm


Comment 12 Rick L Vinyard Jr 2006-06-17 23:45:54 UTC
Missed this part too.

> Remember that a package can be installed without the docs

This one has a little more proper patch that includes the clips.hlp file as well 
as treating the clips.hlp file as data rather than docs.

Spec URL: http://miskatonic.cs.nmsu.edu/pub/clips.spec
SRPM URL: http://miskatonic.cs.nmsu.edu/pub/fedora/5/srpms/clips-6.24-3.src.rpm


Comment 13 Gérard Milmeister 2006-06-18 08:43:21 UTC
A few things:
* /usr/share/applications/fedora-xclips.desktop and 
  /usr/share/pixmaps/clips.png belong to clips-x11
* again, /usr/share/clips-6.24/clips.hlp doesn't need the version,
  furthermore /usr/share/clips must be owned by the package

and some suggestions:
* you might consider creating a package clips-libs that only
  contains the shared libraries in /usr/lib. clips-devel must
  then require clips-libs and clips-x11 must require clips, all
  other dependencies are automatic
* maybe rename clips-x11 to clips-xclips

Comment 14 Gérard Milmeister 2006-06-18 13:35:28 UTC
BTW: here is a clips mode for Emacs you might want to include:
http://jdurand.web.cern.ch/jdurand

Comment 15 Rick L Vinyard Jr 2006-06-18 22:05:07 UTC
I'd been thinking about splitting off a libs package anyway (since that was what 
actually motivated me to package CLIPS).

Spec URL: http://miskatonic.cs.nmsu.edu/pub/clips.spec
SRPM URL: http://miskatonic.cs.nmsu.edu/pub/fedora/5/srpms/clips-6.24-5.src.rpm

Changes:
- Created libs subpackage
- Renamed x11 subpackage to xclips
- Changed install location of clips.hlp in autotools patch
- Renamed clips.png to xclips.png
- Moved xclips.desktop and xclips.png to xclips subpackage
- Modified autotools patch to build xclips.desktop to keep version tag current
- Changed xclips Requires from %%{name} to clips to be more explicit

As for the Emacs mode, I wasn't sure exactly how to handle it. I'm guessing that 
the two .el files get dropped into /usr/share/emacs/site-lisp/, but what about 
the emacs-clips file?


Comment 16 Gérard Milmeister 2006-06-19 10:00:15 UTC
I think, clips-libs should contain only the necessary files, i.e.,
the documentation should probably go to clips-docs (maybe then
ALL docs can go to clips-docs). clips-libs contains
/usr/share/clips/clips.hlp alright, since this is required by
the shared libraries.
BTW the spec file in the src rpm is not exactly the same as the one
you posted, the one contains %{_datadir}/%{name}/clips.hlp, the other
%{_datadir}/%{name}. The latter is the correct one, of course.

clips-xclips does not need to depend on clips anymore.

The emacs files got to %{_datadir}/emacs/site-lisp.
However you must set (defvar inferior-clips-program "clips" ...
in the inf-clips.el file.
Then you drop a file clips-init.el into %{_datadir}/emacs/site-lisp/site-start.d
with the following content:
(autoload 'clips-mode "clips-mode" "Clips editing mode." t)
(autoload 'run-clips "inf-clips" "Run Clips." t)
(add-to-list 'auto-mode-alist '("\\.clp$" . clips-mode))

Add the files to the clips package using %{_datadir}/emacs/site-lisp
in the %files section.


Comment 17 Rick L Vinyard Jr 2006-06-22 04:54:22 UTC
Yup. docs subpackage is much cleaner.

Thanks for the help on the emacs stuff.

Here's the new files:

Spec URL: http://miskatonic.dyn-o-saur.com/pub/clips.spec
SRPM URL: http://miskatonic.dyn-o-saur.com/pub/fedora/5/srpms/clips-6.24-
6.src.rpm

And the changelog:
- Created docs subpackage
- Moved all pdf docs and examples into docs subpackage
- Removed Requires clips from xclips
- Added emacs mode to clips package


Comment 18 Ville Skyttä 2006-06-22 06:32:22 UTC
Documentation subpackages should be named -doc, not -docs.

Comment 19 Rick L Vinyard Jr 2006-06-23 02:14:16 UTC
Here's the latest version.

Spec URL: http://miskatonic.cs.nmsu.edu/pub/clips.spec
SRPM URL: http://miskatonic.cs.nmsu.edu/pub/fedora/5/srpms/clips-6.24-7.src.rpm

Changes:
- Renamed docs subpackage to doc
- Changed pkgconfig .pc to use -L libdir -lclips in patch
- Added extern "C" and ifdef __cplusplus to clips.h in patch


Comment 20 Gérard Milmeister 2006-06-23 20:23:58 UTC
+ package meets naming and packaging guidelines
+ specfile is properly named, is cleanly written and uses macros consistently
+ dist tag is present
+ build root is correct
+ license field matches the actual license
+ license is open source-compatible
+ source files match upstream:
  ccba9d912375e57a1b7d9eba12da4198  clipssrc.tar.Z
+ latest version is being packaged.
+ BuildRequires are proper.
+ package builds in mock (i386).
+ rpmlint:
    W: clips no-documentation
    W: clips-devel no-dependency-on clips
    W: clips-devel no-documentation
    W: clips-xclips no-documentation
  these can be ignored.
+ shared libraries in clips-libs, ldconfig in %post and %postun
+ link libraries and include files in clips-devel
+ package is not relocatable.
+ owns the directories it creates
+ doesn't own any directories it shouldn't.
+ no duplicates in %files.
+ file permissions are appropriate.
+ %clean is present.
+ no scriptlets present.
+ docs are large, therefore -doc subpackage.
+ xclips is a GUI app, icon and .desktop file are included

this must be fixed:

? pkg-config clips-6 --libs results in:
    /usr/lib -L -lm -lclips
  replace "Libs: -lm -L ${libdir} -lclips"
  with "Libs: -lm -L${libdir} -lclips" (without the space)

APPROVED

Comment 21 Ralf Corsepius 2006-07-31 04:56:10 UTC
This package ships an autoheader generated header (/usr/include/clips/config.h).
This is an abuse of the autotools and will render this package unusable for any
package using autoconf-based configurations.

IMO, this package should not have been approved.



Comment 22 Rick L Vinyard Jr 2009-02-24 22:17:34 UTC
Package Change Request
======================
Package Name: clips
New Branches: EL-5
Owners: rvinyard.edu

Comment 23 Kevin Fenzi 2009-02-27 00:04:23 UTC
cvs done.


Note You need to log in before you can comment on or make changes to this bug.