I wrote an ebuild for Squirrel. Reproducible: Always Steps to Reproduce:
Created attachment 111856 [details] squirrel-2.1.1.ebuild I keyworded it x86 and amd64, even though I think it should work also on many other platforms, but I can't test, because I have no access to those machines.
Created attachment 111915 [details] squirrel-2.1.1.ebuild install examples into samples instead of Samples
Emerge fails with this error on ~amd64. (Btw, it compiles manually fine) >>> Compiling source in /var/tmp/portage/dev-lang/squirrel-2.1.1 ... make: *** No rule to make target `sq64'. Stop. !!! ERROR: dev-lang/squirrel-2.1.1 failed. Call stack: ebuild.sh, line 1614: Called dyn_compile ebuild.sh, line 971: Called qa_call 'src_compile' environment, line 1292: Called src_compile squirrel-2.1.1.ebuild, line 22: Called die !!! emake failed
Well, I tried it on my computer, and it worked, I have no idea what could have caused this... Especially when you say that it worked manually. Perhaps you have an idea what happened?
(In reply to comment #4) > Especially when you say that it worked manually. Perhaps you have an idea what > happened? > for my case, the ebuild runs make inside: /var/tmp/portage/dev-lang/squirrel-2.1.1 but it must have run there: /var/tmp/portage/dev-lang/squirrel-2.1.1/work (I guess it must run make sq64 here). I don't have ebuild skills, yet. Sorry if I'm wrong.
Created attachment 112083 [details] squirrel-2.1.1.ebuild In fact your hint was really helpful. I guess now the ebuild should be fixed now, could you try?
Oh, and the reason it worked for me was because I use paludis (stupid me, should've tried it with portage...)
Created attachment 112100 [details] squirrel-2.1.1.ebuild Making use of my newly obtained knowledge about how ${S} should be used.
This is now in the sunrise overlay. You can find it at: http://www.gentoo-sunrise.org/sunrise/browser/sunrise/dev-lang/squirrel
(In reply to comment #6) > Created an attachment (id=112083) [edit] > squirrel-2.1.1.ebuild > > In fact your hint was really helpful. I guess now the ebuild should be fixed > now, could you try? > Thanks. But there are still problems. Now it emerges, but when I run sq it says bash: /usr/bin/sq: Permission denied Also while emerging it gives these warnings: strip: x86_64-pc-linux-gnu-strip --strip-unneeded usr/bin/sq usr/lib/libsqstdlib.a usr/lib/libsquirrel.a * QA Notice: Package has poor programming practices which may compile * fine but exhibit random runtime failures. * sqcompiler.cpp:652: warning: dereferencing type-punned pointer will break strict-aliasing rules
(In reply to comment #9) > This is now in the sunrise overlay. You can find it at: > http://www.gentoo-sunrise.org/sunrise/browser/sunrise/dev-lang/squirrel > Also this one (Revision 3145) fails to emerge with this error: strip: x86_64-pc-linux-gnu-strip --strip-unneeded bin/sq lib/libsqstdlib.a lib/libsquirrel.a * QA Notice: Excessive files found in the / partition * /var/tmp/portage/dev-lang/squirrel-2.1.1/image/lib/libsqstdlib.a /var/tmp/portage/dev-lang/squirrel-2.1.1/image/lib/libsquirrel.a !!! ERROR: dev-lang/squirrel-2.1.1 failed. Call stack: misc-functions.sh, line 570: Called install_qa_check misc-functions.sh, line 276: Called die !!! static archives (*.a) and libtool library files (*.la) do not belong in /
Thanks for the clue, this was really stupid bug. Should be fixed now (again ;-).
(In reply to comment #12) > Thanks for the clue, this was really stupid bug. Should be fixed now (again > ;-). > Hi, Patrick. With Revision 3183 when I run sq it says bash: /usr/bin/sq: Permission denied Althoug emerge completes,it gives gives these warnings while emerging: * QA Notice: Package has poor programming practices which may compile * fine but exhibit random runtime failures. * sqcompiler.cpp:652: warning: dereferencing type-punned pointer will break strict-aliasing rules sqvm.cpp:711: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdblob.cpp:23: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdblob.cpp:46: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdblob.cpp:57: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdblob.cpp:68: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdblob.cpp:81: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdblob.cpp:92: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdblob.cpp:160: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdblob.cpp:168: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdblob.cpp:195: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdblob.cpp:213: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdblob.cpp:222: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdblob.cpp:238: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdio.cpp:187: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdstream.cpp:21: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdstream.cpp:42: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdstream.cpp:104: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdstream.cpp:116: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdstream.cpp:185: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdstream.cpp:204: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdstream.cpp:211: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdstream.cpp:218: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdstream.cpp:228: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdstring.cpp:216: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdstring.cpp:241: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdstring.cpp:255: warning: dereferencing type-punned pointer will break strict-aliasing rules sqstdstring.cpp:279: warning: dereferencing type-punned pointer will break strict-aliasing rules
Fine, I repaired that one, too. About the warnings you get, they are a problem of squirrel, not the ebuild, so I can do nothing about that.
Thank you very much for maintaining this. With Revision 3187 everything works.
Eh, didn't mean to close this.
This ebuild causes conflicts/collides with ispell: * Detected file collision(s): * * /usr/bin/sq * * Searching all installed packages for file collisions... * * Press Ctrl-C to Stop * * app-text/ispell-3.2.06-r6 * /usr/bin/sq * * Package 'dev-lang/squirrel-2.1.1' NOT merged due to file collisions. * If necessary, refer to your elog messages for the whole content of the * above message. I don't know why I have ispell installed - I don't like it :-). But I do think that some action should be taken because of the conflict. I'd think neither squirrel or ispell should install a binary with such a short name in the first place, though it looks like it's trying to imitate a shell's name (e.g. ``/bin/sh'', or ``#!/usr/bin/sq'' ?) I think the ebuild should at least block ispell.
+# ChangeLog for dev-lang/squirrel +# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2 +# $Header: $ + +*squirrel-2.2.4 (05 Mar 2010) + + 05 Mar 2010; Markos Chandras <hwoarang@gentoo.org> +squirrel-2.2.4.ebuild, + +files/squirrel-2.2.4-autotools.patch, + +files/squirrel-2.2.4-stdint.h.patch, + +files/squirrel-2.2.4-supertux-const.patch, +metadata.xml: + Initial commit for squirrel package. Moved from sunrise. Thanks to Nathan + Phillip Brink <ohnobinki@ohnopublishing.net> for the ebuild. Fixes bug + #169051 + Nathan will proxy-maintain it Closing