On 2022-04-12 18:41, Thomas Dickey wrote:
On Tue, Apr 12, 2022 at 03:57:55PM -0600, Brian Inglis wrote:
On 2022-04-12 14:35, Thomas Dickey wrote:
On Tue, Apr 12, 2022 at 03:18:24PM -0400, Thomas Dickey wrote:
On Tue, Apr 12, 2022 at 11:48:30AM -0600, Brian Inglis wrote:
On 2022-04-11 16:13, Yaakov Selkowitz wrote:
On 2022-04-11, 15:20, Thomas Dickey wrote:
I'm working to phase out the ftp urls on my main website,
and see these files in cygwinports using the ftp urls:
byacc/byacc.cygport
dialog/dialog.cygport
diffstat/diffstat.cygport
luit/luit.cygport
ncurses/ncurses.cygport
tack/tack.cygport
xterm/xterm.cygport
The change is
        ftp://ftp.invisible-island.net/XXX
to
        https://invisible-island.net/archives/XXX
At the moment I have files in both places, and am working to have
package scripts updated before pulling the plug on ftp.

...build repos for some packages:
        <https://cygwin.com/git/cygwin-packages/>
or
        <https://cygwin.com/git?p=git/cygwin-packages/PACKAGE.git>

I don't see lynx or tack in that.
(the summary pages don't tell me how they were packaged)

Attached Cygwin cygport package build script definitions; for cygport docs see:

        https://cygwin.github.io/cygport/cygport_in.html

and note similarities to Gentoo portage. Information is often very similar to RedHat Fedora RPM packages, as Cygwin core is supported by RedHat volunteers, on RH donated and managed servers and networks, often building using cross-built tools on Fedora servers, taking base info from Fedora spec files, and applying patches directly from Fedora repos; sometimes also taking from Debian and/or OpenSuSE e.g. compare Fedora spec files and patches to Cygwin cygport files etc.

From your commits and fork, you are aware of:

        https://src.fedoraproject.org/rpms/lynx/tree/rawhide

and those for your other packages.

and where those had not been committed, downloaded and scanned the package
sources, to produce the attached package info.
You missed mentioning your lynx and vttest packages Cygwin provides; Cygwin

The above repos hold current build files, plus WIP and test versions under
playground branches.

I'm not moving lynx at the moment (it's going to be as much work as
the first batch -- best done separately for several reasons on my end).
Also, since it's not in
        https://github.com/cygwinports/lynx
but seen here - an old version:
        
https://cygwin.com/cgi-bin2/package-cat.cgi?file=x86_64%2Flynx-src%2Flynx-2.8.7-2-src&grep=lynx
I put that off for further investigation.

All the packages from your site still refer to your FTP URIs:
byacc, dialog, diffstat, luit, lynx, ncurses, tack, vttest, xterm.
We can certainly update the maintained package URIs so future releases use
your web archive rather than FTP.

Rather than look at CygwinPorts/-Extra which are at least a couple of years
old, you can look in the above repos, or Cygwin source package summaries:
        https://cygwin.com/packages/src_package_list.html
or
        https://cygwin.com/cygwin/packages/summary/lynx-src.html

heh - one of the ones using "lynx.browser.org" as the homepage
it should be
        https://lynx.invisible-island.net/
see
        https://invisible-island.net/lynx/lynx-develop.html
which explains why it's not been lynx.isc.org since 2015.
"lynx.browser.org" is "RP", mentioned here:
        https://lynx.invisible-island.net/current/CHANGES.html

        https://cygwin.com/cygwin/packages/summary/tack-src.html

homepage should be
        https://invisible-island.net/ncurses/tack.html

Package Version         Maintainer      Git/Cygwin-Packages     Repo/Source 
Cygport
byacc   20170430        ORPHANED (YS)                   
ftp://invisible-island.net/byacc/byacc-${VERSION}.tgz
dialog  1.3-3.20170131  ORPHANED (YS)                   
ftp://invisible-island.net/dialog/dialog-${VERSION}-${RELEASE#*.}.tgz
diffstat        1.64            Eric Blake/Brian Inglis         
ftp://ftp.invisible-island.net/$PN/$P.tgz
indent  2.2.12          Jari Aalto              no repo 
http://deb.debian.org/debian/pool/main/i/indent/indent_2.2.12.orig.tar.xz
                                                                
https://ftpmirror.gnu.org/gnu/indent/indent-2.2.12.tar.xz       original
luit    20220111        Jon Turney                      
ftp://ftp.invisible-island.net/luit/luit-${VERSION}.tgz
lynx    2.8.9-13        Corinna Vinschen        no repo 
ftp://ftp.invisible-island.net/pub/lynx/tarballs/$SRC_DIR.tar.bz2
ncurses 6.1-1.20190727  ORPHANED (YS)                   
ftp://ftp.invisible-island.net/ncurses/current/ncurses-${VERSION}-${RELEASE#*.}.tgz
tack    1.08-2.20190721 ORPHANED                no repo 
ftp://ftp.invisible-island.net/ncurses/current/tack-${VERSION}-${RELEASE#*.}.tgz";

I assume "no repo" refers to cygwin's repositories.

Correct - specifically git/cygwin-packages where we check in our package build and patch updates.

tin             2.4.3           Corinna Vinschen        no repo 
ftp://ftp.tin.org/pub/news/clients/tin/v2.4/${P}.tar.xz
vttest  20220215        Brian Inglis                    
ftp://ftp.invisible-island.net/$NAME/$NAME-$VERSION.tgz
xterm   370             Thomas Wolff                    
ftp://ftp.invisible-island.net/xterm/current/xterm-${VERSION%[a-z]}.tgz

You can download and examine any source package from a nearby Cygwin mirror (often at a local university even if not advertised or official):

        <https://cygwin.com/mirrors.html#sitelist>
e.g.

<https://mirrors.kernel.org/sourceware/cygwin/x86_64/release/lynx/>
<https://mirrors.kernel.org/sourceware/cygwin/x86_64/release/tack/>

etc. - ditto for x86, and similar for noarch packages.
If any problems, check: <https://cygwin.com/mirrors-report.html>

--
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

This email may be disturbing to some readers as it contains
too much technical detail. Reader discretion is advised.
[Data in binary units and prefixes, physical quantities in SI.]
#|/usr/bin/cygport
# lynx.cygport - lynx Cygwin package build control script definitions

NAME=lynx
VERSION=2.8.9
RELEASE=1

CATEGORY="Web"
SUMMARY="A text-based Web Browser"
DESCRIPTION="Lynx is a text-based Web browser. Lynx does not display any images,
but it does support frames, tables, and most other HTML tags. One
advantage Lynx has over graphical browsers is speed; Lynx starts and
exits quickly and swiftly displays web pages."

HOMEPAGE=http://lynx.invisible-island.net/
SRC_DIR=$NAME${VERSION}rel.$RELEASE
#SRC_URI=http://invisible-mirror.net/archives/lynx/tarballs/$SRC_DIR.tar.bz2
#       mirror unreliable under scallywag
SRC_URI=ftp://ftp.invisible-island.net/pub/lynx/tarballs/$SRC_DIR.tar.bz2
SRC_URI+=" $SRC_URI.asc"
PATCH_URI=lynx-2.8.6-backgrcolor.patch
#       lynx-2.8.6-redhat.patch
#       lynx-build-fixes.patch
#       lynx-CVE-2008-4690.patch
#       lynx-2.8.7-bm-del.patch
#       lynx-2.8.7-locale.patch
#       lynx-2.8.7-ipv6arg.patch
#       lynx-2.8.7-alloca.patch
#       lynx-2.8.7-bz679266.patch
#"

DEPEND="gettext-devel libbz2-devel libiconv-devel libidn-devel"
DEPEND+=" libintl-devel libncurses-devel libssl-devel zlib-devel"
DEPEND+=" autoconf automake binutils gcc-core"
DEPEND+=" bzip2 coreutils gzip inetutils ncompress sharutils tar unzip zip"
# last line is packages for external utilities run by lynx:
# bzip2 compress gunzip gzip mv rm tar telnet unzip uudecode zcat zip
BUILD_REQUIRES="$DEPEND"

CYGCONF_ARGS="
        --libdir=/etc
         --enable-addrlist-page
         --enable-cgi-links
         --enable-charset-choice
         --enable-cjk
         --enable-default-colors
         --enable-externs
         --enable-file-upload
        --disable-font-switch
         --enable-internal-links
         --enable-ipv6
         --enable-japanese-utf8
         --enable-justify-elts
         --enable-kbd-layout
         --enable-locale-charset
         --enable-nls
         --enable-nsl-fork
         --enable-persistent-cookies
         --enable-prettysrc
         --enable-read-eta
         --enable-scrollbar
         --enable-source-cache
           --with-screen=ncursesw
           --with-ssl
           --with-bzlib
           --with-zlib
"
#        --enable-libjs
#        --enable-warnings
# Optional Features:
#          --with-build-cc=XXX          the build C compiler ($BUILD_CC)
#          --with-build-cflags=XXX      the build C compiler-flags 
($BUILD_CFLAGS)
#          --with-build-cpp=XXX         the build C preprocessor ($BUILD_CPP)
#          --with-build-cppflags=XXX    the build C preprocessor-flags 
($BUILD_CPPFLAGS)
#          --with-build-ldflags=XXX     the build linker-flags ($BUILD_LDFLAGS)
#          --with-build-libs=XXX        the build libraries (${BUILD_LIBS})
#          --with-destdir=XXX           set DESTDIR destination for install 
(default: $DESTDIR)
#          --with-system-type=XXX       test: override derived host system-type
# Development Options:
#        --enable-debug         compile w/ debugging (if \$CFLAGS is set, add 
-g there, too)
#       --disable-echo          do not display "compiling" commands
#        --enable-find-leaks    logic for testing memory leaks
#       --disable-trace         disable logic for trace code
#        --enable-vertrace      verbose trace code
#        --enable-warnings      GCC compiler warnings
#          --with-dbmalloc      test: use Conor Cahill's dbmalloc library
#          --with-dmalloc       test: use Gray Watson's dmalloc library
# Basic Configuration Options:
#       --disable-color-style   use color style (ncurses/curses)
#       --disable-full-paths    control whether full utility pathnames are used
#        --enable-gnutls-compat link with gnutls-openssl compat
#        --enable-htmlized-cfg  build htmlized lynx.cfg
#       --disable-included-msgs use included messages, for i18n support
#        --enable-ipv6          use ipv6 (with ipv4) support
#       --disable-largefile     omit support for large files
#        --enable-local-docs    link local doc-directory to help-page
#       --disable-locale-charset        use locale-charset selection logic
#        --enable-nls           use Native Language Support
#        --enable-widec         enable wide-curses features
#          --with-cfg-file{=path}       specify the default configuration file  
(default: SYSCONFDIR/lynx.cfg)
#          --with-cfg-path{=path}       specify the default configuration 
directories   (default: SYSCONFDIR)
#          --with-charsets=list limit charsets to given list of MIME names
#          --with-curses-dir=DIR        directory in which (n)curses is 
installed
#          --with-gnutls{=path} link with gnutls support
#          --with-included-gettext      use the GNU gettext library included 
here
#          --with-libiconv-prefix=DIR   search for libiconv in DIR/include and 
DIR/lib
#          --with-lss-file{=path}       specify the default style-sheet file    
(default: SYSCONFDIR/lynx.lss)
#          --with-mime-libdir=DIR       MIME data, mime.types and mailcap 
(default: /etc)
#          --with-nls-datadir=DIR       NLS data, parent of locale (default: 
PREFIX/DATADIR)
#          --with-nss-compat{=path}     link with nss_compat library if 
available
#          --with-pkg-config{=path}     enable/disable use of pkg-config
#          --with-screen=XXX    select screen type (XXX is curses (default),    
ncurses, ncursesw, pdcurses or slang)
#          --with-socks{=path}  link with socks library if available
#          --with-socks5{=path} link with socks5 library if available
#          --with-ssl{=path}    link with ssl library if available
#          --with-textdomain=PKG        NLS text-domain (default is package 
name)
# Experimental Options:
#       --disable-addrlist-page disable address-list page
#       --disable-bibp-urls     disable support for bibp: URLs
#        --enable-cjk           use experimental CJK logic
#       --disable-config-info   disable browsable configuration-info
#        --enable-default-colors        enable use of default-colors 
(ncurses/slang)
#       --disable-forms-options disable forms-based options
#        --enable-japanese-utf8 use experimental Japanese UTF-8 logic
#        --enable-kbd-layout    use experimental keyboard-layout support
#       --disable-menu-options  disable old-style option menu
#        --enable-nested-tables use experimental nested-table support
#       --disable-session-cache use session-caching code
#       --disable-sessions      use sessions code
# Miscellaneous Options:
#       --disable-alt-bindings  disable alternative line-edit bindings
#       --disable-ascii-ctypes  disable use of ascii case-conversion
#        --enable-cgi-links     support cgi links w/o a http daemon
#        --enable-change-exec   allow users to change exec options
#        --enable-charset-choice        use charset-selection logic
#        --enable-exec-links    allow lynx to execute programs accessed via a 
link
#        --enable-exec-scripts  allow lynx to execute programs inferred from a 
link
#       --disable-extended-dtd  disable extended HTML DTD logic
#        --enable-externs       use external commands
#       --disable-file-upload   disable file-upload support
#        --enable-font-switch   use Linux setfont for character-translation
#        --enable-gzip-help     install gzip'ed help files
#       --disable-idna          disable IDNA support
#        --enable-internal-links        handle following links to same doc 
differently
#       --disable-justify-elts  disable element-justification logic
#        --enable-nsl-fork      fork NSL requests, allowing them to be aborted
#       --disable-partial       disable partial-display logic
#       --disable-persistent-cookies    disable persistent-cookie support
#       --disable-prettysrc     disable colorization of HTML source
#       --disable-progressbar   disable progress-bar
#       --disable-read-eta      disable read-progress message shows ETA
#       --disable-scrollbar     disable scrollbar with mouse
#       --disable-source-cache  do not cache HTML source for parse mode changes
#        --enable-syslog        log URL requests via syslog
#        --enable-underlines    underline links rather than using boldface
#          --with-bzlib         use libbz2 for decompression of some bzip2 files
#          --with-zlib          use zlib for decompression of some gzip files
# Other Network Services:
#       --disable-finger        disable FINGER logic
#       --disable-ftp           disable FTP logic
#       --disable-gopher        disable GOPHER logic
#       --disable-news          disable NEWS logic
#        --enable-wais          enable WAIS logic
# Directory Editor Options:
#       --disable-dired         disable optional directory-editor, DirEd
#       --disable-dired-dearchive       disable dearchiving commands
#       --disable-dired-gzip    disable "gzip", "gunzip" commands
#       --disable-dired-override        disable DirEd override keymap
#       --disable-dired-permit  disable chmod/attrib commands
#       --disable-dired-tar     disable "tar" command
#       --disable-dired-uudecode        disable "uudecode" command
#       --disable-dired-xpermit disable chmod/attrib commands
#       --disable-dired-zip     disable "zip", "unzip"  commands
#       --disable-long-list     disable long "ls -l" directory listings
#       --disable-parent-dir-refs       disable "Up-to" links in directory 
listings
# Special Libraries for PDCurses X11:
#       --disable-rpath-hack    don't add rpath options for additional libraries
#          --with-neXtaw        link with neXT Athena library
#          --with-x             use the X Window System
#          --with-Xaw3d         link with Xaw 3d library
#          --with-Xaw3dxft      link with Xaw 3d xft library
#          --with-XawPlus       link with Athena-Plus library


# must *NOT* autoreconf - custom autoconf files used
src_compile() {
    lndirs
    cd $B
    cygconf
    cygmake
}


src_install() {
    pushd $B
    cyginstall
    make install-doc install-help DESTDIR=$D \
        docdir=/usr/share/doc/lynx \
        helpdir=/usr/share/doc/lynx/lynx_help
    popd

    SITECONF=/etc/lynx-site.cfg
    echo "# Place any local lynx configuration options (proxies etc.) here." > 
$D$SITECONF
    make_etc_defaults $SITECONF
}

NAME="tack"
VERSION=1.08
RELEASE=2.20190721
CATEGORY="Utils"
SUMMARY="terminfo file utility"
DESCRIPTION="The tack program is a diagnostic that is designed to create and
verify the correctness of terminfo's.  This program can be used to create new
terminal descriptions that are not included in the standard release."
HOMEPAGE="http://invisible-island.net/ncurses/ncurses.html";
SRC_URI="ftp://ftp.invisible-island.net/ncurses/current/tack-${VERSION}-${RELEASE#*.}.tgz";
SRC_DIR="tack-${VERSION}-${RELEASE#*.}"

src_compile() {
        lndirs
        cd ${B}
        cygconf --with-ncurses ac_cv_header_term_entry_h=yes
        cygmake
}

Reply via email to