Bug 182084

Summary: CCMode info documentation missing.
Product: [Fedora] Fedora Reporter: Sam Peterson <peabodyenator>
Component: emacsAssignee: Jens Petersen <petersen>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: medium    
Version: 4CC: imc
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: 21.4-14 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-03-28 03:59:14 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Sam Peterson 2006-02-20 10:49:26 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20060202 Fedora/1.0.7-1.2.fc4 Firefox/1.0.7

Description of problem:
The CCMode Info documentation is not available in any emacs package I could find.  The CCMODE Info manual is an indespensible piece of documentation to the Emacs editor.  I've always seen the documentation distributed with working copies of the editor.  It'd be nice if this was added.

Version-Release number of selected component (if applicable):
emacs-common-21.4-5

How reproducible:
Always

Steps to Reproduce:
Completely missing component, no steps necessary.

Additional info:

Comment 1 Sam Peterson 2006-02-27 05:32:10 UTC
I have downloaded the SRPM package and have found the culprit.  The spec file
does indeed properly install CC-mode 5.30.9 and it tries to install the
documentation for it.  However, a change needs to be made to the Makefile.in in
the topmost directory for the emacs installation procedure to properly install
it.  Here's the relevant patch:

file cc-mode-doc.patch
------------------------------ cut here --------------------------------

diff -Naur emacs-21.4.orig/Makefile.in emacs-21.4/Makefile.in
--- emacs-21.4.orig/Makefile.in	2002-10-18 18:21:01.000000000 -0700
+++ emacs-21.4/Makefile.in	2006-02-26 19:25:11.000000000 -0800
@@ -430,7 +430,7 @@
 	      chmod a+r ${infodir}/dir); \
 	   fi; \
 	   cd ${srcdir}/info ; \
-	   for f in ada-mode* autotype* ccmode* cl* dired-x* ebrowse* ediff* efaq*
emacs* eshell* eudc* forms* gnus* idlwave* info* message* mh-e* pcl-cvs* reftex*
sc* speedbar* vip* widget* woman*; do \
+	   for f in ada-mode* autotype* cc-mode* cl* dired-x* ebrowse* ediff* efaq*
emacs* eshell* eudc* forms* gnus* idlwave* info* message* mh-e* pcl-cvs* reftex*
sc* speedbar* vip* widget* woman*; do \
 	     (cd $${thisdir}; \
 	      ${INSTALL_DATA} ${srcdir}/info/$$f ${infodir}/$$f; \
 	      chmod a+r ${infodir}/$$f); \
@@ -440,7 +440,7 @@
 	thisdir=`/bin/pwd`; \
 	if [ `(cd ${srcdir}/info && /bin/pwd)` != `(cd ${infodir} && /bin/pwd)` ]; \
 	then \
-	  for f in ada-mode autotype ccmode cl dired-x ebrowse ediff efaq emacs
emacs-mime eshell eudc forms gnus idlwave info message mh-e pcl-cvs reftex sc
speedbar vip viper widget woman; do \
+	  for f in ada-mode autotype cc-mode cl dired-x ebrowse ediff efaq emacs
emacs-mime eshell eudc forms gnus idlwave info message mh-e pcl-cvs reftex sc
speedbar vip viper widget woman; do \
 	    (cd $${thisdir}; \
 	     ${INSTALL_INFO} --info-dir=${infodir} ${infodir}/$$f); \
 	  done; \
@@ -506,7 +506,7 @@
 	done
 	(cd ${archlibdir} && rm -f fns-*)
 	-rm -rf ${libexecdir}/emacs/${version}
-	(cd ${infodir} && rm -f cl* ada-mode* autotype* ccmode* ebrowse* efaq* eshell*
eudc* idlwave* message* pcl-cvs* reftex* speedbar* widget* woman* dired-x*
ediff* emacs* forms* gnus* info* mh-e* sc* vip*)
+	(cd ${infodir} && rm -f cl* ada-mode* autotype* ccmode* cc-mode* ebrowse*
efaq* eshell* eudc* idlwave* message* pcl-cvs* reftex* speedbar* widget* woman*
dired-x* ediff* emacs* forms* gnus* info* mh-e* sc* vip*)
 	(cd ${man1dir}  && rm -f emacs.1 etags.1 ctags.1)
 	(cd ${bindir}  && rm -f emacs-${version} $(EMACS))

------------------------------ cut here --------------------------------

I have also patched the source file for the spec rpm:

file emacs-spec.patch
------------------------------ cut here --------------------------------

diff -u emacs.spec.orig emacs.spec
--- emacs.spec.orig	2005-05-18 00:13:30.000000000 -0700
+++ emacs.spec	2006-02-26 18:55:30.000000000 -0800
@@ -88,6 +88,9 @@
 Patch121: python-completion-ignored-extensions.dpatch
 Patch122: save-buffer.dpatch
 
+# patch Makefile.in to work with new CC-mode documentation
+Patch29: cc-mode-doc.patch
+
 %description
 Emacs is a powerful, customizable, self-documenting, modeless text
 editor. Emacs contains special code editing features, a scripting
@@ -176,6 +179,7 @@
 # workaround #101818 (vm/break dumper problem)
 %patch28 -p1 -b .28-execshield
 %endif
+%patch29 -p1 -b .29-cc-mode-doc
 
 # patches 2 and 3 touch configure.in
 autoconf-2.13
@@ -225,7 +229,7 @@
 # SETARCH needed for setarch patch on i386 (#101818)
 %__make %{?_smp_mflags} \
 %ifarch %{ix86}
-  SETARCH="setarch i386"
+  SETARCH="setarch i386 -R"
 %endif
 
 # remove versioned file so that we end up with .1 suffix and only one DOC file
@@ -251,14 +255,14 @@
 rm info/ccmode*
 ( cd cc-mode-%{cc_mode_ver}
   makeinfo cc-mode.texi
-  cp -p cc-mode.info* ../info )
+  cp -p cc-mode.info* ../info/cc-mode )
 
 %install
 rm -rf $RPM_BUILD_ROOT
 
 %makeinstall \
 %ifarch %{ix86}
-  SETARCH="setarch i386"
+  SETARCH="setarch i386 -R"
 %endif
 
 # suffix binaries with -x
@@ -272,7 +276,7 @@
 %configure --without-x
 %__make %{?_smp_mflags} \
 %ifarch %{ix86}
-  SETARCH="setarch i386"
+  SETARCH="setarch i386 -R"
 %endif
 
 # install the emacs without X

------------------------------ cut here --------------------------------


Comment 2 Jens Petersen 2006-02-27 13:44:26 UTC
Thanks, should be fixed in 21.4-13.

BTW does the -R option to setarch help with building on i386 (bug 174736)?

Comment 3 Sam Peterson 2006-02-28 03:11:51 UTC
It sure does (at least for me anyway, it was finally the silver bullet that got
the dump to work).  I can't believe I forgot to mention that :), went through
hell getting it to build, took me all weekend.

Comment 4 Jens Petersen 2006-03-02 05:22:24 UTC
*** Bug 183501 has been marked as a duplicate of this bug. ***

Comment 5 Jens Petersen 2006-03-06 02:14:46 UTC
Sam, have you tried building Emacs say with FC5Test3 on i386?
According feedback in bug 174736 the "-R" doesn't help.
Let me add you to the cc of that bug.

Comment 6 Aaron S. Hawley 2007-10-25 19:02:22 UTC
I thought this bug was still outstanding in Fedora core 6, but the update to the
package doesn't fix it because the attempt to change the info file from
"cc-mode" to "ccmode" looks like it fails.

I tried it myself:

$ install-info /usr/share/info/ccmode.gz
               /usr/share/info/dir --section="GNU Emacs"
install-info: menu item `CC Mode' already exists, for file `cc-mode'

I fixed it with these two commands:

$ install-info --delete /usr/share/info/cc-mode.gz
               /usr/share/info/dir --section="GNU Emacs"

$ install-info /usr/share/info/ccmode.gz
               /usr/share/info/dir --section="GNU Emacs"

Notice the use of "cc-mode.gz" (even though it doesn't exist) and "--delete" in
the first command.

Was the opportunity lost to make the fix in the RPM?  I'm not sure why the
SPEC's uninstall script shouldn't have worked.

Thanks for Fedora,


Comment 7 Jens Petersen 2007-10-26 00:24:52 UTC
If you think there is still a problem feel free to reopen this bug.

BTW F7 and later have emacs 22 which has a newer version of cc-mode included
I believe.

Comment 8 Aaron S. Hawley 2007-10-30 19:22:54 UTC
Thanks for the response.  I can't narrow down exactly how the bug occurred.  I
am using Fedora core 6, was using Emacs 21, switched to an RPM that installed a
pretest versino of Emacs 22, and now I use the official Emacs 22 version from
Fedora.  Only until last week did I try opening the CC Mode manual in Emacs. 
Since I can't even narrow down when and where this problem arose from, I won't
open this or a new bug.