pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/38834: lang/pcc-current problems in DragonFly

>Number:         38834
>Category:       pkg
>Synopsis:       lang/pcc-current problems in DragonFly
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    pkg-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Jun 02 13:45:00 +0000 2008
>Originator:     Hasso Tepper
>Release:        DragonFly
* Compiling pcc without TLS support in DragonFly doesn't make sense - without 
TLS it's not possible to use errno.

* There is no /usr/lib/crt*.o files in modern DragonFly systems. These are now 
in /usr/lib/gcc<version>/.

* For some unknown reason compiling fails here (mostly) - "bmake all" compiles 
only files in toplevel cc directory and doesn't enter into subdirectories => 
"bmake install" fails. This problem exist in the lang/pcc package as well.

The last one is probably bmake problem. It's not version specific, seems - both 
20051105nb4 and 20080215 have the problem here. But there is at least two 
workarounds: either use gmake or use following patch to cc/

-all: ${SUBDIR}
+       cd cc && ${MAKE} all
+       cd cpp && ${MAKE} all
+       cd ccom && ${MAKE} all

Debugging it is beyond my knowledge though. It's also notable that it happens 
only if compiled from pkgsrc - even if I go into 
/home/obj/pkgsrc/lang/pcc-current/work/pcc-080223 after failure and enter 
"bmake all" in there, all subdirectories are compiled correctly.

The patch to fix all these problems is available at

It does following:

* --enable-tls is added if platform is DragonFly.

* crt*.o paths are fixed to use /usr/lib/gcc34/. Gcc-3.4 will stay in the 
DragonFly base longer than current default gcc-4.1 (as laste gcc3), therefore I 
chose this one.

* Use gmake.

Home | Main Index | Thread Index | Old Index