Spec URL: http://shakthimaan.fedorapeople.org/SPECS/dgc.spec SRPM URL: http://shakthimaan.fedorapeople.org/SRPMS/dgc-0.98-1.fc11.src.rpm Description: Digital Gate Compiler is a tool for the creation of digital netlists. DGC does an optimization and technology mapping for an abstract description of boolean functions and state machines. Output formats are EDIF, XNF and VHDL. Input formats are KISS, PLA and others. Successful Koji builds for F-10, F-11, F-12 and EPEL: http://koji.fedoraproject.org/koji/taskinfo?taskID=1811644 http://koji.fedoraproject.org/koji/taskinfo?taskID=1811668 http://koji.fedoraproject.org/koji/taskinfo?taskID=1811692 http://koji.fedoraproject.org/koji/taskinfo?taskID=1811705
#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.