Web lists-archives.com

Re: [Mingw-users] GCC-4.9.3 is now our current release




-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 19/03/16 22:18, ralph engels wrote:
> I have applied to the pthreads-w32 list so that we can discuss
> further changes needed.

I don't know if that list is still active; I've been communicating
directly with Ross Johnson, (the pthreads-win32 maintainer).  FWIW,
you may find my current pthreads-win32 patch set here:
https://sourceforge.net/u/keithmarshall/pthreads-win32-patches/ci/master
/tree/

> With the preliminary work done it should hopefully not be to hard, 
> keeping pthreads-w32 upto speed with gcc development.

Hopefully not.  I've now managed to successfully build a Linux hosted
GCC-5.3.0-mingw32 cross-compiler, and I've then used that to complete
a crossed-native build; to achieve that, I didn't need a single patch
in the GCC source tree, associated with the pthreads-win32
GC-small-static library used in the build -- I simply will not apply
patches willy-nilly, without a clear understanding of why they are
needed, and what they fix; I needed very few which met that criterion.

> A maintainer is also needed, im not sure if my skillset is big
> enough just yet, but if need be i will take it into consideration.

Sure, but I simply don't have the time, nor the inclination, to become
embroiled in mainstream GCC maintenance for MinGW.org; if I can build
a cross-compiler, and matching cross-native build, with an absolute
bare minimum of well understood patches, and package it in accordance
with the attached package specification, then I'm willing to do so
from time to time, but I need it to build mostly OOTB.

- -- 
Regards,
Keith.

Public key available from keys.gnupg.net
Key fingerprint: C19E C018 1547 DE50 E1D4 8F53 C0AD 36C6 347E 5A3F
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.20 (GNU/Linux)

iQIcBAEBAgAGBQJW7dfhAAoJEMCtNsY0flo/LuIQAKDgtMMGlRllvZdsmHxZUdu1
I2+C3u1eh23JI3iZB+5QxLw9D2Uv2Ezrocbm3tvYRbYuZvp/uG5ixR/jNKJu0EvY
P8wWOty/sW5ywLLYoF4SKMv4MNs6fBK1A85z/I8ffDO/q0oIyruPYE3NaFwljD2c
p+4FY+R45Wn0ONnQw8+zkyZnSmH4XMATlSGQmNBlyPvDmFqhQxf1+mzQYk+DPmUj
BPMLzDYv3xK4JTeMyvG5ZCMdYOBoF+lY5IaXIAmIHkmvmHgJf6xpjYh4FRF7XUJB
ux9uCEnOlaozZeZ7xZeSWnbVYDnWYhojA97GrmgNdKbqt8agwhwgLAHhz1rjxLLk
yyO8PxhwPrVnN0Mm5HTDtveWyzmwanIjCHe0kcl4qzAv8BCRiCqmfh5NsVu3BLuv
bpN4AhntWajj3OG5M8hIeZ34i4LSkabKEL4dgO/9ViyXxZ0NA31i0d8bTpiJvlFT
g1R5JkafS8r+mbRL6fnKYBLpINf+DIcZqLC/usUk4hLU3dlS38brxq736k5OH7jt
VwryqAjAeXe2nYEzM56FVpUJSxNa1g+D/UAz7ihlQ2s5KUXlTzZO+Evg+Ypr6G13
u8TkIw2V3RFXT2MujmdSI6emxfPXURipCpdxZDkgfquOBCnjW+30K3gUDjbR19jP
tIkfYfswZlJCbEYyoEnR
=enIW
-----END PGP SIGNATURE-----
# gcc-5.3.0-mingw32.pkgspec
#
# Package specification file -- automatically generated by mingw-pkg
#
# Package name and version must be explicitly specified; these appear
# as the initial part of the package name, as interpreted by mingw-get.
#
pkgname 	gcc
pkgversion	5.3.0

# Contributed by Keith Marshall <keithmarshall@xxxxxxxxxxxxxxxxxxxxx>
# Copyright (C) 2016, MinGW.org Project
#
# -----------------------------------------------------------------------------
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
# THE SOFTWARE.
#
# -----------------------------------------------------------------------------

# A release identifier is optional; if specified, it will be appended
# to the package name and version, delimited by an intervening hyphen.
#
# pkgrelease 	1

# A system architecture identifier is required for any package which
# is to be delivered by mingw-get; it establishes the sub-system type
# identifier which will appear within the package name, following the
# package name, version and release identifiers.
#
arch		mingw32

# The pkgtype specification determines the packaging method to be used
# for all distributable component packages, and the final extension to
# be appended to the component package names.  The default is tar.gz;
# alternatives supported by mingw-get are tar.bz2, tar.lzma and tar.xz
#
pkgtype 	tar.gz

# Optional alias, title, and description specifications may be provided;
# these are used by 'mingw-pkg mkxml', to specify the associated entries
# in mingw-get's xml catalogue specification for this package.
#
# Each of these should be specified only once; 'aliases' is permitted as
# a synonym for 'alias', where the associated value is a space separated
# list of multiple alias names.
#
alias		gcc
title		"The GNU Compiler Collection"
description	"
A collection of packages, which together provide the GNU C Compiler, and
optionally, the GNU C++ Compiler, GNU Object-C Compiler, GNU Object-C++
Compiler, and GNU FORTRAN Compiler.
"

# An affiliate specification is also optional; it identifies a package
# category with which mingw-get will affiliate this package.  Unlike
# the alias, title, and description specifications, multiple affiliate
# specifications are permitted, allowing for affiliation of the package
# with multiple mingw-get categories.
#
affiliate	"MinGW Base System"

# Configuration options for GCC build
#
option		configure --prefix=/mingw
option		configure --disable-win32-registry
option		configure --target=$ARCH --with-arch=i586
option		configure --enable-languages=c,c++,objc,obj-c++,fortran,ada
option		configure --enable-static --enable-shared --enable-threads=posix
option		configure --with-dwarf2 --disable-sjlj-exceptions
option		configure --enable-version-specific-runtime-libs
option		configure --enable-libstdcxx-debug
option		configure --with-tune=generic
option		configure --enable-libgomp
option		configure --enable-nls

# The distributable package inventory is established by means of a
# collection of component specifications; each is of the form:
#
#   component  keyword  "content"
#
#   where:
#     keyword	specifies the component package class name, as it
#		will be included in the mingw-get compatible package
#		archive name, immediately preceding the pkgtype.
#     content	specifies a white-space separated list of directory
#		and/or file path names, relative to the top of the
#		staging directory tree in which the distribution is
#		prepared, which are to be passed as argument list
#		to the archiving program, so defining the content
#		for the associated component package.
#
#
# Note that GCC's "make install-strip" rule-set is broken with respect
# to libobjc; thus we override the mingw-pkg default installation option,
# to use "make install" instead.  This means that the distribution will
# be unstripped, unless we pre-stage and manually strip.
#
option		install		install

# We must also note that GCC's "make install-info" rule-set is utterly
# broken -- it installs nothing pertinent, many requisite *.info files
# are missing from the distribution, (in violation of the GNU Coding
# Standards), and the makefile rules are unable to find those which are
# distributed.  Thus, we provide the following functions, to perform
# our own staged installation of the few which are distributed.
#
stage_source_files(){
#
# Scavenge within the staged source tree, for specified files; for those
# which are found, copy them to an appropriate location within the staged
# installation tree.
#
  if test -d dist/staged/$PACKAGE-$VERSION
  then for file
    do store_staged_file `find dist/staged/$PACKAGE-$VERSION -name $file` $file
    done
  fi
}
store_staged_file(){
#
# Helper function, used by stage_source_files(), to copy files from the
# staged source tree to the staged installation tree.
#
  if test $# -eq 2; then
    mkdir -p dist/staged/$staging_dir
    test -f dist/staged/$staging_dir/$2 || cp $1 dist/staged/$staging_dir
    test -f dist/staged/$staging_dir/$2 && echo $staging_dir/$2
  fi
}

# We like to distribute a licence package, which doesn't conform to any
# requirement of the GNU Coding Standards, and isn't directly supported
# by the GCC build infrastructure.  Thus, we provide our own function,
# scavenge for licence files within the staged source tree.
#
abs_srcdir=`pwd`/dist/staged/$PACKAGE-$VERSION
select_source_wildcard_matches(){
  if test -d $abs_srcdir; then
    for pattern; do find $abs_srcdir -name "$pattern"; done
  fi
}
component  lic "
  --transform=s,$abs_srcdir,share/doc/$PACKAGE/$VERSION,
  `select_source_wildcard_matches 'COPYING*' 'LICEN[CS]E*'`
  --exclude=go --exclude=libgo --exclude=libiberty --exclude=libjava
  --exclude=libffi --exclude=libquadmath --exclude=libsanitizer
  --exclude=$PACKAGE-$VERSION/gcc --exclude=include
  --transform=s,/contrib/dotzlib,,
"
component  lang "
  share/locale/*/LC_MESSAGES
"
component  man "
  --exclude=share/man/man1/g++.1
  --exclude=share/man/man1/gfortran.1
  share/man
"
component  info "
  `staging_dir=share/info stage_source_files cpp.info gcc.info`
"

subpackage gcc-core
component  bin "
  bin/*.exe
  --exclude=bin/*[cg]++*.exe
  --exclude=bin/*fortran.exe
  --exclude=bin/gnat*.exe
  libexec/$PACKAGE/$ARCH/$VERSION/*.exe
  --exclude=libexec/$PACKAGE/$ARCH/$VERSION/cc1plus.exe
  --exclude=libexec/$PACKAGE/$ARCH/$VERSION/cc1obj*.exe
  --exclude=libexec/$PACKAGE/$ARCH/$VERSION/f951.exe
  --exclude=libexec/$PACKAGE/$ARCH/$VERSION/gnat1.exe
  libexec/$PACKAGE/$ARCH/$VERSION/install-tools
  libexec/$PACKAGE/$ARCH/$VERSION/*_plugin*
  lib/$PACKAGE/$ARCH/$VERSION/include
  --exclude=lib/$PACKAGE/$ARCH/$VERSION/include/c++
  --exclude=lib/$PACKAGE/$ARCH/$VERSION/include/objc
  lib/$PACKAGE/$ARCH/$VERSION/include-fixed
  --exclude=lib/$PACKAGE/$ARCH/$VERSION/libs??c++.*
  --exclude=lib/$PACKAGE/$ARCH/$VERSION/libgfortran*
  --exclude=lib/$PACKAGE/$ARCH/$VERSION/libobjc*.a
  lib/$PACKAGE/$ARCH/$VERSION/*.[oa]
  --exclude=*.la
"

subpackage libgcc
component  dll-1 "
  --transform=s,.*/,bin/,
  lib/$PACKAGE/$ARCH/libgcc_s_dw2-1.dll
"

subpackage gcc-g++
component  bin "
  bin/*[cg]++*.exe
  libexec/$PACKAGE/$ARCH/$VERSION/cc1plus.exe
  lib/$PACKAGE/$ARCH/$VERSION/debug
  lib/$PACKAGE/$ARCH/$VERSION/include/c++
  lib/$PACKAGE/$ARCH/$VERSION/libs??c++.*
  share/$PACKAGE-$VERSION/python
  --exclude=*.la
"
component  man "
  share/man/man1/g++.1
"

subpackage libstdc++
component  dll-6 "
  bin/libstdc++-6.dll
"

subpackage gcc-ada
component  bin "
  bin/gnat*.exe
  libexec/$PACKAGE/$ARCH/$VERSION/gnat1.exe
  lib/$PACKAGE/$ARCH/$VERSION/ada*
"

subpackage gcc-fortran
component  bin "
  bin/*fortran.exe
  libexec/$PACKAGE/$ARCH/$VERSION/f951.exe
  lib/$PACKAGE/$ARCH/$VERSION/finclude
  lib/$PACKAGE/$ARCH/$VERSION/libgfortran.*
  --exclude=*.la
"
component  info "
  `staging_dir=share/info stage_source_files gfortran.info`
"

subpackage libgfortran
component  dll-3 "
  bin/libgfortran-3.dll
"
component  man "
  share/man/man1/gfortran.1
"

subpackage gcc-objc
component  bin "
  libexec/$PACKAGE/$ARCH/$VERSION/cc1obj*.exe
  lib/$PACKAGE/$ARCH/$VERSION/include/objc
  lib/$PACKAGE/$ARCH/$VERSION/libobjc*.a
"

subpackage libobjc
component  dll-4 "
  bin/libobjc-4.dll
"

subpackage libquadmath
component  dll-0 "
  bin/libquadmath-0.dll
"
component  info "
  share/info/libquadmath.info
"

subpackage libgomp
component  dll-1 "
  bin/libgomp-1.dll
"
component  info "
  share/info/libgomp.info
"

subpackage libssp
component  dll-0 "
  bin/libssp-0.dll
"
# gcc-5.3.0-mingw32.pkgspec: end of file
------------------------------------------------------------------------------
Transform Data into Opportunity.
Accelerate data analysis in your applications with
Intel Data Analytics Acceleration Library.
Click to learn more.
http://pubads.g.doubleclick.net/gampad/clk?id=278785231&iu=/4140
_______________________________________________
MinGW-users mailing list
MinGW-users@xxxxxxxxxxxxxxxxxxxxx

This list observes the Etiquette found at 
http://www.mingw.org/Mailing_Lists.
We ask that you be polite and do the same.  Disregard for the list etiquette may cause your account to be moderated.

_______________________________________________
You may change your MinGW Account Options or unsubscribe at:
https://lists.sourceforge.net/lists/listinfo/mingw-users
Also: mailto:mingw-users-request@xxxxxxxxxxxxxxxxxxxxx?subject=unsubscribe