gst-package "empty filenames are invalid"

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

gst-package "empty filenames are invalid"

Tony Garnock-Jones-2
 From a fresh git checkout, on OS X 10.5.4,

  - make works
  - make install gets part-way through before failing.

It looks like there's some code duplication in Directory class >>
append:to: and FilePath class >> append:to:. The FilePath version is
newer, but behaves differently in the case of an empty fileName
parameter. Should the redundancy be removed? Should they be made to
behave the same? Am I looking in completely the wrong place?

Here's how it fails:

...
ln -f /opt/gst-HEAD/bin/gst-load /opt/gst-HEAD/bin/gst-doc
ln -f /opt/gst-HEAD/bin/gst-load /opt/gst-HEAD/bin/gst-remote
test -z "/opt/gst-HEAD/share/aclocal" || build-aux/install-sh -c -d
"/opt/gst-HEAD/share/aclocal"
  /usr/bin/install -c -m 644 'build-aux/gst.m4'
'/opt/gst-HEAD/share/aclocal/gst.m4'
  /usr/bin/install -c -m 644 'build-aux/gst-package.m4'
'/opt/gst-HEAD/share/aclocal/gst-package.m4'
  /usr/bin/install -c -m 644 'smalltalk-mode.el'
'/opt/gst-HEAD/share/emacs/site-lisp/smalltalk-mode.el'
  /usr/bin/install -c -m 644 'smalltalk-mode.elc'
'/opt/gst-HEAD/share/emacs/site-lisp/smalltalk-mode.elc'
  /usr/bin/install -c -m 644 'gst-mode.el'
'/opt/gst-HEAD/share/emacs/site-lisp/gst-mode.el'
  /usr/bin/install -c -m 644 'gst-mode.elc'
'/opt/gst-HEAD/share/emacs/site-lisp/gst-mode.elc'
test -z "/opt/gst-HEAD/lib/pkgconfig" || build-aux/install-sh -c -d
"/opt/gst-HEAD/lib/pkgconfig"
  /usr/bin/install -c -m 644 'gnu-smalltalk.pc'
'/opt/gst-HEAD/lib/pkgconfig/gnu-smalltalk.pc'
make  install-data-hook
./gst-tool gst-package
--kernel-dir="/Users/tonyg/src/gnu-smalltalk/kernel"
--image="/Users/tonyg/src/gnu-smalltalk/gst.im" --dist --copy --all-files \
           --destdir="" --target-dir="/opt/gst-HEAD/share/smalltalk" \
           --srcdir="." ./packages.xml
gst-package: Invalid argument : empty filenames are invalid
make[3]: *** [install-data-hook] Error 1
make[2]: *** [install-data-am] Error 2
make[1]: *** [install-am] Error 2
make: *** [install-recursive] Error 1



_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: gst-package "empty filenames are invalid"

Paolo Bonzini-2
Tony Garnock-Jones wrote:

>  From a fresh git checkout, on OS X 10.5.4,
>
>  - make works
>  - make install gets part-way through before failing.
>
> It looks like there's some code duplication in Directory class >>
> append:to: and FilePath class >> append:to:. The FilePath version is
> newer, but behaves differently in the case of an empty fileName
> parameter. Should the redundancy be removed? Should they be made to
> behave the same? Am I looking in completely the wrong place?

You're right -- I'm now preparing 3.0c and have already fixed it.  The
fix (and a couple of makefile tweaks needed for `make distcheck' to
pass) is already in my repository though I have not yet pushed it to
savannah.  I don't know when I'll announce the release though; I want to
do 3.0.4 too and it takes a lot of time to run all the tests, prepare
the announcements, clean up the house :-) and so on.

Directory class>>#append:to: is obsolete indeed, and left for backwards
compatibility.

Thanks!

Paolo


diff --git a/scripts/Package.st b/scripts/Package.st
index 41c92c0..5af172d 100644
--- a/scripts/Package.st
+++ b/scripts/Package.st
@@ -334,12 +334,13 @@ Command subclass: PkgDist [
             ifFalse: [ aPackage allDistFiles ].

          dirs := files collect: [ :file | File pathFor: file ].
-       dirs := dirs asSet asOrderedCollection.
+       dirs := dirs asSet remove: '' ifAbsent: [ ]; asSortedCollection.

         baseDir := self installDir.
         aPackage relativeDirectory isNil ifFalse: [
             baseDir := baseDir / aPackage relativeDirectory ].

+       baseDir emitMkdir.
          dirs do: [ :dir | (baseDir / dir) emitMkdir ].

          files do: [ :file || srcFile destName |



_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: gst-package "empty filenames are invalid"

Tony Garnock-Jones-2
Hi Paolo,

Paolo Bonzini wrote:
> You're right -- I'm now preparing 3.0c and have already fixed it.  The
> fix (and a couple of makefile tweaks needed for `make distcheck' to
> pass) is already in my repository though I have not yet pushed it to
> savannah.  I don't know when I'll announce the release though; I want to
> do 3.0.4 too and it takes a lot of time to run all the tests, prepare
> the announcements, clean up the house :-) and so on.

Aha! OK.

> -       dirs := dirs asSet asOrderedCollection.
> +       dirs := dirs asSet remove: '' ifAbsent: [ ]; asSortedCollection.

> +       baseDir emitMkdir.


Oh. I see. Please ignore the patch I just sent to the list then :-)

Regards,
   Tony


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk