On Feb 20 08:34, Christian Franke via Cygwin wrote:
> Corinna Vinschen via Cygwin wrote:
> > On Feb 19 16:37, Corinna Vinschen via Cygwin wrote:
> > > On Feb 19 14:40, Corinna Vinschen via Cygwin wrote:
> > > > On Feb 19 14:25, Christian Franke via Cygwin wrote:
> > > > > Corinna Vinschen via Cygwin wrote:
> > > > > > So I think we rather shouldn't supply the libbsd version of
> > > > > > setproctitle_init/setproctitle anymore, as soon as cygwin 3.6.0 is
> > > > > > released.
> > > > > > 
> > > > > > What do you think?
> > > > > Makes sense. But then existing programs already using the functions 
> > > > > from
> > > > > cygbsd-0.dll would no longer start. Perhaps keep the symbols in the 
> > > > > DLL only
> > > > > for some time?
> > > > Sure!  The new version will just disable the header definitions but
> > > > still export the symbols for backward compat.
> > > I just realized that this isn't sufficient.  The link lib libbsd.dll.a
> > > must not export the symbol either.
> > I uploaded a 0.11.8-1 test package which fixes this issue.  I'll
> > propagate it to non-test when 3.6.0 is released.
> 
> A quick test with stress-ng was successful with both libbsd 0.11.8-1 and
> 0.12.2-1 test releases:
> - Old executable using setproctitle{,_init}() from cygbsd-0.dll still runs.
> - A rebuild uses setproctitle() from cygwin1.dll.
> - The testcases using other functions linked to cygbsd-0.dll succeed and
> setproctitle() now works:
> 
> $ procps -C stress-ng -o pid,args --sort pid
>   PID COMMAND
> 24706 ./stress-ng --heapsort 1 --mergesort 1 --radixsort 1 --monte-carlo 1
> --str 1 --wcs 1 -t 30 --verify -v -M
> 24707 stress-ng-heapsort [run]
> 24708 stress-ng-mergesort [run]
> 24709 stress-ng-radixsort [run]
> 24710 stress-ng-monte-carlo [run]  <= uses arc4random()
> 24711 stress-ng-str [run] <= uses strlcat/cpy()
> 24712 stress-ng-wcs [run] <= uses wcslcat/cpy()

Great, thanks for testing!

Yesterday I managed to get the latest 0.12.2 version of libbsd running,
which needs tweaking of the configury.  I uploaded a 0.12.2-1 test
package late at night.

However, this morning it occured to me that there are a lot more
symbols in libbsd, which could be removed as exported symbols, while
staying available in the DLL itself for backward compat.
It doesn't make much sense to use the libbsd function for newly built
applications if the functions are available in the Cygwin DLL anyway,
right?

I'll twiddle a bit with this and will come up with a 0.12.2-2 later
today.

Can you test the 0.12.2-1 in the meantime?  That would be nice.


Thanks,
Corinna

-- 
Problem reports:      https://cygwin.com/problems.html
FAQ:                  https://cygwin.com/faq/
Documentation:        https://cygwin.com/docs.html
Unsubscribe info:     https://cygwin.com/ml/#unsubscribe-simple

Reply via email to