Bug 538087
Summary: | Review Request: dgc - A system for the creation of digital circuits | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Shakthi Kannan <shakthimaan> |
Component: | Package Review | Assignee: | Chitlesh GOORAH <chitlesh> |
Status: | CLOSED ERRATA | QA Contact: | Fedora Extras Quality Assurance <extras-qa> |
Severity: | medium | Docs Contact: | |
Priority: | medium | ||
Version: | rawhide | CC: | chitlesh, fedora-package-review, notting |
Target Milestone: | --- | Flags: | chitlesh:
fedora-review+
kevin: fedora-cvs+ |
Target Release: | --- | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | 0.98-3.el5 | Doc Type: | Bug Fix |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2009-12-01 04:13:56 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
Shakthi Kannan
2009-11-17 15:44:26 UTC
#001: use the sourceforge url as URL #002: the build failed checking for ANSI C header files... (cached) yes checking for cos in -lm... yes checking for pkg-config... /usr/bin/pkg-config checking for xml2-config... /usr/bin/xml2-config configure: creating ./config.status config.status: creating Makefile config.status: creating replace/Makefile config.status: creating util/Makefile config.status: creating cube/Makefile config.status: creating encoding/Makefile config.status: creating syl/Makefile config.status: creating data/Makefile config.status: creating gnet/Makefile config.status: creating app/Makefile config.status: creating config.h config.status: executing depfiles commands ./config.status: line 1337: replace/Makefile: No such file or directory sed: can't read util/Makefile: No such file or directory sed: can't read cube/Makefile: No such file or directory sed: can't read encoding/Makefile: No such file or directory sed: can't read syl/Makefile: No such file or directory sed: can't read data/Makefile: No such file or directory sed: can't read gnet/Makefile: No such file or directory sed: can't read app/Makefile: No such file or directory config.status: executing libtool commands ./config.status: line 1435: libtoolT: No such file or directory ./config.status: line 1848: libtoolT: No such file or directory ./config.status: line 1853: libtoolT: No such file or directory ./config.status: line 2025: libtoolT: No such file or directory ./config.status: line 2050: libtoolT: No such file or directory mv: cannot stat `libtoolT': No such file or directory cp: cannot stat `libtoolT': No such file or directory chmod: cannot access `libtool': No such file or directory ./configure: line 14272: config.log: No such file or directory error: Bad exit status from /var/tmp/rpm-tmp.rHxLnd (%build) forget #002, sorry I miscopy-paste. By just launching "dgc" from the console, it crashes (reproduce-able everytime): Searchpath: . /home/chitlesh/.dgc *** glibc detected *** dgc: munmap_chunk(): invalid pointer: 0x08c025a0 *** ======= Backtrace: ========= /lib/libc.so.6(+0x6e261)[0x260261] dgc[0x80491f4] /lib/libc.so.6(__libc_start_main+0xe6)[0x208bb6] dgc[0x8048991] ======= Memory map: ======== 00110000-0018a000 r-xp 00000000 fd:00 125904 /usr/lib/libdgccube.so.0.0.0 0018a000-0018c000 rw-p 00079000 fd:00 125904 /usr/lib/libdgccube.so.0.0.0 0018c000-001c6000 rw-p 00000000 00:00 0 001c6000-001e1000 r-xp 00000000 fd:00 125912 /usr/lib/libdgcutil.so.0.0.0 001e1000-001e2000 rw-p 0001a000 fd:00 125912 /usr/lib/libdgcutil.so.0.0.0 001e2000-001f2000 rw-p 00000000 00:00 0 001f2000-00360000 r-xp 00000000 fd:00 57627 /lib/libc-2.11.so 00360000-00361000 ---p 0016e000 fd:00 57627 /lib/libc-2.11.so 00361000-00363000 r--p 0016e000 fd:00 57627 /lib/libc-2.11.so 00363000-00364000 rw-p 00170000 fd:00 57627 /lib/libc-2.11.so 00364000-00367000 rw-p 00000000 00:00 0 00367000-0036a000 r-xp 00000000 fd:00 57632 /lib/libdl-2.11.so 0036a000-0036b000 r--p 00002000 fd:00 57632 /lib/libdl-2.11.so 0036b000-0036c000 rw-p 00003000 fd:00 57632 /lib/libdl-2.11.so 00457000-00469000 r-xp 00000000 fd:00 59907 /lib/libz.so.1.2.3 00469000-0046a000 rw-p 00011000 fd:00 59907 /lib/libz.so.1.2.3 004f6000-00505000 r-xp 00000000 fd:00 125910 /usr/lib/libdgcsyl.so.0.0.0 00505000-00508000 rw-p 0000f000 fd:00 125910 /usr/lib/libdgcsyl.so.0.0.0 00508000-00516000 rw-p 00000000 00:00 0 006ca000-006d6000 r-xp 00000000 fd:00 125906 /usr/lib/libdgcencode.so.0.0.0 006d6000-006d7000 rw-p 0000c000 fd:00 125906 /usr/lib/libdgcencode.so.0.0.0 0071a000-0071b000 r-xp 00000000 00:00 0 [vdso] 00bd6000-00d1a000 r-xp 00000000 fd:00 59958 /usr/lib/libxml2.so.2.7.6 00d1a000-00d1f000 rw-p 00143000 fd:00 59958 /usr/lib/libxml2.so.2.7.6 00d1f000-00d20000 rw-p 00000000 00:00 0 00d25000-00d4d000 r-xp 00000000 fd:00 57634 /lib/libm-2.11.so 00d4d000-00d4e000 r--p 00027000 fd:00 57634 /lib/libm-2.11.so 00d4e000-00d4f000 rw-p 00028000 fd:00 57634 /lib/libm-2.11.so 00dc0000-00ddd000 r-xp 00000000 fd:00 8183 /lib/libgcc_s-4.4.2-20091027.so.1 00ddd000-00dde000 rw-p 0001c000 fd:00 8183 /lib/libgcc_s-4.4.2-20091027.so.1 00e81000-00ed3000 r-xp 00000000 fd:00 125908 /usr/lib/libdgcgnet.so.0.0.0 00ed3000-00ed6000 rw-p 00052000 fd:00 125908 /usr/lib/libdgcgnet.so.0.0.0 00fdb000-00ff9000 r-xp 00000000 fd:00 5264 /lib/ld-2.11.so 00ff9000-00ffa000 r--p 0001d000 fd:00 5264 /lib/ld-2.11.so 00ffa000-00ffb000 rw-p 0001e000 fd:00 5264 /lib/ld-2.11.so 08048000-0804b000 r-xp 00000000 fd:00 125897 /usr/bin/dgc 0804b000-0804f000 rw-p 00002000 fd:00 125897 /usr/bin/dgc 0804f000-0805f000 rw-p 00000000 00:00 0 08c02000-08c23000 rw-p 00000000 00:00 0 [heap] b779e000-b77a1000 rw-p 00000000 00:00 0 b77c3000-b77c6000 rw-p 00000000 00:00 0 bfd8e000-bfda4000 rw-p 00000000 00:00 0 [stack] Aborted (core dumped) #Comment 3: A bug :) In app/dgc.c main() function, there is: 319: char *s; 320: s = b_get_ff_searchpath(); 324: free (s); But, b_get_ff_searchpath() is invoked in util/b_ff.c, where memory is allocated for 's', and the pointer 's' is returned. So, trying to free() the memory in the calling function, dumps :) But, giving proper lib file and examples as input, doesn't enter this logic, and hence doesn't hit this error. You can copy the /usr/share/doc/dgc-0.98/tests/*.sh to any folder, chmod +x *.sh, and running them should run the test cases. I will update this, and make an updated release by EOD. --- (In reply to comment #4) | So, trying to free() the memory in | the calling function, dumps :) \-- To be more precise, util/b_ff.c includes "mwc.h" that redefines free() and that is the instance of free() that crashes. When you use the free() available from glibc, freeing of memory works. I will disable the b_get_ff_searchpath() in those dgc tools that use it, as it simply prints the search path, which is not required or used since we are packaging it. * Updated URL to use sourceforge.net project website. * dgc-0.98 will not print searchpath, as it is not required. Spec URL: http://shakthimaan.fedorapeople.org/SPECS/dgc.spec SRPM URL: http://shakthimaan.fedorapeople.org/SRPMS/dgc-0.98-2.fc11.src.rpm #001: Summary I think the summary should be "Digital Gate Compiler" which reflects the letters "dgc". #002: Incorrect Path In /usr/share/doc/dgc-0.98/tests/d_latch.dgd import "../data/ should be import "/usr/share/dgc/ #003: %doc ChangeLog and TODO is missing in the %doc. Actually, you don't need to create an extra doc directory for -devel. In that case, you will end up having 2 directory for docs and users are confused to where to search for docs. The package looks fine and for final review. #001: Summary updated #002: Fixed the path. #003: Added ChangeLog and moved TODO to base package. Ignoring rpmlint warning for -devel package on no documentation. Latest package, now from Fedora 12: SPEC: http://shakthimaan.fedorapeople.org/SPECS/dgc.spec SRPM: http://shakthimaan.fedorapeople.org/SRPMS/dgc-0.98-3.fc12.src.rpm - 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 Guidelines. - 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} (or $RPM_BUILD_ROOT). - MUST: The package consistently uses macros, as described in the macros section 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, and that file must be properly installed with desktop-file-install in the %install section. - MUST: Package does not own files or directories already owned by other packages. SHOULD Items: - SHOULD: The source package does include license text(s) - 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. APPROVED New Package CVS Request ======================= Package Name: dgc Short Description: Digital Gate Compiler Owners: shakthimaan chitlesh Branches: F-11 F-12 EL-5 cvs done. dgc-0.98-3.fc12 has been submitted as an update for Fedora 12. http://admin.fedoraproject.org/updates/dgc-0.98-3.fc12 dgc-0.98-3.fc11 has been submitted as an update for Fedora 11. http://admin.fedoraproject.org/updates/dgc-0.98-3.fc11 dgc-0.98-3.el5 has been submitted as an update for Fedora EPEL 5. http://admin.fedoraproject.org/updates/dgc-0.98-3.el5 dgc-0.98-3.fc12 has been pushed to the Fedora 12 stable repository. If problems still persist, please make note of it in this bug report. dgc-0.98-3.fc11 has been pushed to the Fedora 11 stable repository. If problems still persist, please make note of it in this bug report. dgc-0.98-3.el5 has been pushed to the Fedora EPEL 5 stable repository. If problems still persist, please make note of it in this bug report. |