How to create src from CygPort?

I have a question about the structure of the source code from the cygport package.

Here is the contents of the source Cygports file:

  • actual source for the project (tar.gz, tar.bz2, etc.)
  • any number of * .patch files.
  • .Cygport file

I am trying to create gedit-3.4.2 from a cygports repository.

How the .cygport file helps me run the correct options in. / configure?

For example, in gedit, if I do not specify --disable-spell, it will not work due to an error. How to get a list of parameters. / configure that were used to create the project when creating cygport?

Is there any way to use the cygport executable to build cygport and change the prefix?

Here is the contents of gedit-3.4.2-1.cygport :

 inherit python gnome2 DESCRIPTION="GNOME text editor" PATCH_URI="3.4.2-cygwin.patch" DEPEND="gnome-common gtk-doc girepository(Gtk-3.0) pkgconfig(enchant) pkgconfig(gtksourceview-3.0) pkgconfig(libpeas-gtk-1.0)" PKG_NAMES="${PN} ${PN}-devel" PKG_HINTS="setup devel" gedit_CONTENTS="--exclude=gtk-doc --exclude=libgedit* etc/ usr/bin/ usr/lib/gedit/ ${PYTHON_SITELIB#/} usr/share/" gedit_devel_CONTENTS="usr/include/ usr/lib/gedit/libgedit* usr/lib/pkgconfig/ usr/share/gtk-doc/" DIFF_EXCLUDES="*.desktop.in *.schemas.in *-marshal.h" CYGCONF_ARGS="--libexecdir=/usr/lib --enable-python" KEEP_LA_FILES="none" 

EDIT Someone on the Cygwin Ports mailing list said:

"Configuration options

 --libexecdir=/usr/lib --enable-python 

Which of CYGCONF_ARGS.

+6
source share
1 answer

Here is the contents of the source Cygports file:

You better think of it as the source file of the Cygwin package.

cygport is just a tool for automating the creation of binary and source Cygwin packages. This is the main tool available, but unlike some other packaging systems, it really doesn't force you to use it. It is quite possible to create the Cygwin package completely manually, because it really is nothing more than a tarball that Cygwin setup.exe can blindly unzip to the Cygwin root directory (usually c:\cygwin ) with the expectation that it will put the package of files in reasonable places.

Before cygport there were people who created their own special packaging systems. Many Cygwin supporters still use these tools that they created. (Indeed, at your disposal: two of my three packages use cygport , but the third still uses a custom build system.)

Ultimately, you want to read the cygport in /usr/share/doc/cygport/manual.html .

(Yes, I know, the "RTFM" answers here are incredulous. But, as the one who currently supports two cygport based cygport in the official Cygwin package repository, trust me when I tell you that the manual is still the only best resource available on this topic.)

How the .cygport file will help me run the correct options in. / configure?

As you learned from other resources, you first need to edit the value of CYGCONF_ARGS in the .cygport file.

The easiest possible step after this is cygport gedit-3.4.2-1.cygport all . It tries to rebuild all binary packages in one step. It also creates a new source package containing updated .cygport and patch files.

If something breaks down during the all build process, it is usually faster to switch to using the subcommands contained in all rather than restarting the process completely. The all step launches prep , compile , install , package and finish for you in that order. For example, if all does not work at the compilation stage, there is no need to repeat the prep step.

(Optional for cygport or a string assembly system, to destroy the assembly tree by forcing you to rerun prep . Most often you need to rerun prep when you manually destroy the assembly tree, trying to get a new assembly package for the first time and get it working.)

For example, in gedit, if I do not specify --disable-spell, it will not work due to an error.

Perhaps you can fix this by installing the libaspell-devel from the official Cygwin package repository with setup.exe .

Personally, I would not disable the function, if this does not mean installing unofficial packages, for example, from a project

Can I use the cygport executable to build cygport and change the prefix?

You guessed it, just add --prefix=/my/private/program/tree to CYGCONF_ARGS , I hope.

[*] If you feel embarrassed about the "Cygwin ports" and cygport , the similarity of names is not a coincidence. cygport is a tool created by Yaakov Selkovich for himself when creating the Cygwin Ports package repository. Later, it became quite popular among the other accompanying Cygwin packages that it superseded most competing build systems.

+16
source

Source: https://habr.com/ru/post/921152/


All Articles