This is the mail archive of the
cygwin-apps
mailing list for the Cygwin project.
Re: some cygport packaging issues
- From: Thomas Wolff <towo at towo dot net>
- To: cygwin-apps at cygwin dot com
- Date: Sat, 17 Aug 2013 10:10:50 +0200
- Subject: Re: some cygport packaging issues
- References: <520BE7A2 dot 2090801 at towo dot net> <20130815083607 dot GR4315 at calimero dot vinschen dot de>
Am 15.08.2013 10:36, schrieb Corinna Vinschen:
On Aug 14 22:25, Thomas Wolff wrote:
(Packaging algol68g)
There are two warnings at the end:
*** Warning: setup.hint is missing
*** Warning: algol68g.hint is missing
What's the latter (algol68g.hint)?
The file setup.hint is in the same directory as the cygport file where
I invoked cygport. Does it need to be included in the package?
Not at all, if you're using the newer style of cygport files. Assuming
your package "foo" is a simple package, not having a couple of subpackages,
then it's pretty simple. If the foo.cygport file starts like this
NAME="foo" # Package name
VERSION="1.2" # Upstream version
RELEASE=1 # Cygwin subversion
CATEGORY="Text Utils" # String with Cygwin package categories
SUMMARY="foo SUmmary" # == sdesc in setup.hint
DESCRIPTION="foo Desc" # == ldesc in setup.hint
then the setup.hint file will be autogenerated by cygport, including the
"requires:" line. Apart from the toplevel files (which IMHO really
should not be generated anymore), you 'll find a complete,
distro-suitable subdirectory "foo-1.2-1/dist/foo", with all files
including the generated setup.hint.
Where the two archives are also copied to the current directory but
setup.hint is not, giving rise to potential confusion.
...
For the next time, change your file to drop the version from the filename
(just "algol68g.cygport"), and add the missing variables as outlined above:
NAME="algol68g"
VERSION="2.7"
RELEASE=1
CATEGORY="Devel Interpreters"
SUMMARY="Algol 68 Genie interpreter" # Your former DESCRIPTION
DESCRIPTION="... long text ..."
and drop the DEPEND line. The deps will be autogenerated anyway.
Amazing, I wonder, how this works reliably (even with packages that do
not use auto-stuff).
If cygport would still consider DEPEND=libncursesw-devel, it could
generate "requires: libncursesw10" rather than "requires: libncurses10"
and setup.hint file could remain the same for 32bit/64bit.
Also, I'd prefer to keep DEPEND=gettext-devel because (as I had reported
earlier) without gettext cygport fails (and hangs).
The upstream package installs two include files that are not
actually needed on cygwin.
Can cygport be configured to exclude them from packaging?
PKG_IGNORE="file/to/be/excluded another/file/to/be/excluded [...]"
paths are relative to the installation dir ${D}.
This does not work. Error message:
>>> Checking packages for missing or duplicate files
*** Warning: Packages contain duplicate files:
+usr/include/algol68g/a68g-config.h
+usr/include/algol68g/a68g.h
*** ERROR: Packages contain duplicate files:
- as if cygport had tried to add rather than remove those files.
----
(Packaging mined)
Cygport creates a postinstall file that doesn't seem to be necessary;
can I switch if off?
(I assume the following dependencies to desktop-file-utils and
shared-mime-info would also go away then?)
mined requires: bash desktop-file-utils libncurses10 shared-mime-info
Are you using the mined cygport file I sent to this list a couple of
weeks (months?) ago? Either way, it would help to see the content of
your cygport file.
See my current upload request.
If I try a "new style" cygport file with mined, it generates a package
containing only symbolic links, most of them pointing to some local
directory useless for the distribution. Does "new style" only work with
"auto-packages"?
Thanks
Thomas