Index: head/devel/gprbuild/Makefile =================================================================== --- head/devel/gprbuild/Makefile (revision 390735) +++ head/devel/gprbuild/Makefile (revision 390736) @@ -1,79 +1,39 @@ # Created by: John Marino # $FreeBSD$ PORTNAME= gprbuild PORTVERSION= ${SNAPSHOT} -PORTREVISION= 1 CATEGORIES= devel MASTER_SITES= http://downloads.dragonlace.net/src/ DISTNAME= gprbuild-gpl-${YEAR}-src MAINTAINER= marino@FreeBSD.org COMMENT= Adacore multi-language software build tool LICENSE= GPLv3 -BUILD_DEPENDS+= xmlada>=4.4:${PORTSDIR}/textproc/xmlada \ - gnat_util>=20140422:${PORTSDIR}/lang/gnat_util +BUILD_DEPENDS= xmlada>=4.4:${PORTSDIR}/textproc/xmlada -YEAR= 2014 -SNAPSHOT= 20140417 -GNU_CONFIGURE= yes -USES= ada gmake -MAKE_ARGS+= BUILD=production -MAKE_ARGS+= PROCESSORS=${MAKE_JOBS_NUMBER} -PORTDOCS= html txt pdf info -PORTEXAMPLES= * +YEAR= 2015 +SNAPSHOT= 20150506 +USES= ada +MAKE_ARGS= PROCESSORS=${MAKE_JOBS_NUMBER} +PORTDOCS= html txt pdf +CONHOST= ${CONFIGURE_TARGET} +INSTALL_TARGET= install -OPTIONS_DEFINE= DOCS EXAMPLES +OPTIONS_DEFINE= DOCS +DOCS_INSTALL_TARGET= install-docs -.include +.include -.if ${ADAXX:Mgcc} -EXTRA_PATCHES= ${FILESDIR}/extrapatch-protocol.adb \ - ${FILESDIR}/extrapatch-src_gprbuild-main.adb \ - ${FILESDIR}/extrapatch-src_gprslave.adb \ - ${FILESDIR}/extrapatch-src_rewrite__data.ada -.else -EXTRA_PATCHES= ${FILESDIR}/extrapatch-5-gprbuild-main.adb \ - ${FILESDIR}/extrapatch-5-gprbuild-slave.adb \ - ${FILESDIR}/extrapatch-5-gprbuild-post.adb \ - ${FILESDIR}/extrapatch-5-gprlib.adb -.endif - -do-build: -# Recreate the do-build target without -j parameter -# It interferes with PROCESSORS make argument - (cd ${WRKSRC} && ${SETENV} ${MAKE_ENV} \ - ${MAKE_CMD} ${MAKE_ARGS} ${ALL_TARGET}) - post-patch: - @${REINPLACE_CMD} -e "s,@AUXPREFIX@,${PREFIX}/gcc-aux," \ + ${CP} ${FILESDIR}/Makefile.BSD ${WRKSRC}/Makefile + @${REINPLACE_CMD} -i "" -e "s,@AUXPREFIX@,${PREFIX}/gcc5-aux," \ ${WRKSRC}/share/gprconfig/compilers.xml - # OpenVMS was removed from GCC 5, and it obviously isn't used - # here so replace boolean check to False so it builds on both -.if ${ADAXX:Mgcc} - # Try_Help is part of GNAT Pro, but it's not in GCC 4.9 yet - # It's not strictly needed. Before it just repeated usage. - # There are other messages; just suppress Try_Help on 4 files - ${REINPLACE_CMD} -e '/Try_Help;/d' \ - -e 's|Hostparm.OpenVMS|False|' ${WRKSRC}/src/*-main.adb \ - ${WRKSRC}/src/gprbind.adb ${WRKSRC}/src/gprlib.adb -.else # gcc5-aux - ${REINPLACE_CMD} -e 's|Hostparm.OpenVMS|False|' \ - ${WRKSRC}/src/*-main.adb \ - ${WRKSRC}/src/gprbind.adb \ - ${WRKSRC}/src/gprlib.adb -.endif + ${SED} -e 's|@host@|${CONHOST}|' \ + ${WRKSRC}/src/gprconfig-sdefault.ads.in > \ + ${WRKSRC}/src/gprconfig-sdefault.ads + ${MV} ${WRKSRC}/share/gprconfig/*.orig ${WRKSRC}/obj-cov -post-install: -.if !${PORT_OPTIONS:MDOCS} - ${RM} -rf ${STAGEDIR}${DOCSDIR} -.endif -.if !${PORT_OPTIONS:MEXAMPLES} - ${RM} -rf ${STAGEDIR}${EXAMPLESDIR} -.endif - (cd ${STAGEDIR}${PREFIX} && ${FIND} share/examples -type d -empty | \ - ${SORT} -dr | ${XARGS} ${RMDIR}) - -.include +.include Index: head/devel/gprbuild/distinfo =================================================================== --- head/devel/gprbuild/distinfo (revision 390735) +++ head/devel/gprbuild/distinfo (revision 390736) @@ -1,2 +1,2 @@ -SHA256 (gprbuild-gpl-2014-src.tar.gz) = 3c8986ff5f83cc0d3ee69f6e71d9f69a7eb1a7e2656493c829b18fb55c4ad5ac -SIZE (gprbuild-gpl-2014-src.tar.gz) = 2384695 +SHA256 (gprbuild-gpl-2015-src.tar.gz) = 5d5bbc8c57075250c264e2f15d9949383450ac696eb8a90803c2a36b55ecd0e2 +SIZE (gprbuild-gpl-2015-src.tar.gz) = 3424715 Index: head/devel/gprbuild/files/patch-src_gprinstall-install.adb =================================================================== --- head/devel/gprbuild/files/patch-src_gprinstall-install.adb (revision 390735) +++ head/devel/gprbuild/files/patch-src_gprinstall-install.adb (nonexistent) @@ -1,14 +0,0 @@ -FSF GNAT 4.9 doesn't have the mode setting capability in Set_Executable -procedure. At least GPRBuild 2012 didn't use it. - ---- src/gprinstall-install.adb.orig 2014-04-17 09:50:17.000000000 +0000 -+++ src/gprinstall-install.adb -@@ -723,7 +723,7 @@ package body Gprinstall.Install is - - if Executable then - Set_Executable -- (Dest_Filename, Mode => S_Owner + S_Group + S_Others); -+ (Dest_Filename); - end if; - - -- Add file to manifest Property changes on: head/devel/gprbuild/files/patch-src_gprinstall-install.adb ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/devel/gprbuild/files/extrapatch-5-gprbuild-main.adb =================================================================== --- head/devel/gprbuild/files/extrapatch-5-gprbuild-main.adb (revision 390735) +++ head/devel/gprbuild/files/extrapatch-5-gprbuild-main.adb (nonexistent) @@ -1,30 +0,0 @@ ---- src/gprbuild-main.adb.orig 2014-04-17 09:50:17 UTC -+++ src/gprbuild-main.adb -@@ -182,11 +182,22 @@ procedure Gprbuild.Main is - end if; - - if Is_Allowed_Language (Main_Id.Source.Language.Name) then -- Queue.Insert -- (Source => (Format => Format_Gprbuild, -- Tree => Main_Id.Tree, -- Id => Main_Id.Source), -- With_Roots => Builder_Data (Main_Id.Tree).Closure_Needed); -+ declare -+ Closure : Boolean := -+ Builder_Data (Main_Id.Tree).Closure_Needed; -+ begin -+ if Main_Id.Source.Language.Config.Kind /= Unit_Based -+ and then Main_Id.Source.Roots = null -+ then -+ Closure := False; -+ end if; -+ Queue.Insert -+ (Source => (Format => Format_Gprbuild, -+ Tree => Main_Id.Tree, -+ Id => Main_Id.Source, -+ Closure => Closure), -+ With_Roots => Builder_Data (Main_Id.Tree).Closure_Needed); -+ end; - - -- If a non Ada main has no roots, then all sources need to be - -- compiled, so no need to check for closure. Property changes on: head/devel/gprbuild/files/extrapatch-5-gprbuild-main.adb ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/devel/gprbuild/files/patch-Makefile.in =================================================================== --- head/devel/gprbuild/files/patch-Makefile.in (revision 390735) +++ head/devel/gprbuild/files/patch-Makefile.in (nonexistent) @@ -1,75 +0,0 @@ ---- Makefile.in.orig 2013-12-21 15:45:27.000000000 +0000 -+++ Makefile.in -@@ -64,7 +64,7 @@ ADA_GEN_SUBDIR=gnat - - .PHONY: all distall gprbuild gprconfig gprclean gprinstall \ - copy_gnat_src complete bootstrap --all: $(xmlada_build_target) $(ADA_GEN_SUBDIR)/stamp-snames -+all: $(xmlada_build_target) - ${GNATMAKE} $(xmlada_prj_flags) -Pgprbuild -XBUILD=${BUILD} - - distall: -@@ -124,45 +124,35 @@ bootstrap-clean: - -XBUILD_TOOL=gprbuild - - install: install.data install.bin -- -${MKDIR} ${datadir}/gpr -- $(RM) -r ${datadir}/examples/gprbuild -- -${MKDIR} ${datadir}/examples/gprbuild -- ${CP} -r examples/* ${datadir}/examples/gprbuild -- ${RM} -r ${datadir}/doc/gprbuild -- -${MKDIR} ${datadir}/doc/gprbuild -+ -${MKDIR} ${DESTDIR}${datadir}/gpr \ -+ ${DESTDIR}${datadir}/examples/gprbuild \ -+ ${DESTDIR}${datadir}/doc/gprbuild -+ ${CP} -r examples/* ${DESTDIR}${datadir}/examples/gprbuild - for format in html txt pdf info; do \ - if [ -d doc/$$format ] ; then \ -- ${MKDIR} ${datadir}/doc/gprbuild/$$format; \ -- ${CP} doc/$$format/* ${datadir}/doc/gprbuild/$$format; \ -+ ${MKDIR} ${DESTDIR}${datadir}/doc/gprbuild/$$format; \ -+ ${CP} doc/$$format/* ${DESTDIR}${datadir}/doc/gprbuild/$$format; \ - if [ $$format = html ] ; then \ -- ${CP} doc/*.png ${datadir}/doc/gprbuild/html; \ -+ ${CP} doc/*.png ${DESTDIR}${datadir}/doc/gprbuild/html; \ - sed -e "s/.*//" doc/gprbuild_gps.xml \ -- > ${datadir}/doc/gprbuild/html/gps_index.xml; \ -+ > ${DESTDIR}${datadir}/doc/gprbuild/html/gps_index.xml; \ - fi; \ - fi; \ - done - - install.data: force -- -${MKDIR} ${datadir}/gprconfig -- ${CP} share/gprconfig/*.xml ${datadir}/gprconfig -- ${CP} share/gprconfig/gprconfig.xsd ${datadir}/gprconfig -- -${MKDIR} ${datadir}/gpr -- ${CP} share/_default.gpr ${datadir}/gpr -+ -${MKDIR} ${DESTDIR}${datadir}/gprconfig ${DESTDIR}${datadir}/gpr -+ ${BSD_INSTALL_DATA} share/gprconfig/*.xml \ -+ share/gprconfig/gprconfig.xsd ${DESTDIR}${datadir}/gprconfig -+ ${BSD_INSTALL_DATA} share/_default.gpr ${DESTDIR}${datadir}/gpr - - install.bin: force -- -${MKDIR} ${bindir} -- ${INSTALL_PROGRAM} gprconfig${EXEXT} ${bindir} -- ${INSTALL_PROGRAM} gprbuild${EXEXT} ${bindir} -- ${INSTALL_PROGRAM} gprclean${EXEXT} ${bindir} -- ${INSTALL_PROGRAM} gprinstall${EXEXT} ${bindir} --ifeq ($(IS_WINDOWS),true) -- ${CP} src/gprinstall.exe.manifest ${bindir} -- chmod +x ${bindir}/gprinstall.exe.manifest --endif -- ${INSTALL_PROGRAM} gprslave${EXEXT} ${bindir} -- -${MKDIR} ${libexecdir}/gprbuild -- ${INSTALL_PROGRAM} gprbind${EXEXT} ${libexecdir}/gprbuild/ -- ${INSTALL_PROGRAM} gprlib${EXEXT} ${libexecdir}/gprbuild/ -+ ${MKDIR} ${DESTDIR}${libexecdir}/gprbuild -+ ${BSD_INSTALL_PROGRAM} gprconfig${EXEXT} gprbuild${EXEXT} \ -+ gprclean${EXEXT} gprinstall${EXEXT} gprslave${EXEXT} \ -+ ${DESTDIR}${bindir} -+ ${BSD_INSTALL_PROGRAM} gprbind${EXEXT} gprlib${EXEXT} \ -+ ${DESTDIR}${libexecdir}/gprbuild - - $(objdir)/gprbuild_dummies.o: src/gprbuild_dummies.c - gcc -c -o $@ $< Property changes on: head/devel/gprbuild/files/patch-Makefile.in ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/devel/gprbuild/files/extrapatch-src_gprbuild-main.adb =================================================================== --- head/devel/gprbuild/files/extrapatch-src_gprbuild-main.adb (revision 390735) +++ head/devel/gprbuild/files/extrapatch-src_gprbuild-main.adb (nonexistent) @@ -1,14 +0,0 @@ -It seems GNAT Pro makeutl.adb renamed an argument which hasn't trickled -back to FSF GCC yet. - ---- src/gprbuild-main.adb.orig 2014-04-17 09:50:17.000000000 +0000 -+++ src/gprbuild-main.adb -@@ -2099,7 +2099,7 @@ begin - - Do_Compute_Builder_Switches - (Project_Tree => Project_Tree, -- Env => Root_Environment, -+ Root_Environment => Root_Environment, - Main_Project => Main_Project); - - Queue.Initialize (Opt.One_Compilation_Per_Obj_Dir); Property changes on: head/devel/gprbuild/files/extrapatch-src_gprbuild-main.adb ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/devel/gprbuild/files/extrapatch-src_rewrite__data.ada =================================================================== --- head/devel/gprbuild/files/extrapatch-src_rewrite__data.ada (revision 390735) +++ head/devel/gprbuild/files/extrapatch-src_rewrite__data.ada (nonexistent) @@ -1,288 +0,0 @@ -This functionality was part of GPRBuild 2013, but it has since moved to -GNAT itself. Unfortunately, that's only happened for GNAT Pro so GCC 4.9 -doesn't have this GNAT.Rewrite_Data. Moveover, the GNAT Pro version has -been extended since 2013. - -Bring in the GNAT 2013 local Rewrite_Data package to build GPRBuild 2014. - ---- src/rewrite_data.ads.orig 2014-05-16 07:42:27.000000000 +0000 -+++ src/rewrite_data.ads -@@ -0,0 +1,86 @@ -+------------------------------------------------------------------------------ -+-- GNAT COMPILER COMPONENTS -- -+-- -- -+-- R E W R I T E _ D A T A -- -+-- -- -+-- S p e c -- -+-- -- -+-- Copyright (C) 2012, Free Software Foundation, Inc. -- -+-- -- -+-- This is free software; you can redistribute it and/or modify it under -- -+-- terms of the GNU General Public License as published by the Free Soft- -- -+-- ware Foundation; either version 3, or (at your option) any later ver- -- -+-- sion. This software is distributed in the hope that it will be useful, -- -+-- but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHAN- -- -+-- TABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public -- -+-- License for more details. You should have received a copy of the GNU -- -+-- General Public License distributed with this software; see file -- -+-- COPYING3. If not, go to http://www.gnu.org/licenses for a complete copy -- -+-- of the license. -- -+------------------------------------------------------------------------------ -+ -+with Ada.Streams; use Ada.Streams; -+ -+package Rewrite_Data is -+ -+ type Buffer -+ (Size, Size_Pattern, Size_Value : Stream_Element_Offset) is -+ limited private; -+ -+ function Create -+ (Pattern, Value : String; -+ Size : Stream_Element_Offset := 1_024) return Buffer; -+ -- Create and return a buffer -+ -+ procedure Write -+ (B : in out Buffer; -+ Data : Stream_Element_Array; -+ Output : not null access procedure (Data : Stream_Element_Array)); -+ -- Write Data into the buffer, call Output for any prepared data -+ -+ function Size (B : Buffer) return Natural; -+ -- Returns the current size of the buffer (count of Stream_Array_Element) -+ -+ procedure Flush -+ (B : in out Buffer; -+ Output : not null access procedure (Data : Stream_Element_Array)); -+ -- Call Output for all remaining data in the buffer. The buffer is -+ -- reset and ready for another use after this call. -+ -+ procedure Reset (B : in out Buffer); -+ pragma Inline (Reset); -+ -- Clear all data in buffer, B is ready for another use. Note that this is -+ -- not needed after a Flush. -+ -+ procedure Rewrite -+ (B : in out Buffer; -+ Input : not null access procedure -+ (Buffer : out Stream_Element_Array; -+ Last : out Stream_Element_Offset); -+ Output : not null access procedure (Data : Stream_Element_Array)); -+ -- Read data from Input, rewrite them and then call Output -+ -+private -+ -+ type Buffer -+ (Size, Size_Pattern, Size_Value : Stream_Element_Offset) is -+ limited record -+ -- Fully prepared/rewritten data waiting to be output -+ Buffer : Stream_Element_Array (1 .. Size); -+ -+ -- Current data checked, this buffer contains every piece of data -+ -- starting with the pattern. It means that at any point: -+ -- Current (1 .. Pos_C) = Pattern (1 .. Pos_C) -+ Current : Stream_Element_Array (1 .. Size_Pattern); -+ -+ -- The pattern to look for -+ Pattern : Stream_Element_Array (1 .. Size_Pattern); -+ -+ -- The value the pattern is replaced by -+ Value : Stream_Element_Array (1 .. Size_Value); -+ -+ Pos_C : Stream_Element_Offset; -- last valid element in Current -+ Pos_B : Stream_Element_Offset; -- last valid element in Buffer -+ end record; -+ -+end Rewrite_Data; ---- src/rewrite_data.adb.orig 2014-05-16 07:42:21.000000000 +0000 -+++ src/rewrite_data.adb -@@ -0,0 +1,189 @@ -+------------------------------------------------------------------------------ -+-- GNAT COMPILER COMPONENTS -- -+-- -- -+-- R E W R I T E _ D A T A -- -+-- -- -+-- B o d y -- -+-- -- -+-- Copyright (C) 2012, Free Software Foundation, Inc. -- -+-- -- -+-- This is free software; you can redistribute it and/or modify it under -- -+-- terms of the GNU General Public License as published by the Free Soft- -- -+-- ware Foundation; either version 3, or (at your option) any later ver- -- -+-- sion. This software is distributed in the hope that it will be useful, -- -+-- but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHAN- -- -+-- TABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public -- -+-- License for more details. You should have received a copy of the GNU -- -+-- General Public License distributed with this software; see file -- -+-- COPYING3. If not, go to http://www.gnu.org/licenses for a complete copy -- -+-- of the license. -- -+------------------------------------------------------------------------------ -+ -+with Ada.Unchecked_Conversion; -+ -+package body Rewrite_Data is -+ -+ use Ada; -+ -+ subtype SEO is Stream_Element_Offset; -+ -+ ------------ -+ -- Create -- -+ ------------ -+ -+ function Create -+ (Pattern, Value : String; -+ Size : Stream_Element_Offset := 1_024) return Buffer -+ is -+ -+ subtype SP is String (1 .. Pattern'Length); -+ subtype SEAP is Stream_Element_Array (1 .. Pattern'Length); -+ -+ subtype SV is String (1 .. Value'Length); -+ subtype SEAV is Stream_Element_Array (1 .. Value'Length); -+ -+ function To_SEAP is new Unchecked_Conversion (SP, SEAP); -+ function To_SEAV is new Unchecked_Conversion (SV, SEAV); -+ -+ begin -+ return B : Buffer -+ (SEO'Max (Size, SEO (Pattern'Length)), -- can't be smaller than pattern -+ SEO (Pattern'Length), -+ SEO (Value'Length)) -+ do -+ B.Pattern := To_SEAP (Pattern); -+ B.Value := To_SEAV (Value); -+ B.Pos_C := 0; -+ B.Pos_B := 0; -+ end return; -+ end Create; -+ -+ ----------- -+ -- Flush -- -+ ----------- -+ -+ procedure Flush -+ (B : in out Buffer; -+ Output : not null access procedure (Data : Stream_Element_Array)) is -+ begin -+ if B.Pos_B > 0 then -+ Output (B.Buffer (1 .. B.Pos_B)); -+ end if; -+ -+ if B.Pos_C > 0 then -+ Output (B.Current (1 .. B.Pos_C)); -+ end if; -+ -+ Reset (B); -+ end Flush; -+ -+ ----------- -+ -- Reset -- -+ ----------- -+ -+ procedure Reset (B : in out Buffer) is -+ begin -+ B.Pos_B := 0; -+ B.Pos_C := 0; -+ end Reset; -+ -+ ------------- -+ -- Rewrite -- -+ ------------- -+ -+ procedure Rewrite -+ (B : in out Buffer; -+ Input : not null access procedure -+ (Buffer : out Stream_Element_Array; -+ Last : out Stream_Element_Offset); -+ Output : not null access procedure (Data : Stream_Element_Array)) -+ is -+ Buffer : Stream_Element_Array (1 .. B.Size); -+ Last : Stream_Element_Offset; -+ begin -+ Rewrite_All : loop -+ Input (Buffer, Last); -+ exit Rewrite_All when Last = 0; -+ Write (B, Buffer (1 .. Last), Output); -+ end loop Rewrite_All; -+ -+ Flush (B, Output); -+ end Rewrite; -+ -+ ---------- -+ -- Size -- -+ ---------- -+ -+ function Size (B : Buffer) return Natural is -+ begin -+ return Natural (B.Pos_B + B.Pos_C); -+ end Size; -+ -+ ----------- -+ -- Write -- -+ ----------- -+ -+ procedure Write -+ (B : in out Buffer; -+ Data : Stream_Element_Array; -+ Output : not null access procedure (Data : Stream_Element_Array)) -+ is -+ -+ procedure Need_Space (Size : Stream_Element_Offset); -+ pragma Inline (Need_Space); -+ -+ ---------------- -+ -- Need_Space -- -+ ---------------- -+ -+ procedure Need_Space (Size : Stream_Element_Offset) is -+ begin -+ if B.Pos_B + Size > B.Size then -+ Output (B.Buffer (1 .. B.Pos_B)); -+ B.Pos_B := 0; -+ end if; -+ end Need_Space; -+ -+ begin -+ if B.Size_Pattern = 0 then -+ Output (Data); -+ -+ else -+ for K in Data'Range loop -+ if Data (K) = B.Pattern (B.Pos_C + 1) then -+ -- Store possible start of a macth -+ B.Pos_C := B.Pos_C + 1; -+ B.Current (B.Pos_C) := Data (K); -+ -+ else -+ -- Not part of pattern, if a start of a match was found, -+ -- remove it. -+ -+ if B.Pos_C /= 0 then -+ Need_Space (B.Pos_C); -+ -+ B.Buffer (B.Pos_B + 1 .. B.Pos_B + B.Pos_C) := -+ B.Current (1 .. B.Pos_C); -+ B.Pos_B := B.Pos_B + B.Pos_C; -+ B.Pos_C := 0; -+ end if; -+ -+ Need_Space (1); -+ B.Pos_B := B.Pos_B + 1; -+ B.Buffer (B.Pos_B) := Data (K); -+ end if; -+ -+ if B.Pos_C = B.Size_Pattern then -+ -- The pattern is found -+ -+ Need_Space (B.Size_Value); -+ -+ B.Buffer (B.Pos_B + 1 .. B.Pos_B + B.Size_Value) := B.Value; -+ B.Pos_C := 0; -+ B.Pos_B := B.Pos_B + B.Size_Value; -+ end if; -+ end loop; -+ end if; -+ end Write; -+ -+end Rewrite_Data; Property changes on: head/devel/gprbuild/files/extrapatch-src_rewrite__data.ada ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/devel/gprbuild/files/extrapatch-src_gprslave.adb =================================================================== --- head/devel/gprbuild/files/extrapatch-src_gprslave.adb (revision 390735) +++ head/devel/gprbuild/files/extrapatch-src_gprslave.adb (nonexistent) @@ -1,25 +0,0 @@ -Set_File_Last_Modify_Time_Stamp has been added to GNAT.OS_Lib on GNAT Pro -but that hasn't made it to gcc 4.9 yet. For the moment, just disable the -set file timestamp functionality that it serves here. - ---- src/gprslave.adb.orig 2014-04-17 09:50:17.000000000 +0000 -+++ src/gprslave.adb -@@ -1261,17 +1261,8 @@ procedure Gprslave is - procedure Set_Stamp - (Path_Name : String; Time_Stamp : Time_Stamp_Type) - is -- TS : constant String := String (Time_Stamp); - begin -- Set_File_Last_Modify_Time_Stamp -- (Path_Name, -- GM_Time_Of -- (Year => Year_Type'Value (TS (1 .. 4)), -- Month => Month_Type'Value (TS (5 .. 6)), -- Day => Day_Type'Value (TS (7 .. 8)), -- Hour => Hour_Type'Value (TS (9 .. 10)), -- Minute => Minute_Type'Value (TS (11 .. 12)), -- Second => Second_Type'Value (TS (13 .. 14)))); -+ pragma Unreferenced (Path_Name, Time_Stamp); - end Set_Stamp; - - ------------------ Property changes on: head/devel/gprbuild/files/extrapatch-src_gprslave.adb ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/devel/gprbuild/files/extrapatch-5-gprbuild-post.adb =================================================================== --- head/devel/gprbuild/files/extrapatch-5-gprbuild-post.adb (revision 390735) +++ head/devel/gprbuild/files/extrapatch-5-gprbuild-post.adb (nonexistent) @@ -1,26 +0,0 @@ ---- src/gprbuild-post_compile.adb.orig 2014-04-17 09:50:17 UTC -+++ src/gprbuild-post_compile.adb -@@ -2558,6 +2558,7 @@ package body Gprbuild.Post_Compile is - if Main_Source.Language.Name = B_Data.Language.Name then - Queue.Insert - (Source => (Format => Format_Gprbuild, -+ Closure => False, - Tree => Main_File.Tree, - Id => Main_File.Source)); - end if; -@@ -2567,6 +2568,7 @@ package body Gprbuild.Post_Compile is - while Roots /= null loop - Queue.Insert - (Source => (Format => Format_Gprbuild, -+ Closure => False, - Tree => Main_File.Tree, - Id => Roots.Root)); - Roots := Roots.Next; -@@ -2627,6 +2629,7 @@ package body Gprbuild.Post_Compile is - - Queue.Insert - (Source => (Format => Format_Gprbuild, -+ Closure => False, - Tree => Main_File.Tree, - Id => Source)); - end if; Property changes on: head/devel/gprbuild/files/extrapatch-5-gprbuild-post.adb ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/devel/gprbuild/files/extrapatch-5-gprlib.adb =================================================================== --- head/devel/gprbuild/files/extrapatch-5-gprlib.adb (revision 390735) +++ head/devel/gprbuild/files/extrapatch-5-gprlib.adb (nonexistent) @@ -1,17 +0,0 @@ ---- src/gprlib.adb.orig 2014-04-17 09:50:17 UTC -+++ src/gprlib.adb -@@ -1185,12 +1185,12 @@ begin - new String' - ("-lgnat" & - Shared_Libgnat_Separator & -- Line (6 .. Last)); -+ Line (6)); - Libgnarl := - new String' - ("-lgnarl" & - Shared_Libgnat_Separator & -- Line (6 .. Last)); -+ Line (6)); - end if; - - else Property changes on: head/devel/gprbuild/files/extrapatch-5-gprlib.adb ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/devel/gprbuild/files/extrapatch-protocol.adb =================================================================== --- head/devel/gprbuild/files/extrapatch-protocol.adb (revision 390735) +++ head/devel/gprbuild/files/extrapatch-protocol.adb (nonexistent) @@ -1,33 +0,0 @@ -The GNAT.Rewrite_Data package in not in FSF GNAT yet. Use the local 2013 -version which does not have the Link method. This essentially changes -this file back to the GPRBuild 2013 version, so it should be ok. - ---- src/gprbuild-compilation-protocol.adb.orig 2014-04-17 09:50:17.000000000 +0000 -+++ src/gprbuild-compilation-protocol.adb -@@ -24,7 +24,7 @@ with Ada.Streams.Stream_IO; - with Ada.Strings.Fixed; use Ada.Strings.Fixed; - with Ada.Strings.Maps.Constants; use Ada.Strings.Maps; - --with GNAT.Rewrite_Data; -+with Rewrite_Data; - with GNAT.String_Split; use GNAT.String_Split; - - with Gnatvsn; use Gnatvsn; -@@ -180,8 +180,6 @@ package body Gprbuild.Compilation.Protoc - end Output; - - begin -- Rewrite_Data.Link (Rewriter, Rewriter_CD'Unchecked_Access); -- - if Dir /= "" and then not Exists (Dir) then - Create_Directory (Dir); - end if; -@@ -666,8 +664,6 @@ package body Gprbuild.Compilation.Protoc - end Output; - - begin -- Rewrite_Data.Link (Rewriter, Rewriter_CD'Unchecked_Access); -- - if Exists (Path_Name) then - Open (File, In_File, Path_Name); - Property changes on: head/devel/gprbuild/files/extrapatch-protocol.adb ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/devel/gprbuild/files/patch-gprbuild.gpr =================================================================== --- head/devel/gprbuild/files/patch-gprbuild.gpr (revision 390735) +++ head/devel/gprbuild/files/patch-gprbuild.gpr (nonexistent) @@ -1,26 +0,0 @@ ---- gprbuild.gpr.orig 2014-04-17 09:50:17.000000000 +0000 -+++ gprbuild.gpr -@@ -1,4 +1,5 @@ - with "xmlada"; -+with "gnat_util"; - - project Gprbuild is - type OS_Type is ("unix", "avms", "ivms", "Windows_NT"); -@@ -24,7 +25,7 @@ project Gprbuild is - "gprinstall-main.adb", - "gprslave.adb"); - -- for Source_Dirs use ("src", "gnat"); -+ for Source_Dirs use ("src"); - - case Build_Tool is - when "gprbuild" => -@@ -173,8 +174,6 @@ project Gprbuild is - when "unix" | "Windows_NT" => - for Body ("gprlib.build_shared_lib") - use "gprlib-build_shared_lib-nosymbols.adb"; -- for Body ("mlib.tgt.specific") -- use "mlib-tgt-specific.adb"; - when "avms" => - for Body ("gprlib.build_shared_lib") - use "gprlib-build_shared_lib-vms.adb"; Property changes on: head/devel/gprbuild/files/patch-gprbuild.gpr ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/devel/gprbuild/files/extrapatch-5-gprbuild-slave.adb =================================================================== --- head/devel/gprbuild/files/extrapatch-5-gprbuild-slave.adb (revision 390735) +++ head/devel/gprbuild/files/extrapatch-5-gprbuild-slave.adb (nonexistent) @@ -1,11 +0,0 @@ ---- src/gprbuild-compilation-slave.adb.orig 2014-04-17 09:50:17 UTC -+++ src/gprbuild-compilation-slave.adb -@@ -817,7 +817,7 @@ package body Gprbuild.Compilation.Slave - S : Slave := Slave_S.Element (C); - begin - Proc (S); -- Pool (C) := S; -+ Pool.Replace_Element (Position => C, New_Item => S); - end; - end loop; - end Iterate; Property changes on: head/devel/gprbuild/files/extrapatch-5-gprbuild-slave.adb ___________________________________________________________________ Deleted: fbsd:nokeywords ## -1 +0,0 ## -yes \ No newline at end of property Deleted: svn:eol-style ## -1 +0,0 ## -native \ No newline at end of property Deleted: svn:mime-type ## -1 +0,0 ## -text/plain \ No newline at end of property Index: head/devel/gprbuild/files/Makefile.BSD =================================================================== --- head/devel/gprbuild/files/Makefile.BSD (nonexistent) +++ head/devel/gprbuild/files/Makefile.BSD (revision 390736) @@ -0,0 +1,97 @@ +.PHONY: all +.PHONY: generate_sources + +AFLAGS= -gnat12 -gnaty -gnatQ -O2 -gnatpn -gnatws -g1 -j${PROCESSORS} + +COBJS= obj/link.o obj/gprbuild_dummies.o + +LOOK= -aI${.CURDIR}/gnat -aI${.CURDIR}/gen_src \ + -aL${PREFIX}/lib/xmlada/static -aI${PREFIX}/include/xmlada +LARGS= -largs ${.CURDIR}/obj/link.o \ + -largs ${.CURDIR}/obj/gprbuild_dummies.o \ + -largs ${PREFIX}/lib/xmlada/static/libxmlada_dom.a \ + -largs ${PREFIX}/lib/xmlada/static/libxmlada_input_sources.a \ + -largs ${PREFIX}/lib/xmlada/static/libxmlada_sax.a \ + -largs ${PREFIX}/lib/xmlada/static/libxmlada_schema.a \ + -largs ${PREFIX}/lib/xmlada/static/libxmlada_unicode.a + +GENDIR= gen_src +GEN_SRCS= ${GENDIR}/snames.adb ${GENDIR}/snames.ads +DOCSDIR= ${PREFIX}/share/doc/gprbuild + +all: gprbuild + +install: + mkdir -p ${DESTDIR}${PREFIX}/bin \ + ${DESTDIR}${PREFIX}/libexec/gprbuild \ + ${DESTDIR}${PREFIX}/share/gpr \ + ${DESTDIR}${PREFIX}/share/gprconfig + ${BSD_INSTALL_PROGRAM} ${.CURDIR}/obj/gprclean \ + ${.CURDIR}/obj/gprinstall \ + ${.CURDIR}/obj/gprconfig \ + ${.CURDIR}/obj/gprslave \ + ${.CURDIR}/obj/gprbuild ${DESTDIR}${PREFIX}/bin + ${BSD_INSTALL_PROGRAM} ${.CURDIR}/obj/gprbind \ + ${.CURDIR}/obj/gprlib ${DESTDIR}${PREFIX}/libexec/gprbuild + ${BSD_INSTALL_DATA} ${.CURDIR}/share/_default.gpr \ + ${DESTDIR}${PREFIX}/share/gpr + ${BSD_INSTALL_DATA} ${.CURDIR}/share/gprconfig/* \ + ${DESTDIR}${PREFIX}/share/gprconfig + +install-docs: + mkdir -p ${DESTDIR}${DOCSDIR}/html ${DESTDIR}${DOCSDIR}/txt \ + ${DESTDIR}${DOCSDIR}/pdf + ${BSD_INSTALL_DATA} ${.CURDIR}/doc/txt/gprbuild_ug.txt \ + ${DESTDIR}${DOCSDIR}/txt + ${BSD_INSTALL_DATA} ${.CURDIR}/doc/pdf/gprbuild_ug.pdf \ + ${DESTDIR}${DOCSDIR}/pdf + cp -r ${.CURDIR}/doc/html/* ${DESTDIR}${DOCSDIR}/html + rm -rf ${DESTDIR}${DOCSDIR}/html/_sources + ${BSD_INSTALL_DATA} ${.CURDIR}/doc/*.png \ + ${DESTDIR}${DOCSDIR}/html + +gprclean: src/gprclean-main.adb ${GEN_SRCS} ${COBJS} + gnatmake -o ${.TARGET} ${AFLAGS} ${LOOK} \ + ${.CURDIR}/src/gprclean-main.adb ${LARGS} + +gprbind: gprclean src/gprslave.adb ${GEN_SRCS} ${COBJS} + gnatmake -o ${.TARGET} ${AFLAGS} ${LOOK} \ + ${.CURDIR}/src/gprbind.adb ${LARGS} + +gprlib: gprbind src/gprslave.adb ${GEN_SRCS} ${COBJS} + gnatmake -o ${.TARGET} ${AFLAGS} ${LOOK} \ + ${.CURDIR}/src/gprlib.adb ${LARGS} + +gprslave: gprlib src/gprslave.adb ${GEN_SRCS} ${COBJS} + gnatmake -o ${.TARGET} ${AFLAGS} ${LOOK} \ + ${.CURDIR}/src/gprslave.adb ${LARGS} + +gprinstall: gprslave src/gprinstall-main.adb ${GEN_SRCS} ${COBJS} + gnatmake -o ${.TARGET} ${AFLAGS} ${LOOK} \ + ${.CURDIR}/src/gprinstall-main.adb ${LARGS} + +gprconfig: gprinstall src/gprconfig-main.adb ${GEN_SRCS} ${COBJS} + gnatmake -o ${.TARGET} ${AFLAGS} ${LOOK} \ + ${.CURDIR}/src/gprconfig-main.adb ${LARGS} + +gprbuild: gprconfig src/gprbuild-main.adb ${GEN_SRCS} ${COBJS} + gnatmake -o ${.TARGET} ${AFLAGS} ${LOOK} \ + ${.CURDIR}/src/gprbuild-main.adb ${LARGS} + +obj/link.o: gnat/link.c + gcc -c -o ${.CURDIR}/${.TARGET} ${.ALLSRC} + +obj/gprbuild_dummies.o: src/gprbuild_dummies.c + gcc -c -o ${.CURDIR}/${.TARGET} ${.ALLSRC} + +generate_sources: + mkdir -p ${.CURDIR}/${GENDIR} + (cd ${.CURDIR}/gnat && cp xsnamest.adb xutil.* snames.adb-tmpl \ + snames.ads-tmpl snames.h-tmpl ../${GENDIR}) + (cd ${.CURDIR}/${GENDIR} && \ + gnatmake -gnatf -gnatwae -gnatyg -gnatyS xsnamest && \ + ./xsnamest && \ + mv snames.ns snames.ads && \ + mv snames.nb snames.adb) + +${GEN_SRCS}: generate_sources Property changes on: head/devel/gprbuild/files/Makefile.BSD ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/devel/gprbuild/files/patch-gnat_targparm =================================================================== --- head/devel/gprbuild/files/patch-gnat_targparm (nonexistent) +++ head/devel/gprbuild/files/patch-gnat_targparm (revision 390736) @@ -0,0 +1,302 @@ +These restriction pragmas are not yet supported on FSF GNAT 5: + No_Specification_Of_Aspect + No_Use_Of_Attribute + No_Use_Of_Pragma + +--- gnat/targparm.ads.orig 2015-05-06 11:08:38 UTC ++++ gnat/targparm.ads +@@ -615,53 +615,28 @@ package Targparm is + -- selected component with Sloc value System_Location and given Prefix + -- (Pre) and Selector (Sel) values. + +- type Set_NOD_Type is access procedure (Unit : Node_Id); ++ type Set_RND_Type is access procedure (Unit : Node_Id); + -- Parameter type for Get_Target_Parameters that records a Restriction + -- No_Dependence for the given unit (identifier or selected component). + +- type Set_NSA_Type is access procedure (Asp : Name_Id; OK : out Boolean); +- -- Parameter type for Get_Target_Parameters that records a Restriction +- -- No_Specification_Of_Aspect. Asp is the aspect name. OK is set True +- -- if this is an OK aspect name, and False if it is not an aspect name. +- +- type Set_NUA_Type is access procedure (Attr : Name_Id; OK : out Boolean); +- -- Parameter type for Get_Target_Parameters that records a Restriction +- -- No_Use_Of_Attribute. Attr is the attribute name. OK is set True if +- -- this is an OK attribute name, and False if it is not an attribute name. +- +- type Set_NUP_Type is access procedure (Prag : Name_Id; OK : out Boolean); +- -- Parameter type for Get_Target_Parameters that records a Restriction +- -- No_Use_Of_Pragma. Prag is the pragma name. OK is set True if this is +- -- an OK pragma name, and False if it is not a recognized pragma name. +- + procedure Get_Target_Parameters + (System_Text : Source_Buffer_Ptr; + Source_First : Source_Ptr; + Source_Last : Source_Ptr; + Make_Id : Make_Id_Type := null; + Make_SC : Make_SC_Type := null; +- Set_NOD : Set_NOD_Type := null; +- Set_NSA : Set_NSA_Type := null; +- Set_NUA : Set_NUA_Type := null; +- Set_NUP : Set_NUP_Type := null); +- -- Called at the start of execution to obtain target parameters from the +- -- source of package System. The parameters provide the source text to be +- -- scanned (in System_Text (Source_First .. Source_Last)). If the three +- -- subprograms Make_Id, Make_SC, and Set_NOD are left at their default +- -- value of null, Get_Target_Parameters will ignore pragma Restrictions +- -- (No_Dependence) lines; otherwise it will use these three subprograms to +- -- record them. Similarly, if Set_NUP is left at its default value of null, +- -- then any occurrences of pragma Restrictions (No_Use_Of_Pragma => XXX) +- -- will be ignored; otherwise it will use this procedure to record the +- -- pragma. Similarly for the NSA and NUA cases. ++ Set_RND : Set_RND_Type := null); ++ -- Called at the start of execution to obtain target parameters from ++ -- the source of package System. The parameters provide the source ++ -- text to be scanned (in System_Text (Source_First .. Source_Last)). ++ -- if the three subprograms are left at their default value of null, ++ -- Get_Target_Parameters will ignore pragma Restrictions No_Dependence ++ -- lines, otherwise it will use these three subprograms to record them. + + procedure Get_Target_Parameters + (Make_Id : Make_Id_Type := null; + Make_SC : Make_SC_Type := null; +- Set_NOD : Set_NOD_Type := null; +- Set_NSA : Set_NSA_Type := null; +- Set_NUA : Set_NUA_Type := null; +- Set_NUP : Set_NUP_Type := null); ++ Set_RND : Set_RND_Type := null); + -- This version reads in system.ads using Osint. The idea is that the + -- caller uses the first version if they have to read system.ads anyway + -- (e.g. the compiler) and uses this simpler interface if system.ads is +--- gnat/targparm.adb.orig 2015-05-06 11:08:38 UTC ++++ gnat/targparm.adb +@@ -154,10 +154,7 @@ package body Targparm is + procedure Get_Target_Parameters + (Make_Id : Make_Id_Type := null; + Make_SC : Make_SC_Type := null; +- Set_NOD : Set_NOD_Type := null; +- Set_NSA : Set_NSA_Type := null; +- Set_NUA : Set_NUA_Type := null; +- Set_NUP : Set_NUP_Type := null) ++ Set_RND : Set_RND_Type := null) + is + Text : Source_Buffer_Ptr; + Hi : Source_Ptr; +@@ -184,10 +181,7 @@ package body Targparm is + Source_Last => Hi, + Make_Id => Make_Id, + Make_SC => Make_SC, +- Set_NOD => Set_NOD, +- Set_NSA => Set_NSA, +- Set_NUA => Set_NUA, +- Set_NUP => Set_NUP); ++ Set_RND => Set_RND); + end Get_Target_Parameters; + + -- Version where caller supplies system.ads text +@@ -198,10 +192,7 @@ package body Targparm is + Source_Last : Source_Ptr; + Make_Id : Make_Id_Type := null; + Make_SC : Make_SC_Type := null; +- Set_NOD : Set_NOD_Type := null; +- Set_NSA : Set_NSA_Type := null; +- Set_NUA : Set_NUA_Type := null; +- Set_NUP : Set_NUP_Type := null) ++ Set_RND : Set_RND_Type := null) + is + P : Source_Ptr; + -- Scans source buffer containing source of system.ads +@@ -212,48 +203,6 @@ package body Targparm is + Result : Boolean; + -- Records boolean from system line + +- OK : Boolean; +- -- Status result from Set_NUP/NSA/NUA call +- +- PR_Start : Source_Ptr; +- -- Pointer to ( following pragma Restrictions +- +- procedure Collect_Name; +- -- Scan a name starting at System_Text (P), and put Name in Name_Buffer, +- -- with Name_Len being length, folded to lower case. On return, P points +- -- just past the last character (which should be a right paren). +- +- ------------------ +- -- Collect_Name -- +- ------------------ +- +- procedure Collect_Name is +- begin +- Name_Len := 0; +- loop +- if System_Text (P) in 'a' .. 'z' +- or else +- System_Text (P) = '_' +- or else +- System_Text (P) in '0' .. '9' +- then +- Name_Buffer (Name_Len + 1) := System_Text (P); +- +- elsif System_Text (P) in 'A' .. 'Z' then +- Name_Buffer (Name_Len + 1) := +- Character'Val (Character'Pos (System_Text (P)) + 32); +- +- else +- exit; +- end if; +- +- P := P + 1; +- Name_Len := Name_Len + 1; +- end loop; +- end Collect_Name; +- +- -- Start of processing for Get_Target_Parameters +- + begin + if Parameters_Obtained then + return; +@@ -312,9 +261,6 @@ package body Targparm is + + elsif System_Text (P .. P + 20) = "pragma Restrictions (" then + P := P + 21; +- PR_Start := P - 1; +- +- -- Boolean restrictions + + Rloop : for K in All_Boolean_Restrictions loop + declare +@@ -339,9 +285,7 @@ package body Targparm is + null; + end loop Rloop; + +- -- Restrictions taking integer parameter +- +- Ploop : for K in Integer_Parameter_Restrictions loop ++ Ploop : for K in All_Parameter_Restrictions loop + declare + Rname : constant String := + All_Parameter_Restrictions'Image (K); +@@ -456,119 +400,23 @@ package body Targparm is + P := P + 1; + end loop; + +- Set_NOD (Unit); ++ Set_RND (Unit); + goto Line_Loop_Continue; + end; +- +- -- No_Specification_Of_Aspect case +- +- elsif System_Text (P .. P + 29) = "No_Specification_Of_Aspect => " +- then +- P := P + 30; +- +- -- Skip this processing (and simply ignore the pragma), if +- -- caller did not supply the subprogram we need to process +- -- such lines. +- +- if Set_NSA = null then +- goto Line_Loop_Continue; +- end if; +- +- -- We have scanned +- -- "pragma Restrictions (No_Specification_Of_Aspect =>" +- +- Collect_Name; +- +- if System_Text (P) /= ')' then +- goto Bad_Restrictions_Pragma; +- +- else +- Set_NSA (Name_Find, OK); +- +- if OK then +- goto Line_Loop_Continue; +- else +- goto Bad_Restrictions_Pragma; +- end if; +- end if; +- +- -- No_Use_Of_Attribute case +- +- elsif System_Text (P .. P + 22) = "No_Use_Of_Attribute => " then +- P := P + 23; +- +- -- Skip this processing (and simply ignore No_Use_Of_Attribute +- -- lines) if caller did not supply the subprogram we need to +- -- process such lines. +- +- if Set_NUA = null then +- goto Line_Loop_Continue; +- end if; +- +- -- We have scanned +- -- "pragma Restrictions (No_Use_Of_Attribute =>" +- +- Collect_Name; +- +- if System_Text (P) /= ')' then +- goto Bad_Restrictions_Pragma; +- +- else +- Set_NUA (Name_Find, OK); +- +- if OK then +- goto Line_Loop_Continue; +- else +- goto Bad_Restrictions_Pragma; +- end if; +- end if; +- +- -- No_Use_Of_Pragma case +- +- elsif System_Text (P .. P + 19) = "No_Use_Of_Pragma => " then +- P := P + 20; +- +- -- Skip this processing (and simply ignore No_Use_Of_Pragma +- -- lines) if caller did not supply the subprogram we need to +- -- process such lines. +- +- if Set_NUP = null then +- goto Line_Loop_Continue; +- end if; +- +- -- We have scanned +- -- "pragma Restrictions (No_Use_Of_Pragma =>" +- +- Collect_Name; +- +- if System_Text (P) /= ')' then +- goto Bad_Restrictions_Pragma; +- +- else +- Set_NUP (Name_Find, OK); +- +- if OK then +- goto Line_Loop_Continue; +- else +- goto Bad_Restrictions_Pragma; +- end if; +- end if; + end if; + + -- Here if unrecognizable restrictions pragma form + +- <> +- + Set_Standard_Error; + Write_Line + ("fatal error: system.ads is incorrectly formatted"); + Write_Str ("unrecognized or incorrect restrictions pragma: "); + +- P := PR_Start; ++ while System_Text (P) /= ')' ++ and then ++ System_Text (P) /= ASCII.LF + loop +- exit when System_Text (P) = ASCII.LF; + Write_Char (System_Text (P)); +- exit when System_Text (P) = ')'; + P := P + 1; + end loop; + Property changes on: head/devel/gprbuild/files/patch-gnat_targparm ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property Index: head/devel/gprbuild/files/patch-share_gprconfig_compilers.xml =================================================================== --- head/devel/gprbuild/files/patch-share_gprconfig_compilers.xml (revision 390735) +++ head/devel/gprbuild/files/patch-share_gprconfig_compilers.xml (revision 390736) @@ -1,23 +1,24 @@ ---- share/gprconfig/compilers.xml.orig 2014-03-21 10:41:06.000000000 +0000 +--- share/gprconfig/compilers.xml.orig 2015-04-28 15:02:41 UTC +++ share/gprconfig/compilers.xml -@@ -657,16 +657,15 @@ +@@ -693,17 +693,15 @@ Ada - ${PREFIX}gcc -v + ${PREFIX}ada -v - \.\./lib/gcc(-lib)?/$TARGET/$gcc_version/adalib/ - \.\./lib/gcc(-lib)?/$TARGET/$gcc_version/ada_object_path - \.\./lib/gcc(-lib)?/$TARGET/$gcc_version/rts-(.*)/adalib/ +- \.\./$TARGET/lib/gnat/(.*)/adalib/ + \.\./lib/gcc/$TARGET/$gcc_version/adalib -+ @AUXPREFIX@/lib/gcc/$TARGET/$gcc_version/adalib ++ /usr/local/gcc5-aux/lib/gcc/$TARGET/$gcc_version/adalib - ${PREFIX}gcc -dumpmachine + ${PREFIX}ada -dumpmachine Index: head/devel/gprbuild/files/patch-share_gprconfig_gnat.xml =================================================================== --- head/devel/gprbuild/files/patch-share_gprconfig_gnat.xml (revision 390735) +++ head/devel/gprbuild/files/patch-share_gprconfig_gnat.xml (revision 390736) @@ -1,20 +1,20 @@ ---- share/gprconfig/gnat.xml.orig 2013-09-16 15:29:28.000000000 +0000 +--- share/gprconfig/gnat.xml.orig 2014-10-13 22:03:37 UTC +++ share/gprconfig/gnat.xml @@ -63,7 +63,7 @@ - -+ ++ &filter_gnat; @@ -75,7 +75,7 @@ end Naming; package Compiler is - for Driver ("Ada") use "${PATH(ada)}${PREFIX(ada)}gcc"; + for Driver ("Ada") use "${PATH(ada)}${PREFIX(ada)}ada"; for Language_Kind ("Ada") use "unit_based"; for Dependency_Kind ("Ada") use "ALI_File"; for Leading_Required_Switches ("Ada") use Index: head/devel/gprbuild/files/patch-share_gprconfig_linker.xml =================================================================== --- head/devel/gprbuild/files/patch-share_gprconfig_linker.xml (revision 390735) +++ head/devel/gprbuild/files/patch-share_gprconfig_linker.xml (revision 390736) @@ -1,56 +1,56 @@ ---- share/gprconfig/linker.xml.orig 2014-02-13 04:59:56.000000000 +0000 +--- share/gprconfig/linker.xml.orig 2015-04-28 14:21:56 UTC +++ share/gprconfig/linker.xml -@@ -599,11 +599,14 @@ +@@ -687,11 +687,14 @@ - + + + + -@@ -675,10 +678,13 @@ +@@ -763,10 +766,13 @@ - + + + + for Run_Path_Option use ("-Wl,-rpath,"); -@@ -1181,6 +1187,12 @@ +@@ -1308,6 +1314,12 @@ + + + + + + -@@ -1265,6 +1277,9 @@ +@@ -1392,6 +1404,9 @@ + + + Index: head/devel/gprbuild/files/patch-share_gprconfig_targetset.xml =================================================================== --- head/devel/gprbuild/files/patch-share_gprconfig_targetset.xml (revision 390735) +++ head/devel/gprbuild/files/patch-share_gprconfig_targetset.xml (revision 390736) @@ -1,54 +1,54 @@ ---- share/gprconfig/targetset.xml.orig 2014-02-13 04:59:56.000000000 +0000 +--- share/gprconfig/targetset.xml.orig 2014-09-11 13:36:47 UTC +++ share/gprconfig/targetset.xml @@ -66,8 +66,8 @@ - x86-solaris - i.86-(pc-)?solaris.* + i.86-.*-solaris.* + x86_64-.*-solaris.* -@@ -156,19 +156,34 @@ +@@ -162,19 +162,34 @@ pent.*-cygwin.* - + - x86-freebsd i.86-.*freebsd.* + amd64-.*-freebsd.* + x86_64-.*-freebsd.* - + - x86_64-freebsd - x86_64-.*freebsd.* - amd64-.*freebsd.* + i.86-.*-dragonfly.* + x86_64-.*-dragonfly.* + + + i.86-.*-netbsd.* + amd64-.*-netbsd.* + x86_64-.*-netbsd.* + + + + + i.86-.*-openbsd.* + amd64-.*-openbsd.* + x86_64-.*-openbsd.* + + + Index: head/devel/gprbuild/files/patch-src_gpr__version.adb =================================================================== --- head/devel/gprbuild/files/patch-src_gpr__version.adb (revision 390735) +++ head/devel/gprbuild/files/patch-src_gpr__version.adb (revision 390736) @@ -1,18 +1,18 @@ ---- src/gpr_version.adb.orig 2014-04-17 09:50:17.000000000 +0000 +--- src/gpr_version.adb.orig 2015-05-06 11:08:38 UTC +++ src/gpr_version.adb @@ -65,14 +65,7 @@ package body GPR_Version is end if; end loop Last_Loop; - case Build_Type is - when Gnatpro => - return "Pro " & Gpr_Version & " " & Date & Host; - when GPL => - return "GPL " & Gpr_Version & " " & Date & Host; - when FSF => - return Gpr_Version & " " & Date & Host; - end case; + return Gpr_Version & " " & Date & Host; end Gpr_Version_String; end GPR_Version; Index: head/devel/gprbuild/files/patch-src_gprlib.adb =================================================================== --- head/devel/gprbuild/files/patch-src_gprlib.adb (revision 390735) +++ head/devel/gprbuild/files/patch-src_gprlib.adb (revision 390736) @@ -1,40 +1,37 @@ -The brain-dead handling of Rpath continues in GPRBuild 2014 -Bring in the GPRBuild 2012/2013 fix again - ---- src/gprlib.adb.orig 2014-04-17 09:50:17.000000000 +0000 +--- src/gprlib.adb.orig 2015-05-06 11:08:38 UTC +++ src/gprlib.adb -@@ -408,6 +408,11 @@ procedure Gprlib is +@@ -393,6 +393,11 @@ procedure Gprlib is Separate_Run_Path_Options : Boolean := False; + Rpath_Disabled : Boolean := False; + -- If -R is passed through the library options for the linker, it will + -- prevent the implemented libraries portion of the rpath switch from + -- being built, even if the linker is capable of supporting rpath. + Rpath : String_List_Access := null; -- Allocated only if Path Option is supported -@@ -1040,7 +1045,12 @@ begin +@@ -1011,7 +1016,12 @@ begin Use_GNAT_Lib := False; end if; - Library_Options_Table.Append (new String'(Line (1 .. Last))); + if Line (1 .. Last) = "-R" then + Rpath_Disabled := True; + else + Library_Options_Table.Append + (new String'(Line (1 .. Last))); + end if; when Gprexch.Library_Rpath_Options => Library_Rpath_Options_Table.Append -@@ -2166,7 +2176,7 @@ begin +@@ -2113,7 +2123,7 @@ begin Library_Switches_Table.Append (new String'("-L" & Imported_Library_Directories.Table (J).all)); - if Path_Option /= null then + if not Rpath_Disabled and then Path_Option /= null then Add_Rpath (Imported_Library_Directories.Table (J)); end if; Index: head/devel/gprbuild/pkg-plist =================================================================== --- head/devel/gprbuild/pkg-plist (revision 390735) +++ head/devel/gprbuild/pkg-plist (revision 390736) @@ -1,21 +1,22 @@ bin/gprbuild bin/gprclean bin/gprconfig bin/gprinstall bin/gprslave libexec/gprbuild/gprbind libexec/gprbuild/gprlib share/gpr/_default.gpr share/gprconfig/asm.xml share/gprconfig/c.xml share/gprconfig/clean.xml share/gprconfig/compilers.xml share/gprconfig/cpp.xml share/gprconfig/cross.xml share/gprconfig/fortran.xml share/gprconfig/gnat.xml +share/gprconfig/gnat_runtime.mapping share/gprconfig/gprconfig.xsd share/gprconfig/linker.xml share/gprconfig/nocompiler.xml share/gprconfig/targetset.xml share/gprconfig/windres.xml