Bug 502795 - Review Request: mcu8051ide - IDE for MCS-51 based microcontrollers
Review Request: mcu8051ide - IDE for MCS-51 based microcontrollers
Product: Fedora
Classification: Fedora
Component: Package Review (Show other bugs)
All Linux
low Severity medium
: ---
: ---
Assigned To: Chitlesh GOORAH
Fedora Extras Quality Assurance
Depends On:
  Show dependency treegraph
Reported: 2009-05-27 05:06 EDT by Shakthi Kannan
Modified: 2009-08-03 22:28 EDT (History)
4 users (show)

See Also:
Fixed In Version: 1.1-4.el5
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2009-07-16 03:13:41 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---
chitlesh: fedora‑review+
tibbs: fedora‑cvs+

Attachments (Terms of Use)
mcu8051 cvs commit log (15.69 KB, application/octet-stream)
2009-06-19 01:45 EDT, Shakthi Kannan
no flags Details

  None (edit)
Description Shakthi Kannan 2009-05-27 05:06:34 EDT
Spec URL: http://shakthimaan.fedorapeople.org/SPECS/mcu8051ide.spec

SRPM URL: http://shakthimaan.fedorapeople.org/SRPMS/mcu8051ide-1.1-2.fc10.src.rpm

Description: Integrated Development Enviroment for some MCS-51 based microcontrollers (e.g. AT89S8253). Supported languages are assembly and C.

First package! Need sponsor!
Comment 1 Chitlesh GOORAH 2009-05-27 05:35:36 EDT
Package Review was started on :

and now continuing here.
Comment 2 Chitlesh GOORAH 2009-05-27 06:25:23 EDT
#01: This is a no-arch application. 
BuildArch:      noarch
to the spec file

#02: rpmlint on SRPM

rpmlint package helps to qualify a SRPM or a RPM. It should be applied to every RPM produced by the spec file. Errors and warnings should be corrected.

A common fix list of errors and warnings is listed on :

rpmlint /home/chitlesh/rpmbuild/SRPMS/mcu8051ide-1.1-2.fc10.src.rpm
mcu8051ide.src: E: description-line-too-long Integrated Development Enviroment for some MCS-51 based microcontrollers (e.g. AT89S8253). Supported languages are assembly and C.
1 packages and 0 specfiles checked; 1 errors, 0 warnings

Break it into several lines.

#03: Keeping timestamps
Can you patch the install.sh file so that during cp timestamps are preserved.

cp --> cp -p

There are some typos in the install.sh files as well : 
example: successuful, Unistallation

Then send the patch to upstream.

#04: rpmlint on the RPM

Here there are several errors and warnings. In most cases the fix should be in the %prep stage.

# rpmlint : hidden-file-or-dir, backup-file-in-package and zero-length
rm lib/.tex*
rm lib/.html

in %install
# rpmlint : non-executable-script
chmod 0755 %{buildroot}%{_datadir}/%{name}/lib/*.tcl

Tip: To check the permissions of the files of a RPM without installing the rpm

$ rpm -qvlp /home/chitlesh/rpmbuild/RPMS/noarch/mcu8051ide-1.1-2.fc10.noarch.rpm
Comment 3 Chitlesh GOORAH 2009-05-27 06:34:49 EDT
#05: dedundant BRs:
- tk-devel already requires tcl-devel,

Actually do we need BRs "tcl-devel, tk-devel, tkimg, itcl, tdom, tcllib, bwidget, rxvt-unicode" here as the rpmbuild is simply a copy process?
Comment 4 Shakthi Kannan 2009-05-27 09:43:41 EDT
#01 - Done
#02 - Done
#03 - Done
#04 - Done. But, I get:

  $ rpmlint ../RPMS/noarch/mcu8051ide-1.1-3.fc10.noarch.rpm 
  mcu8051ide.noarch: E: explicit-lib-dependency tcllib

tcllib is required runtime, so I have to explicitly specify it.

#05 The configure script calls cmake, and does BR library checks. So, it is required.

=== configure OUTPUT ===

$ ./configure 
-- The C compiler identification is GNU
-- The CXX compiler identification is GNU
-- Check for working C compiler: /usr/bin/gcc
-- Check for working C compiler: /usr/bin/gcc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
Check for Tcl Interpreter
-- Found Tclsh: /usr/bin/tclsh
-- Found TCL: /usr/lib/libtcl.so
-- Found TCLTK: /usr/lib/libtcl.so
-- Found TK: /usr/lib/libtk.so
Check for BWidget
Check for Itcl
Check for Tcl
Check for md5
Check for Tk
Check for img::png
Check for tdom
-- Configuring done
-- Generating done

=== END ===

Please take .spec release 3:
Comment 5 Peter Lemenkov 2009-05-27 12:29:41 EDT
I'm just curious - why it requires rxvt-unicode for both building and working?
Comment 6 Shakthi Kannan 2009-05-28 00:01:33 EDT
(In reply to comment #5)
| I'm just curious - why it requires rxvt-unicode for both building and working?  

The upstream README mentions the same as an optional package:

"OPTIONAL PACKAGES: (Without these packages some features will not be avaliable)"
Comment 7 Shakthi Kannan 2009-05-28 06:52:41 EDT
I tried sending an e-mail to the author, but the gmail.cz address doesn't seem to exist. I got a mail daemon error.

Also, in lib/terminal.tcl and lib/editor.tcl, the AUTHOR is invoking urxvt.
Comment 8 Chitlesh GOORAH 2009-06-06 14:00:22 EDT

In order for me to sponsor you, please apply for the "packager" group on
Comment 9 Chitlesh GOORAH 2009-06-06 14:44:12 EDT
There is a missing:  Requires: sdcc

Tip(not obliged, _makes_it_sexy_) : try to separate fedora related content and content that can be pushed to upstream by 2 empty lines above and 2 empty lines below. Sometimes it is also useful for packages of other distribution to pull some lines from your spec file :)

scratch built was successful:

Update the package, for final review.
Comment 10 Shakthi Kannan 2009-06-09 00:51:43 EDT
#8 Became member of Packager group.

#9 Added Requires:sdcc -- DONE!

Take release 4:

Koji build is successful at:
Comment 11 Chitlesh GOORAH 2009-06-09 03:54:59 EDT
- MUST: The package is named according to the Package Naming Guidelines.
- MUST: The spec file name matches the base package %{name}
- MUST: The package meets the Packaging Guidelines.
- MUST: The package is licensed (GPL) with an open-source compatible license
and meet other legal requirements as defined in the legal section of Packaging
- MUST: The License field in the package spec file matches the actual license.
- MUST: the source package includes the text of the license(s) in its own file,
then that file, containing the text of the license(s) for the package is
included in %doc.
- MUST: The spec file must be written in American English.
- MUST: The spec file for the package is be legible. 
- MUST: The sources used to build the package must matches the upstream source,
as provided in the spec URL.
- MUST: The package successfully compiles and builds into binary rpms on at
least i386.
- MUST: All build dependencies is listed in BuildRequires.
- MUST: The spec file handles locales properly.
- MUST: If the package does not contain shared library files located in the
dynamic linker's default paths
- MUST: the package is not designed to be relocatable
- MUST: the package owns all directories that it creates.
- MUST: the package does not contain any duplicate files in the %files listing.
- MUST: Permissions on files are set properly.
- MUST: The package has a %clean section, which contains rm -rf %{buildroot}
- MUST: The package consistently uses macros, as described in the macros
of Packaging Guidelines.
- MUST: The package contains code, or permissable content. This is described in
detail in the code vs. content section of Packaging Guidelines.
- MUST: There are no Large documentation files
- MUST: %doc does not affect the runtime of the application. To summarize: If
it is in %doc, the program must run properly if it is not present.
- MUST: There are no Header files or static libraries 
- MUST: The package does not contain library files with a suffix 
- MUST: Package does NOT contain any .la libtool archives
- MUST: Package containing GUI applications includes a %{name}.desktop file,
that file must be properly installed with desktop-file-install in the %install
- MUST: Package does not own files or directories already owned by other


 - SHOULD: The source package does include license text(s) as LICENSE
 - SHOULD: mock builds succcessfully in i386.
 - SHOULD: The reviewer tested that the package functions as described. A
package should not segfault instead of running, for example.
 - SHOULD: No scriptlets were used, those scriptlets must be sane. 
 - SHOULD: No subpackages present.

Comment 12 Chitlesh GOORAH 2009-06-11 05:15:57 EDT
Ping ? can you request a CVS request ?

as mentioned in https://fedorahosted.org/fedora-electronic-lab/ticket/19
Comment 13 Shakthi Kannan 2009-06-11 08:02:13 EDT
New Package CVS Request
Package Name: mcu8051ide
Short Description: IDE for MCS-51 based microcontrollers
Owners: shakthimaan chitlesh
Branches: F-10 F-11 EL-5
Comment 14 Jason Tibbitts 2009-06-11 13:04:37 EDT
CVS done.
Comment 15 Chitlesh GOORAH 2009-06-13 15:50:13 EDT
Shakthi, is there any reason why you haven't build the package ? the srpm hasn't yet being committed for any  branch.
Comment 16 Shakthi Kannan 2009-06-15 04:01:53 EDT
No Internet connectivity for the system that I have my Fedora certificate and ssh key with, for the past few days. Will do so by this coming weekend.
Comment 17 Shakthi Kannan 2009-06-19 01:44:31 EDT
Added mcu8051ide to FC-10, FC-11 and EL-5. Check attached log.
Comment 18 Shakthi Kannan 2009-06-19 01:45:39 EDT
Created attachment 348604 [details]
mcu8051 cvs commit log
Comment 19 Chitlesh GOORAH 2009-06-19 03:12:04 EDT
The commit logs are also sent to cvsextras_@_fedoraproje_t.org
Comment 20 Chitlesh GOORAH 2009-07-05 07:50:27 EDT
Shakthi, this is NOT serious. You have not yet build the package on the build system. It is already 2 weeks since you committed.


Is there any blocker I am not aware of ?
Comment 21 Shakthi Kannan 2009-07-06 01:03:46 EDT
I didn't know I had to build the package. Till which part should I do from here:

Should I enter into each directory (devel, EL-5, F-10, F-11) and do the following?:

  cvs up
  make tag
  make build

No wonder, my documentation stopped at this:
Comment 22 Shakthi Kannan 2009-07-06 01:54:00 EDT
Ok, I have built it under devel/ (it also built for EL-5), FC-10, FC-11. Just had to use 'make build' since this is the first build.

Updated my documentation revision 1.2:
Comment 23 Chitlesh GOORAH 2009-07-06 04:26:59 EDT
Once the package has been approved and cvs access is granted (this also applies for the eventual updates of the package),

- commit the SRPM
- build the package
- send the package to the respective repos

Now that you have built the package, you will need to send it to the repositories


Don't forget to add the bugzilla number of this package review in the "Bugs" section of the above url.

This will automatically, update the status of this package review.

The fedora packaging guidelines (which is being used even by OpenSuse) is a set of guidelines that are constantly reviewed by FESCo. Sometimes new guidelines are added, please stay tuned on the fedora devel mailing list.
Comment 24 Fedora Update System 2009-07-09 03:53:03 EDT
mcu8051ide-1.1-4.fc10 has been submitted as an update for Fedora 10.
Comment 25 Fedora Update System 2009-07-09 03:53:09 EDT
mcu8051ide-1.1-4.el5 has been submitted as an update for Fedora EPEL 5.
Comment 26 Fedora Update System 2009-07-09 03:53:15 EDT
mcu8051ide-1.1-4.fc11 has been submitted as an update for Fedora 11.
Comment 27 Fedora Update System 2009-07-09 21:54:35 EDT
mcu8051ide-1.1-4.el5 has been pushed to the Fedora EPEL 5 testing repository.  If problems still persist, please make note of it in this bug report.
 If you want to test the update, you can install it with 
 su -c 'yum --enablerepo=updates-testing update mcu8051ide'.  You can provide feedback for this update here: http://admin.fedoraproject.org/updates/EL-5/FEDORA-EPEL-2009-0040
Comment 28 Fedora Update System 2009-07-16 03:13:35 EDT
mcu8051ide-1.1-4.fc11 has been pushed to the Fedora 11 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 29 Fedora Update System 2009-07-16 03:18:51 EDT
mcu8051ide-1.1-4.fc10 has been pushed to the Fedora 10 stable repository.  If problems still persist, please make note of it in this bug report.
Comment 30 Fedora Update System 2009-08-03 22:28:07 EDT
mcu8051ide-1.1-4.el5 has been pushed to the Fedora EPEL 5 stable repository.  If problems still persist, please make note of it in this bug report.

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