Menu

#3962 clxclient 3.6.1-3

open
nobody
5
2014-05-18
2011-05-15
adrian
No

Does this package have OS version restrictions?
no
Which section does it belong in?
sound
Have you built it with -m --build-as-nobody?
yes

update include PowerPC fixes & updated homepage/source url

Related

Package Submissions: #3963

Discussion

  • adrian

    adrian - 2011-05-15
     
  • Alexander Hansen

    The shlibs package needs DocFiles--at least the COPYING file which contains the license.

     
  • Alexander Hansen

    I'm not sure why the validator didn't catch it, but you aren't supposed to have unversioned .dylibs in a -shlibs package:

    Fiona:~ hansen$ dpkg -c /sw/fink/debs/clxclient-shlibs_3.6.1-1_darwin-i386.deb
    drwxr-xr-x root/admin 0 2011-05-16 21:28 ./
    drwxr-xr-x root/admin 0 2011-05-16 21:28 ./sw/
    drwxr-xr-x root/admin 0 2011-05-16 21:28 ./sw/lib/
    -rwxr-xr-x root/admin 96596 2011-05-16 21:28 ./sw/lib/libclxclient.3.6.1.dylib
    drwxr-xr-x root/admin 0 2011-05-16 21:28 ./sw/share/
    drwxr-xr-x root/admin 0 2011-05-16 21:28 ./sw/share/doc/
    drwxr-xr-x root/admin 0 2011-05-16 21:28 ./sw/share/doc/clxclient-shlibs/
    -rw-r--r-- root/admin 40 2011-05-16 21:28 ./sw/share/doc/clxclient-shlibs/AUTHORS
    -rw-r--r-- root/admin 26436 2011-05-16 21:28 ./sw/share/doc/clxclient-shlibs/COPYING
    lrwxr-xr-x root/admin 0 2011-05-16 21:28 ./sw/lib/libclxclient.3.dylib -> libclxclient.3.6.1.dylib

    Fiona:~ hansen$ dpkg -c /sw/fink/debs/clxclient-shlibs_3.6.1-3_darwin-i386.deb
    drwxr-xr-x root/admin 0 2011-05-16 21:49 ./
    drwxr-xr-x root/admin 0 2011-05-16 21:49 ./sw/
    drwxr-xr-x root/admin 0 2011-05-16 21:49 ./sw/lib/
    -rwxr-xr-x root/admin 96596 2011-05-16 21:49 ./sw/lib/libclxclient.3.6.1.dylib
    lrwxr-xr-x root/admin 0 2011-05-16 21:49 ./sw/lib/libclxclient.3.dylib -> libclxclient.3.6.1.dylib
    lrwxr-xr-x root/admin 0 2011-05-16 21:49 ./sw/lib/libclxclient.dylib -> libclxclient.3.6.1.dylib

     
  • Alexander Hansen

    • milestone: 373615 --> 373614
     
  • Alexander Hansen

    And you definitely don't want an unversioned dylib in the Shlibs field.

     
  • adrian

    adrian - 2011-05-17
    • milestone: 373614 --> 373615
     
  • adrian

    adrian - 2011-05-17

    uploaded a new version to address your comments

     
  • adrian

    adrian - 2011-05-17
     
  • Alexander Hansen

    OK, found out why the validator didn't catch the earlier problem. The install_name of the library isn't versioned:

    $ otool -L /sw64/lib/libclxclient.3.6.1.dylib
    /sw64/lib/libclxclient.3.6.1.dylib:
    /sw64/lib/libclxclient.dylib (compatibility version 3.0.0, current version 3.6.1)
    /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 125.2.10)
    /usr/X11/lib/libXft.2.dylib (compatibility version 4.0.0, current version 4.13.0)
    /usr/X11/lib/libX11.6.dylib (compatibility version 9.0.0, current version 9.0.0)
    /sw64/lib/freetype219/lib/libfreetype.6.dylib (compatibility version 13.0.0, current version 13.2.0)
    /usr/lib/libstdc++.6.dylib (compatibility version 7.0.0, current version 7.9.0)

    I'm assuming that you _wanted_ %p/lib/libclxclient.3.dylib to be the install_name here instead.

     
  • Alexander Hansen

    Great! You fixed that.

     
  • Alexander Hansen

    Some relatively minor things:

    1) You need a GCC: 4.0 field, by policy, since the package uses g++

    2) The package needs a BuildDepend on xft2-dev and the -shlibs needs to Depend: xft2-shlibs

     
  • Alexander Hansen

    One major thing:

    Since you're changing the install_name of the library, by the shared library policy that change normally entails making a new package.

    However, given that nothing in Fink currently uses this, I think we can let that slide.

     
  • Alexander Hansen

    • milestone: 373615 --> 373614
     
  • Alexander Hansen

    We were talking about this on IRC, and it's probably best that the updates get made into a new package, e.g. called clxclient3. You could then have clxclient3-shlibs Replace clxclient-shlibs, and clxclient3 Conflict and Replace clxclient3. We'd go ahead and get rid of the original clxclient at the same time.

     
  • adrian

    adrian - 2011-05-30
     
  • adrian

    adrian - 2011-05-30

    here's the clxclient3.info

     
  • adrian

    adrian - 2011-05-30
    • milestone: 373614 --> Undergoing_Validation
     
  • adrian

    adrian - 2011-05-30
     
  • Hanspeter Niederstrasser

    This worked for me on 10.7 with the following changes:

    1. Bumped to clxclient 3.9.0
    2. I changed the last perl pie to switch "unknown" to "x86_64" since
      • PPC is no longer a Fink supported arch
      • The change makes sure that it doesn't try to install into %p/lib64
    3. Changed the dependencies on clthreads(-shlibs) to clthreads2(-shlibs). clthreads is currently not present in the 10.7 tree. A minor change in the clthreads.info was needed to get clthreads to build the dylib properly (give it a properly versioned install_name), and that fix was best served by renaming the package as clthreads2 in the 10.7 tree.
    4. Unset CPPFLAGS so that -I%p/include wasn't added to the very front of the compiler command. This prevents the build process from using its installed headers vs the build headers.
    5. Removed "-undefined suppress" from the linker to make sure everything was being linked properly.
      • This showed that "-lclthreads" had to be added to LDFLAGS so it would link with the lcthreads library (otherwise it would fail with missing symbols).
    6. Removed the Conflicts from clxclient3-shlibs. For the shlibs SplitOff, you only want to Replace the old package.
    7. Fixed the Depends fields.

    My .info file is attached. I've also attached the clthreads2.info file since that is not yet in the 10.7 tree.

     
  • Hanspeter Niederstrasser

    • Group: Undergoing_Validation --> Awaiting_Update_from_Submitter
     
  • Hanspeter Niederstrasser

    • labels: Updated Revision of Existing --> Updated Revision of Existing, sound
     

Log in to post a comment.