public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* Circular dependency with mingw64-x86_64-runtime
@ 2018-04-30  2:16 Steven Penny
  2018-05-01 13:45 ` JonY
  2018-05-02 15:22 ` Mikhail Usenko via cygwin
  0 siblings, 2 replies; 10+ messages in thread
From: Steven Penny @ 2018-04-30  2:16 UTC (permalink / raw)
  To: cygwin

Here are the requirements for "gcc-core":

  binutils, cygwin-devel, libatomic1, libgomp1, libisl15, libmpc3, libquadmath0,
  libssp0, w32api-headers, w32api-runtime, windows-default-manifest

and for "w32api-runtime":

  w32api-headers

Here are the requirements for "mingw64-x86_64-gcc-core":

  libisl13, libmpc3, mingw64-x86_64-binutils, mingw64-x86_64-headers,
  mingw64-x86_64-runtime, mingw64-x86_64-windows-default-manifest,
  mingw64-x86_64-winpthreads

and for "mingw64-x86_64-runtime":

  libisl13, libmpc3, mingw64-x86_64-binutils, mingw64-x86_64-gcc-core,
  mingw64-x86_64-headers, mingw64-x86_64-windows-default-manifest,
  mingw64-x86_64-winpthreads

so "mingw64-x86_64-gcc-core" and "mingw64-x86_64-runtime" require each other. I
think that the requirements for "mingw64-x86_64-runtime" should be adjusted on
so that they are similar to "w32api-runtime".


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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Circular dependency with mingw64-x86_64-runtime
  2018-04-30  2:16 Circular dependency with mingw64-x86_64-runtime Steven Penny
@ 2018-05-01 13:45 ` JonY
  2018-05-01 23:33   ` Steven Penny
  2018-05-02 15:22 ` Mikhail Usenko via cygwin
  1 sibling, 1 reply; 10+ messages in thread
From: JonY @ 2018-05-01 13:45 UTC (permalink / raw)
  To: cygwin


[-- Attachment #1.1: Type: text/plain, Size: 1047 bytes --]

On 04/30/2018 02:16 AM, Steven Penny wrote:
> Here are the requirements for "gcc-core":
> 
>  binutils, cygwin-devel, libatomic1, libgomp1, libisl15, libmpc3,
> libquadmath0,
>  libssp0, w32api-headers, w32api-runtime, windows-default-manifest
> 
> and for "w32api-runtime":
> 
>  w32api-headers
> 
> Here are the requirements for "mingw64-x86_64-gcc-core":
> 
>  libisl13, libmpc3, mingw64-x86_64-binutils, mingw64-x86_64-headers,
>  mingw64-x86_64-runtime, mingw64-x86_64-windows-default-manifest,
>  mingw64-x86_64-winpthreads
> 
> and for "mingw64-x86_64-runtime":
> 
>  libisl13, libmpc3, mingw64-x86_64-binutils, mingw64-x86_64-gcc-core,
>  mingw64-x86_64-headers, mingw64-x86_64-windows-default-manifest,
>  mingw64-x86_64-winpthreads
> 
> so "mingw64-x86_64-gcc-core" and "mingw64-x86_64-runtime" require each
> other. I
> think that the requirements for "mingw64-x86_64-runtime" should be
> adjusted on
> so that they are similar to "w32api-runtime".

What is the actual problem you are facing?



[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 858 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Circular dependency with mingw64-x86_64-runtime
  2018-05-01 13:45 ` JonY
@ 2018-05-01 23:33   ` Steven Penny
  2018-05-02 10:47     ` JonY
                       ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Steven Penny @ 2018-05-01 23:33 UTC (permalink / raw)
  To: cygwin

On Tue, 1 May 2018 13:44:45, JonY wrote:
> What is the actual problem you are facing?

i already described it: when 2 things depend on each other in this way, that is
an error:

http://wikipedia.org/wiki/Circular_dependency

while setup.exe may account for this, it doesnt change the fact that this is not
correct. ideally one should depend on the other, and *not* vice versa. in this
case "gcc" should depend on "runtime", and not the other way around. the fix is
pretty simple; with "mingw64-x86_64-runtime.cygport", change:

    REQUIRES="mingw64-x86_64-headers mingw64-x86_64-gcc-core"

to

    REQUIRES="mingw64-x86_64-headers"

compare this to "w32api-runtime.cygport":

    REQUIRES="w32api-headers"


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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Circular dependency with mingw64-x86_64-runtime
  2018-05-01 23:33   ` Steven Penny
@ 2018-05-02 10:47     ` JonY
  2018-05-02 13:31     ` Kaz Kylheku
  2018-05-03 12:20     ` Andrey Repin
  2 siblings, 0 replies; 10+ messages in thread
From: JonY @ 2018-05-02 10:47 UTC (permalink / raw)
  To: cygwin


[-- Attachment #1.1: Type: text/plain, Size: 892 bytes --]

On 05/01/2018 11:33 PM, Steven Penny wrote:
> On Tue, 1 May 2018 13:44:45, JonY wrote:
>> What is the actual problem you are facing?
> 
> i already described it: when 2 things depend on each other in this
> way, that is an error:
> 
> http://wikipedia.org/wiki/Circular_dependency
> 

That is not a problem affecting Cygwin.

> while setup.exe may account for this, it doesnt change the fact that 
> this is not correct. ideally one should depend on the other, and
> *not* vice versa. in this case "gcc" should depend on "runtime", and
> not the other way around. the fix is pretty simple; with
> "mingw64-x86_64-runtime.cygport", change:
> 
> REQUIRES="mingw64-x86_64-headers mingw64-x86_64-gcc-core"
> 
> to
> 
> REQUIRES="mingw64-x86_64-headers"
> 
> compare this to "w32api-runtime.cygport":
> 
> REQUIRES="w32api-headers"
> 

Perhaps in the next rebuild.


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 858 bytes --]

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Circular dependency with mingw64-x86_64-runtime
  2018-05-01 23:33   ` Steven Penny
  2018-05-02 10:47     ` JonY
@ 2018-05-02 13:31     ` Kaz Kylheku
  2018-05-03 12:20     ` Andrey Repin
  2 siblings, 0 replies; 10+ messages in thread
From: Kaz Kylheku @ 2018-05-02 13:31 UTC (permalink / raw)
  To: cygwin

On 2018-05-01 16:33, Steven Penny wrote:
> On Tue, 1 May 2018 13:44:45, JonY wrote:
>> What is the actual problem you are facing?
> 
> i already described it: when 2 things depend on each other in this way, 
> that is
> an error:
> 
> http://wikipedia.org/wiki/Circular_dependency

Nowhere does this page substantiate what you're saying; it doesn't say 
that the existence of a circular dependency is /ipso facto/ a form of 
error.

If A cannot be used unless B is also installed, and if B cannot be used 
unless A is also installed, then there is a cycle in the dependency 
graph. The packaging system must express the cycle (and handle it). This 
means that if a user selects A for installation, it must be 
automatically accompanied by an installation of B, and vice versa.

If you say that the dependency which is stated in the package system is 
incorrect, then you have to prove that either A or B can be usefully 
installed by itself. (Or even both, in which case they are independent.)

If the circular dependency is right, but unwanted, it can only be broken 
by making some code changes in A or B, or both (and only then changing 
the dependency expressions at the package level). You can't simply say, 
"I don't like circular dependencies; I will break any cycles in the 
package system dependency definitions, whether or not they reflect the 
underlying packages".

The only situation in which that would be justified would be that the 
package system is too weak to deal with circular dependencies; it gets 
into an infinite loop or whatever, so cycles must be avoided.

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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Circular dependency with mingw64-x86_64-runtime
  2018-04-30  2:16 Circular dependency with mingw64-x86_64-runtime Steven Penny
  2018-05-01 13:45 ` JonY
@ 2018-05-02 15:22 ` Mikhail Usenko via cygwin
  2018-05-02 15:26   ` Vince Rice
  2018-05-02 16:18   ` Marco Atzeri
  1 sibling, 2 replies; 10+ messages in thread
From: Mikhail Usenko via cygwin @ 2018-05-02 15:22 UTC (permalink / raw)
  To: cygwin

On Sun, 29 Apr 2018 19:16:17 -0700 (PDT)
Steven Penny <...> wrote:
> so "mingw64-x86_64-gcc-core" and "mingw64-x86_64-runtime" require each other

By the way this is not the only package group with circular dependencies.
There are more in Cygwin distribution, that can be observed with cygcheck-dep:
$ cygcheck-dep -cSIO
 ( at-spi2-core libatspi0 )
 ( bash coreutils tzcode )
 ( biber texlive-collection-bibtexextra )
 ( cygwin-debuginfo )
 ( desktop-file-utils gamin libfam0 libglib2.0_0 shared-mime-info )
 ( evolution-data-server libebackend1.2_10 libebook-contacts1.2_2 libebook1.2_16 libecal1.2_19 libedata-book1.2_25 libedata-cal1.2_28 libedataserver1.2_21 )
 ( gconf-desktop-schemas GConf2 libgconf2_4 )
 ( girepository-GstCheck1.0 libgstreamer1.0-devel )
 ( gnome-online-accounts libgoa-backend1.0_1 libgoa1.0_0 )
 ( libaqbanking35 libaqebics0 libaqhbci24 libaqofxconnect7 libaqpaypal0 )
 ( libautotrace3 libMagickC++6_8 libMagickCore6_5 libMagickWand6_5 libpstoedit0 )
 ( libdbi-drivers libdbi1 )
 ( libfm4 libmenu-cache3 menu-cache )
 ( libmailutils-sieve-extensions libmailutils5 )
 ( libopenldap2_4_2 libsasl2_3 )
 ( libopenmpi12 openmpi )
 ( libupower-glib1 upower )
 ( mingw64-i686-gcc-core mingw64-i686-runtime )
 ( mingw64-x86_64-gcc-core mingw64-x86_64-runtime )
 ( php-Archive_Tar php-Console_Getopt php-PEAR php-Structures_Graph php-XML_Util )
 ( python2-incremental python2-twisted )
 ( python2-sphinx python2-sphinxcontrib-websupport )
 ( python3-incremental python3-twisted )
 ( python3-sphinx python3-sphinxcontrib-websupport )
 ( python-docutils python-pygments python-sphinx )
 ( ruby ruby-io-console ruby-psych ruby-rake ruby-rdoc rubygems )
 ( tesseract-ocr tesseract-ocr-eng )
 ( tesseract-training-core tesseract-training-util )
 ( texlive texlive-collection-basic )
 ( xf86-video-dummy xf86-video-nested xorg-server )

And with replacements for obsolete packages being taken into account (cygcheck-dep -cSI)
there is also libfm-qt3 which turns out to be depended on itself.


-- 


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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Circular dependency with mingw64-x86_64-runtime
  2018-05-02 15:22 ` Mikhail Usenko via cygwin
@ 2018-05-02 15:26   ` Vince Rice
  2018-05-02 15:55     ` Mikhail Usenko via cygwin
  2018-05-02 16:18   ` Marco Atzeri
  1 sibling, 1 reply; 10+ messages in thread
From: Vince Rice @ 2018-05-02 15:26 UTC (permalink / raw)
  To: cygwin

> On May 2, 2018, at 10:22 AM, Mikhail Usenko wrote:
> 
> On Sun, 29 Apr 2018 19:16:17 -0700 (PDT)
> Steven Penny <...> wrote:
>> so "mingw64-x86_64-gcc-core" and "mingw64-x86_64-runtime" require each other
> 
> By the way this is not the only package group with circular dependencies.
> There are more in Cygwin distribution, that can be observed with cygcheck-dep:
> …


> On May 2, 2018, at 5:46 AM, JonY <10walls@gmail.com> wrote:
> 
> …
> 
> That is not a problem affecting Cygwin.


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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Circular dependency with mingw64-x86_64-runtime
  2018-05-02 15:26   ` Vince Rice
@ 2018-05-02 15:55     ` Mikhail Usenko via cygwin
  0 siblings, 0 replies; 10+ messages in thread
From: Mikhail Usenko via cygwin @ 2018-05-02 15:55 UTC (permalink / raw)
  To: cygwin

> On May 2, 2018, at 10:22 AM, Mikhail Usenko wrote:
> 
> On Sun, 29 Apr 2018 19:16:17 -0700 (PDT)
> Steven Penny <...> wrote:
>> so "mingw64-x86_64-gcc-core" and "mingw64-x86_64-runtime" require each other
> 
> By the way this is not the only package group with circular dependencies.
> There are more in Cygwin distribution, that can be observed with cygcheck-dep:
> …


> On May 2, 2018, at 5:46 AM, JonY <10walls@gmail.com> wrote:
> 
> …
> 
> That is not a problem affecting Cygwin.


So what? )
It was just a curiosity.
-- 


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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Circular dependency with mingw64-x86_64-runtime
  2018-05-02 15:22 ` Mikhail Usenko via cygwin
  2018-05-02 15:26   ` Vince Rice
@ 2018-05-02 16:18   ` Marco Atzeri
  1 sibling, 0 replies; 10+ messages in thread
From: Marco Atzeri @ 2018-05-02 16:18 UTC (permalink / raw)
  To: cygwin

On 5/2/2018 5:22 PM, Mikhail Usenko via cygwin wrote:
> On Sun, 29 Apr 2018 19:16:17 -0700 (PDT)
> Steven Penny <...> wrote:
>> so "mingw64-x86_64-gcc-core" and "mingw64-x86_64-runtime" require each other
> 
> By the way this is not the only package group with circular dependencies.
> There are more in Cygwin distribution, that can be observed with cygcheck-dep:
> $ cygcheck-dep -cSIO

>   ( libautotrace3 libMagickC++6_8 libMagickCore6_5 libMagickWand6_5 libpstoedit0 )

This is by upstream design.
ImageMagick and Autotrace are using each other library.

Regards
Marco


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

^ permalink raw reply	[flat|nested] 10+ messages in thread

* Re: Circular dependency with mingw64-x86_64-runtime
  2018-05-01 23:33   ` Steven Penny
  2018-05-02 10:47     ` JonY
  2018-05-02 13:31     ` Kaz Kylheku
@ 2018-05-03 12:20     ` Andrey Repin
  2 siblings, 0 replies; 10+ messages in thread
From: Andrey Repin @ 2018-05-03 12:20 UTC (permalink / raw)
  To: Steven Penny, cygwin

Greetings, Steven Penny!

> On Tue, 1 May 2018 13:44:45, JonY wrote:
>> What is the actual problem you are facing?

> i already described it: when 2 things depend on each other in this way, that is
> an error:

No, that's not an error. That's a perfectly valid and often used configuration
setup in various package managers.


-- 
With best regards,
Andrey Repin
Thursday, May 3, 2018 15:05:29

Sorry for my terrible english...


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

^ permalink raw reply	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2018-05-03 12:20 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-04-30  2:16 Circular dependency with mingw64-x86_64-runtime Steven Penny
2018-05-01 13:45 ` JonY
2018-05-01 23:33   ` Steven Penny
2018-05-02 10:47     ` JonY
2018-05-02 13:31     ` Kaz Kylheku
2018-05-03 12:20     ` Andrey Repin
2018-05-02 15:22 ` Mikhail Usenko via cygwin
2018-05-02 15:26   ` Vince Rice
2018-05-02 15:55     ` Mikhail Usenko via cygwin
2018-05-02 16:18   ` Marco Atzeri

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).