Re: [toolchain] amd64-gcc question
On Sun, Nov 15, 2015 at 04:04:07PM -0553, William A. Mahaffey III wrote: > On 11/15/15 13:58, Gerald Pfeifer wrote: > > On Thu, 12 Nov 2015, William A. Mahaffey III wrote: > >> I pkg-installed amd64-gcc over the weekend hoping for Graphite > >> (auto-loop parallelization) support, but no go. > > When you say "amd64-gcc" where did you obtain that from? As a > > FreeBSD port/package, or somewhere else? > > I pkg-installed it originally, but as of last Monday, there was a port > as well, I did a 'portsnap fetch update' (all box-stock ports configs) & > there it was > > > > >> just did a 'portsnap fetch upgrade' & there is now a port > >> for amd64-gcc, but it includes no files & no pkg-descr file. > > This is a little weird. I have packaged GCC 4.6 (lang/gcc46), > > GCC 4.7 (lang/gcc47), GCC 4.8 (lang/gcc48), GCC 4.9 (lang/gcc49), > > GCC 5 (lang/gcc5 and lang/gcc5-devel) and GCC 6 snapshot (lang/gcc6-devel) > > as well as the "canonical" version of GCC (lang/gcc, currently > > GCC 4.8 and in the process of being moved to GCC 4.9). > > > > All of these build and package on amd64, feature pkg-descr, etc. > > And as a FreeBSD user leveraging the official FreeBSD Ports Collection > > is the recommended approach. > > > > None of them would be called amd64-gcc or similar, though. > > amd64-gcc-5.2.0 > amd64-xtoolchain-gcc-0.1 > > is what pkg calls them Those are cross toolchain packages to cross build base with modern gcc Bapt signature.asc Description: PGP signature
Re: [toolchain] amd64-gcc question
On 11/15/15 13:58, Gerald Pfeifer wrote: On Thu, 12 Nov 2015, William A. Mahaffey III wrote: I pkg-installed amd64-gcc over the weekend hoping for Graphite (auto-loop parallelization) support, but no go. When you say "amd64-gcc" where did you obtain that from? As a FreeBSD port/package, or somewhere else? I pkg-installed it originally, but as of last Monday, there was a port as well, I did a 'portsnap fetch update' (all box-stock ports configs) & there it was just did a 'portsnap fetch upgrade' & there is now a port for amd64-gcc, but it includes no files & no pkg-descr file. This is a little weird. I have packaged GCC 4.6 (lang/gcc46), GCC 4.7 (lang/gcc47), GCC 4.8 (lang/gcc48), GCC 4.9 (lang/gcc49), GCC 5 (lang/gcc5 and lang/gcc5-devel) and GCC 6 snapshot (lang/gcc6-devel) as well as the "canonical" version of GCC (lang/gcc, currently GCC 4.8 and in the process of being moved to GCC 4.9). All of these build and package on amd64, feature pkg-descr, etc. And as a FreeBSD user leveraging the official FreeBSD Ports Collection is the recommended approach. None of them would be called amd64-gcc or similar, though. amd64-gcc-5.2.0 amd64-xtoolchain-gcc-0.1 is what pkg calls them I have gotten as far as running 'make showconfig' in the various gcc* & amd64-gcc directories to see what info I could get on default config options. In all cases they gave options & said to run 'make config' to change options. I didn't even see a 'config:' entry in the Makefiles (probably included from elsewhere, but I didn't chase it). Let's focus on lang/gcc5-devel, which is the most reasonable version to enable Graphite for right now since GCC 5 is the current release series and hence most stable, but also advanced, and the -devel port is more suitable for making changes like this than the "production" variant. And indeed lang/gcc5-devel/Makefile already had the following lines, which is how options handling actually works: OPTIONS_DEFINE= BOOTSTRAP OPTIONS_DEFINE_i386=JAVA OPTIONS_DEFINE_amd64= JAVA OPTIONS_DEFAULT=BOOTSTRAP OPTIONS_DEFAULT_i386= JAVA OPTIONS_DEFAULT_amd64= JAVA I see no configure files for any of the gcc ports (I have the entire ports tree downloaded & local, & freshly updated as of a few min. ago). What is the canonical/BPP (FreeBSD 9.3R) way of recompiling a port with different config flags ? I did find ports/pkgs for the 2 main components apparently needed for Graphite support (cloog & ppl) & pkg-installed them over the weekend, so I am ready to go on that front. If you check out the GCC release notes at https://gcc.gnu.org/gcc-5/changes.html you will find that "The Graphite framework for loop optimizations no longer requires the CLooG library, only ISL version 0.14 (recommended) or 0.12.2." I just committed changes to lang/gcc6-devel and lang/gcc5-devel to add support for Graphite with a new option GRAPHITE. This is off by default, but you can enable it, rebuild the port, and then have what you've been looking for. Gerald *Excellent*, thanks muchly :-). I'll buy you a beer next time we meet ;-) -- William A. Mahaffey III -- "The M1 Garand is without doubt the finest implement of war ever devised by man." -- Gen. George S. Patton Jr. ___ freebsd-toolchain@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-toolchain To unsubscribe, send any mail to "freebsd-toolchain-unsubscr...@freebsd.org"
Re: [toolchain] amd64-gcc question
On Sun, Nov 15, 2015 at 08:52:00PM +0100, Gerald Pfeifer wrote: > On Thu, 12 Nov 2015, William A. Mahaffey III wrote: > > I pkg-installed amd64-gcc over the weekend hoping for Graphite > > (auto-loop parallelization) support, but no go. > > When you say "amd64-gcc" where did you obtain that from? As a > FreeBSD port/package, or somewhere else? This is a port which is only intended to be used for cross building base with a modern gcc, it is a "bastardized gcc" that should only be used as an external toolchain for building base. > > > just did a 'portsnap fetch upgrade' & there is now a port > > for amd64-gcc, but it includes no files & no pkg-descr file. > > This is a little weird. I have packaged GCC 4.6 (lang/gcc46), > GCC 4.7 (lang/gcc47), GCC 4.8 (lang/gcc48), GCC 4.9 (lang/gcc49), > GCC 5 (lang/gcc5 and lang/gcc5-devel) and GCC 6 snapshot (lang/gcc6-devel) > as well as the "canonical" version of GCC (lang/gcc, currently > GCC 4.8 and in the process of being moved to GCC 4.9). > > All of these build and package on amd64, feature pkg-descr, etc. > And as a FreeBSD user leveraging the official FreeBSD Ports Collection > is the recommended approach. > > None of them would be called amd64-gcc or similar, though. > > > I have gotten as far as running 'make showconfig' in the various gcc* & > > amd64-gcc directories to see what info I could get on default config > > options. In all cases they gave options & said to run 'make config' to > > change options. I didn't even see a 'config:' entry in the Makefiles > > (probably included from elsewhere, but I didn't chase it). > > Let's focus on lang/gcc5-devel, which is the most reasonable version > to enable Graphite for right now since GCC 5 is the current release > series and hence most stable, but also advanced, and the -devel port > is more suitable for making changes like this than the "production" > variant. > > And indeed lang/gcc5-devel/Makefile already had the following lines, > which is how options handling actually works: > > OPTIONS_DEFINE= BOOTSTRAP > OPTIONS_DEFINE_i386=JAVA > OPTIONS_DEFINE_amd64= JAVA > OPTIONS_DEFAULT=BOOTSTRAP > OPTIONS_DEFAULT_i386= JAVA > OPTIONS_DEFAULT_amd64= JAVA > > > I see no configure files for any of the gcc ports (I have the entire > > ports tree downloaded & local, & freshly updated as of a few min. ago). > > What is the canonical/BPP (FreeBSD 9.3R) way of recompiling a port with > > different config flags ? > > > > I did find ports/pkgs for the 2 main components apparently needed for > > Graphite support (cloog & ppl) & pkg-installed them over the weekend, > > so I am ready to go on that front. > > If you check out the GCC release notes at > https://gcc.gnu.org/gcc-5/changes.html > you will find that "The Graphite framework for loop optimizations no > longer requires the CLooG library, only ISL version 0.14 (recommended) > or 0.12.2." > > I just committed changes to lang/gcc6-devel and lang/gcc5-devel to > add support for Graphite with a new option GRAPHITE. This is off > by default, but you can enable it, rebuild the port, and then have > what you've been looking for. > > Gerald > ___ > freebsd-toolchain@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-toolchain > To unsubscribe, send any mail to "freebsd-toolchain-unsubscr...@freebsd.org" signature.asc Description: PGP signature
Re: [toolchain] amd64-gcc question
On Thu, 12 Nov 2015, William A. Mahaffey III wrote: > I pkg-installed amd64-gcc over the weekend hoping for Graphite > (auto-loop parallelization) support, but no go. When you say "amd64-gcc" where did you obtain that from? As a FreeBSD port/package, or somewhere else? > just did a 'portsnap fetch upgrade' & there is now a port > for amd64-gcc, but it includes no files & no pkg-descr file. This is a little weird. I have packaged GCC 4.6 (lang/gcc46), GCC 4.7 (lang/gcc47), GCC 4.8 (lang/gcc48), GCC 4.9 (lang/gcc49), GCC 5 (lang/gcc5 and lang/gcc5-devel) and GCC 6 snapshot (lang/gcc6-devel) as well as the "canonical" version of GCC (lang/gcc, currently GCC 4.8 and in the process of being moved to GCC 4.9). All of these build and package on amd64, feature pkg-descr, etc. And as a FreeBSD user leveraging the official FreeBSD Ports Collection is the recommended approach. None of them would be called amd64-gcc or similar, though. > I have gotten as far as running 'make showconfig' in the various gcc* & > amd64-gcc directories to see what info I could get on default config > options. In all cases they gave options & said to run 'make config' to > change options. I didn't even see a 'config:' entry in the Makefiles > (probably included from elsewhere, but I didn't chase it). Let's focus on lang/gcc5-devel, which is the most reasonable version to enable Graphite for right now since GCC 5 is the current release series and hence most stable, but also advanced, and the -devel port is more suitable for making changes like this than the "production" variant. And indeed lang/gcc5-devel/Makefile already had the following lines, which is how options handling actually works: OPTIONS_DEFINE= BOOTSTRAP OPTIONS_DEFINE_i386=JAVA OPTIONS_DEFINE_amd64= JAVA OPTIONS_DEFAULT=BOOTSTRAP OPTIONS_DEFAULT_i386= JAVA OPTIONS_DEFAULT_amd64= JAVA > I see no configure files for any of the gcc ports (I have the entire > ports tree downloaded & local, & freshly updated as of a few min. ago). > What is the canonical/BPP (FreeBSD 9.3R) way of recompiling a port with > different config flags ? > > I did find ports/pkgs for the 2 main components apparently needed for > Graphite support (cloog & ppl) & pkg-installed them over the weekend, > so I am ready to go on that front. If you check out the GCC release notes at https://gcc.gnu.org/gcc-5/changes.html you will find that "The Graphite framework for loop optimizations no longer requires the CLooG library, only ISL version 0.14 (recommended) or 0.12.2." I just committed changes to lang/gcc6-devel and lang/gcc5-devel to add support for Graphite with a new option GRAPHITE. This is off by default, but you can enable it, rebuild the port, and then have what you've been looking for. Gerald ___ freebsd-toolchain@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-toolchain To unsubscribe, send any mail to "freebsd-toolchain-unsubscr...@freebsd.org"
Re: amd64-gcc question
On 11/14/15 18:36, William A. Mahaffey III wrote: On 11/12/15 08:20, William A. Mahaffey III wrote: Howdy, new to this list. I posted this to FreeBSD-users & was advised to try this list or the GNU GCC list, so here goes: I pkg-installed amd64-gcc over the weekend hoping for Graphite (auto-loop parallelization) support, but no go. I looked around over the weekend & found that there was no port for that package, only the pkg. I just did a 'portsnap fetch upgrade' & there is now a port for amd64-gcc, but it includes no files & no pkg-descr file. I determined over the weekend that the gcc's from about V4.3 on can indeed be built w/ Graphite support, but you need to do it manually. I found a post dated 2010 from someone who did it under linux: http://openwall.info/wiki/internal/gcc-local-build. I see no configure files for any of the gcc ports (I have the entire ports tree downloaded & local, & freshly updated as of a few min. ago). What is the canonical/BPP (FreeBSD 9.3R) way of recompiling a port with different config flags ? I did find ports/pkgs for the 2 main components apparently needed for Graphite support (cloog & ppl) & pkg-installed them over the weekend, so I am ready to go on that front. I have gotten as far as running 'make showconfig' in the various gcc* & amd64-gcc directories to see what info I could get on default config options. In all cases they gave options & said to run 'make config' to change options. I didn't even see a 'config:' entry in the Makefiles (probably included from elsewhere, but I didn't chase it). I only want to make the minimum # of config mods necessary (trusting that pkg/port maintainers probably know more than I about their various pkg's & ports) to add the cloog & ppl support & recompile. I have been using pkg almost exclusively to maintain my (now 3) FreeBSD 9.3R boxen, except for recompiling the linux-c6 flash plugin for this box whenever it get upgraded, so I have *no* experience with getting more nitty-gritty w/ FreeBSD ports than that :-/. TIA & have a good one. BTW: [wam@devbox, pre, 8:19:58am] 676 % uname -a FreeBSD devbox 9.3-RELEASE-p24 FreeBSD 9.3-RELEASE-p24 #0: Sat Aug 22 01:54:44 UTC 2015 r...@amd64-builder.daemonology.net:/usr/obj/usr/src/sys/GENERIC amd64 [wam@devbox, pre, 8:20:00am] 677 % sysctl -A | grep -A1 -B1 model hw.machine: amd64 hw.model: AMD A8-6500 APU with Radeon(tm) HD Graphics hw.ncpu: 4 -- dev.rgephy.0.%location: phyno=1 dev.rgephy.0.%pnpinfo: oui=0xe04c model=0x0 rev=0x0 dev.rgephy.0.%parent: miibus0 [wam@devbox, pre, 8:20:12am] 678 % Updated info & a question or 2: [wam@devbox, pre, 1:07:58pm] 876 % ^8^9^ gcc49 -v --help Using built-in specs. COLLECT_GCC=gcc49 COLLECT_LTO_WRAPPER=/usr/local/libexec/gcc49/gcc/x86_64-portbld-freebsd9.3/4.9.4/lto-wrapper Usage: gcc49 [options] file... Options: -pass-exit-codes Exit with highest error code from a phase --help Display this information --target-helpDisplay target specific command line options --help={common|optimizers|params|target|warnings|[^]{joined|separate|undocumented}}[,...] Display specific types of command line options --versionDisplay compiler version information -dumpspecs Display all of the built in spec strings -dumpversion Display the version of the compiler -dumpmachine Display the compiler's target processor -print-search-dirs Display the directories in the compiler's search path -print-libgcc-file-name Display the name of the compiler's companion library -print-file-name= Display the full path to library -print-prog-name= Display the full path to compiler component -print-multiarch Display the target's normalized GNU triplet, used as a component in the library path -print-multi-directory Display the root directory for versions of libgcc -print-multi-lib Display the mapping between command line options and multiple library search directories -print-multi-os-directory Display the relative path to OS libraries -print-sysroot Display the target libraries directory -print-sysroot-headers-suffix Display the sysroot suffix used to find headers -Wa,Pass comma-separated on to the assembler -Wp,Pass comma-separated on to the preprocessor -Wl,Pass comma-separated on to the linker -Xassembler Pass on to the assembler -Xpreprocessor Pass on to the preprocessor -XlinkerPass on to the linker -save-temps Do not delete intermediate files -save-temps=Do not delete intermediate files -no-canonical-prefixes Do not canonicalize paths when building relative prefixes to other gcc components -pipeUse pipes rather than intermediat