[GtkAda] · Upgraded to 2.18.0. · Dropped the patches gtk217 and GTK+-2.21. · Updated the -lm and configura

Björn Persson rombobeorn at fedoraproject.org
Sun Aug 14 17:48:06 UTC 2011


commit 573ea185528d0986100c35b67cd36be53fa347d6
Author: Björn Persson <bjorn at rombobjörn.se>
Date:   Sun Aug 14 19:44:08 2011 +0200

    · Upgraded to 2.18.0.
    · Dropped the patches gtk217 and GTK+-2.21.
    · Updated the -lm and configuration patches for 2.18.0.
    · Added six more patches to the build system: install_rm, gl_placement,
      link_as_needed, -lgnomeada, ldflags and source_dirs.
    · Ship the existing documentation instead of regenerating it, as generating the
      reference manual requires GPS and the user's guide causes Tex to crash.
    · Moved the documentation to /usr/share/doc/gtkada.
    · GtkAda-doc no longer requires GtkAda-devel.
    · Improved and translated the package descriptions.

 .gitignore                                         |    1 +
 GtkAda-2.14.0-GTK+-2.21.patch                      |   27 --
 ...-3.patch => GtkAda-2.18.0-configuration-4.patch |  361 +++++++++++---------
 GtkAda-2.18.0-gl_placement.patch                   |   13 +
 GtkAda-2.18.0-install_rm.patch                     |   28 ++
 GtkAda-2.18.0-ldflags.patch                        |   30 ++
 GtkAda-2.18.0-lgnomeada.patch                      |   29 ++
 GtkAda-2.18.0-link_as_needed.patch                 |   11 +
 GtkAda-2.14.0-lm.patch => GtkAda-2.18.0-lm.patch   |    6 +-
 GtkAda-2.18.0-source_dirs.patch                    |   40 +++
 GtkAda.spec                                        |  143 ++++++---
 sources                                            |    2 +-
 12 files changed, 459 insertions(+), 232 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 47ec9e8..aa67291 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,2 +1,3 @@
 GtkAda-gpl-2.14.0.tgz
 /GtkAda-gpl-2.14.1.tgz
+/gtkada-gpl-2.18.0-src.tgz
diff --git a/GtkAda-2.14.1-configuration-3.patch b/GtkAda-2.18.0-configuration-4.patch
similarity index 73%
rename from GtkAda-2.14.1-configuration-3.patch
rename to GtkAda-2.18.0-configuration-4.patch
index a37f027..c26bf61 100644
--- a/GtkAda-2.14.1-configuration-3.patch
+++ b/GtkAda-2.18.0-configuration-4.patch
@@ -1,37 +1,26 @@
---- aclocal.m4	2008-05-14 17:07:19.000000000 +0200
-+++ aclocal.m4	2011-01-17 01:47:54.000000000 +0100
-@@ -10,7 +10,17 @@
-    SO_OPTS=-Wl,-soname,
-    FPIC=-fPIC
+--- aclocal.m4	2010-06-03 17:30:50.000000000 +0200
++++ aclocal.m4	2011-08-10 20:37:46.000000000 +0200
+@@ -12,6 +12,19 @@
     TARGET_LFLAGS=
--   DEFAULT_LIBRARY_TYPE=static
-+   DEFAULT_LIBRARY_TYPE=relocatable
-+
+    DEFAULT_LIBRARY_TYPE=static
+ 
 +   AC_ARG_ENABLE(static,
 +     [AC_HELP_STRING(
 +        [--disable-static],
 +        [Disable building of static libraries.])
 +AC_HELP_STRING(
 +        [--enable-static],
-+        [Build static libraries.])],
-+     [BUILD_STATIC=$enableval],
++        [Build static libraries (default).])],
++     [BUILD_STATIC=$enableval
++      if test $enableval = no; then
++         DEFAULT_LIBRARY_TYPE=relocatable
++      fi],
 +     [BUILD_STATIC=yes])
- 
++
     AC_ARG_ENABLE(shared,
       [AC_HELP_STRING(
-@@ -20,10 +30,7 @@
-         [--enable-shared],
-         [Build shared libraries if supported on the target
- Make them the installation default])],
--     [CAN_BUILD_SHARED=$enableval
--      if test $enableval = yes; then
--         DEFAULT_LIBRARY_TYPE=relocatable
--      fi],
-+     [CAN_BUILD_SHARED=$enableval],
-      [CAN_BUILD_SHARED=yes])
- 
-    BUILD_SHARED=$CAN_BUILD_SHARED
-@@ -98,6 +105,7 @@
+         [--disable-shared],
+@@ -98,6 +111,7 @@
  
    AC_SUBST(DEFAULT_LIBRARY_TYPE)
    AC_SUBST(OS_SPECIFIC_LINK_OPTIONS)
@@ -39,7 +28,7 @@
    AC_SUBST(BUILD_SHARED)
    AC_SUBST(SO_EXT)
    AC_SUBST(SO_OPTS)
-@@ -108,13 +116,50 @@
+@@ -108,13 +122,50 @@
  )
  
  #############################################################
@@ -91,8 +80,8 @@
                    BUILD_TYPE=$enableval,
                    BUILD_TYPE=Production)
  ]
---- configure	2008-12-17 10:26:45.000000000 +0100
-+++ configure	2011-01-17 01:47:56.000000000 +0100
+--- configure	2010-10-01 18:14:41.000000000 +0200
++++ configure	2011-08-10 20:15:48.000000000 +0200
 @@ -272,7 +272,7 @@
  PACKAGE_BUGREPORT=
  
@@ -152,7 +141,7 @@
  # Are we in devel mode ?
  
      # Check whether --enable-build or --disable-build was given.
-@@ -4436,11 +4459,16 @@
+@@ -4500,11 +4523,16 @@
  s, at target_os@,$target_os,;t t
  s, at DEFAULT_LIBRARY_TYPE@,$DEFAULT_LIBRARY_TYPE,;t t
  s, at OS_SPECIFIC_LINK_OPTIONS@,$OS_SPECIFIC_LINK_OPTIONS,;t t
@@ -169,8 +158,8 @@
  s, at MERGE@,$MERGE,;t t
  s, at MERGE_AVAIL@,$MERGE_AVAIL,;t t
  s, at DIFF@,$DIFF,;t t
---- configure.in	2008-12-17 10:26:45.000000000 +0100
-+++ configure.in	2010-09-11 20:31:35.000000000 +0200
+--- configure.in	2010-10-01 18:14:41.000000000 +0200
++++ configure.in	2011-08-10 20:42:28.000000000 +0200
 @@ -20,6 +20,9 @@
  AC_PROG_INSTALL
  AC_PROG_RANLIB
@@ -181,9 +170,15 @@
  # Are we in devel mode ?
  CHECK_BUILD_TYPE
  
---- docs/gtkada_rm/Makefile.in	2007-06-23 04:20:07.000000000 +0200
-+++ docs/gtkada_rm/Makefile.in	2010-09-26 17:05:44.000000000 +0200
-@@ -5,6 +5,7 @@
+--- docs/gtkada_rm/Makefile.in	2010-08-10 16:26:31.000000000 +0200
++++ docs/gtkada_rm/Makefile.in	2011-08-10 19:50:03.000000000 +0200
+@@ -1,10 +1,12 @@
+ prefix = @prefix@
+-docdir = $(prefix)/share/doc/gtkada/gtkada_rm
++docdir = @datadir@/doc/gtkada
++RM_dir = ${docdir}/gtkada_rm
+ 
+ MKDIR = mkdir -p
  CP=cp -p
  INSTALL = @INSTALL@
  INSTALL_DATA = @INSTALL_DATA@
@@ -191,22 +186,27 @@
  
  SRC=../../src/*.ads ../../src/opengl/*.ads ../../src/glade/*.ads
  
-@@ -38,10 +39,10 @@
- 	makeinfo --force --no-headers --no-split -o gtkada_rm.txt gtkada_rm.texi
+@@ -20,10 +22,10 @@
+ 	$(RM) -rf log.txt doc_obj/*
  
  install:
 -	-$(MKDIR) $(docdir)
-+	-$(MKDIR) $(DESTDIR)$(docdir)
- 	-for i in *.ps *.texi *.tex *.jpg gtkada_rm/*; \
++	-$(MKDIR) "${DESTDIR}${RM_dir}"
+ 	-for i in gtkada_rm/*; \
  	do \
 -	  $(INSTALL_DATA) $$i $(docdir); \
-+	  $(INSTALL_DATA) $$i $(DESTDIR)$(docdir); \
++	  $(INSTALL_DATA) $$i "${DESTDIR}${RM_dir}"; \
  	done
  
- clean:
+ clean: docgen_clean
 --- docs/gtkada_ug/Makefile.in	2009-01-15 11:02:42.000000000 +0100
-+++ docs/gtkada_ug/Makefile.in	2010-09-26 17:05:31.000000000 +0200
-@@ -4,6 +4,7 @@
++++ docs/gtkada_ug/Makefile.in	2011-08-10 19:50:03.000000000 +0200
+@@ -1,9 +1,11 @@
+ prefix = @prefix@
+-docdir = $(prefix)/share/doc/gtkada/gtkada_ug
++docdir = @datadir@/doc/gtkada
++UG_dir = ${docdir}/gtkada_ug
+ 
  MKDIR = mkdir -p
  INSTALL = @INSTALL@
  INSTALL_DATA = @INSTALL_DATA@
@@ -214,49 +214,70 @@
  
  all: gtkada_ug.texi gfdl.texi
  	echo x | tex gtkada_ug.texi
-@@ -17,10 +18,10 @@
+@@ -17,10 +19,10 @@
  	-$(RM) *.aux *.cp *.cps *.dvi *.fn *.ky *.log *.pg *.toc *.tp *.vr
  
  install:
 -	-$(MKDIR) $(docdir)
-+	-$(MKDIR) $(DESTDIR)$(docdir)
++	-$(MKDIR) "${DESTDIR}${UG_dir}"
  	for i in `ls *.html *.info* *.ps *.texi *.txt *.tex *.gif *.jpg`; \
  	do \
 -	   $(INSTALL_DATA) $$i $(docdir); \
-+	   $(INSTALL_DATA) $$i $(DESTDIR)$(docdir); \
++	   $(INSTALL_DATA) $$i "${DESTDIR}${UG_dir}"; \
  	done
  
  clean:
 --- examples/Makefile	2007-09-15 04:17:05.000000000 +0200
-+++ examples/Makefile	2010-09-26 17:37:32.000000000 +0200
++++ examples/Makefile	2011-08-10 19:50:03.000000000 +0200
+@@ -12,7 +12,7 @@
+ # we modify the following two environment variables so that the GtkAda version
+ # we just installed can be used to compile the examples
+ export ADA_PROJECT_PATH:=${prefix}/lib/gnat${DIRSEP}${ADA_PROJECT_PATH}
+-export PATH:=${prefix}/bin:${PATH}
++export PATH:=${bindir}:${PATH}
+ 
+ DIRECTORIES=base_widget \
+   calendar_combo        \
 @@ -44,13 +44,13 @@
  	done
  
  install:
 -	mkdir -p $(examples)
-+	mkdir -p $(DESTDIR)$(examples)
++	mkdir -p "${DESTDIR}$(examples)"
  	-for dir in ${DIRECTORIES} ${TUTORIAL_DIRS}; do \
 -	  mkdir -p $(examples)/$${dir}; \
-+	  mkdir -p $(DESTDIR)$(examples)/$${dir}; \
++	  mkdir -p "${DESTDIR}$(examples)/$${dir}"; \
  	  rm -f $${dir}/b~*; \
 -	  cp -p $${dir}/*.ad? $${dir}/*.gpr $(examples)/$${dir} 2>/dev/null; \
 -	  cp -p $${dir}/Makefile $(examples)/$${dir} 2>/dev/null; \
 -	  cp -p $${dir}/README $(examples)/$${dir} 2>/dev/null; \
-+	  cp -p $${dir}/*.ad? $${dir}/*.gpr $(DESTDIR)$(examples)/$${dir} 2>/dev/null; \
-+	  cp -p $${dir}/Makefile $(DESTDIR)$(examples)/$${dir} 2>/dev/null; \
-+	  cp -p $${dir}/README $(DESTDIR)$(examples)/$${dir} 2>/dev/null; \
++	  cp -p $${dir}/*.ad? $${dir}/*.gpr "${DESTDIR}$(examples)/$${dir}" 2>/dev/null; \
++	  cp -p $${dir}/Makefile "${DESTDIR}$(examples)/$${dir}" 2>/dev/null; \
++	  cp -p $${dir}/README "${DESTDIR}$(examples)/$${dir}" 2>/dev/null; \
  	done
  
  clean::
---- projects/generate_prj.sh	2009-02-27 20:38:40.000000000 +0100
-+++ projects/generate_prj.sh	2011-02-11 19:51:45.000000000 +0100
-@@ -1,9 +1,15 @@
+--- po/Makefile.in	2009-12-01 19:01:18.000000000 +0100
++++ po/Makefile.in	2011-08-10 19:50:03.000000000 +0200
+@@ -6,7 +6,7 @@
+ INSTALL_PROGRAM = @INSTALL_PROGRAM@
+ INSTALL_DATA = @INSTALL_DATA@
+ prefix        = @prefix@
+-localedir     = $(prefix)/share/locale
++localedir     = @datadir@/locale
+ 
+ all:
+ static:
+--- projects/generate_prj.sh	2010-06-09 11:44:40.000000000 +0200
++++ projects/generate_prj.sh	2011-08-10 21:13:21.000000000 +0200
+@@ -1,10 +1,16 @@
  #!/bin/sh
  
  module=${1:-}
 -prefix=$2
 -default_library_type="$3"
 -version=$4
+-subdir=$5
 +bindir="$2"
 +incdir="$3"
 +libdir="$4"
@@ -264,51 +285,52 @@
 +libsubdir_shared="$6"
 +alisubdir_static="$7"
 +alisubdir_shared="$8"
-+default_library_type="$9"
-+version="${10}"
++subdir="$9"
++default_library_type="${10}"
++version="${11}"
  
  lcmodule=`echo $module | tr [A-Z] [a-z]`
  
-@@ -40,10 +46,10 @@
-             echo "        \"$previous\","
-             echo "        \"-luser32\","
+@@ -44,10 +50,10 @@
+             echo "        \"-lopengl32\","
+             echo "        \"-lgdi32\","
  	    if [ "$shared" = "1" ]; then
 -		echo "        \"-L../../bin\","
-+               echo "        \"-L${bindir}\","
++		echo "        \"-L${bindir}\","
  	    fi
 -	    echo "        \"-L..\","
--	    echo -n "        \"-L../../include/gtkada\""
-+            echo "        \"-L${libdir}\","
-+            echo -n "        \"-L${incdir}\""
+-	    echo -n "        \"-L../../include/gtkada/$subdir\""
++	    echo "        \"-L${libdir}\","
++	    echo -n "        \"-L${incdir}/$subdir\""
              ;;
           *)
              if [ x"$previous" != x"" ]; then
-@@ -77,7 +83,7 @@
+@@ -81,7 +87,7 @@
     type Gtkada_Kind_Type is ("static", "relocatable");
     Gtkada_Kind : Gtkada_Kind_Type := external ("LIBRARY_TYPE", "$3");
  
--   for Source_Dirs use ("../../include/gtkada");
-+   for Source_Dirs use ("${incdir}");
-    for Source_List_File use "gtkada/${lcmodule}.lgpr";
+-   for Source_Dirs use ("../../include/gtkada/$subdir");
++   for Source_Dirs use ("${incdir}/$subdir");
     for Library_Kind use Gtkada_Kind;
  
-@@ -89,11 +95,12 @@
+ EOF
+@@ -92,11 +98,12 @@
     case Gtkada_Kind is
        when "static" =>
           for Library_Name use "${lcmodule}";
--         for Library_Dir use "../gtkada/static";
-+         for Library_Dir use "${libdir}/${libsubdir_static}";
-+         for Library_ALI_Dir use "${libdir}/${alisubdir_static}";
+-         for Library_Dir use "../gtkada/static/$subdir";
++         for Library_Dir use "${libdir}/${libsubdir_static}/$subdir";
++         for Library_ALI_Dir use "${libdir}/${alisubdir_static}/${subdir}";
        when "relocatable" =>
           for Library_Name use "${lcmodule}${lcversion}";
 -         for Library_Dir use "../../bin";
--         for Library_ALI_Dir use "../gtkada/relocatable";
+-         for Library_ALI_Dir use "../gtkada/relocatable/$subdir";
 +         for Library_Dir use "${bindir}";
-+         for Library_ALI_Dir use "${libdir}/${alisubdir_shared}";
++         for Library_ALI_Dir use "${libdir}/${alisubdir_shared}/$subdir";
     end case;
  
  EOF
-@@ -103,12 +110,14 @@
+@@ -106,12 +113,14 @@
     case Gtkada_Kind is
        when "static" =>
           for Library_Name use "${lcmodule}";
@@ -326,18 +348,24 @@
     esac
  
 --- projects/gtkada.pc.in	2007-06-23 04:20:17.000000000 +0200
-+++ projects/gtkada.pc.in	2010-09-26 00:12:17.000000000 +0200
-@@ -2,5 +2,5 @@
++++ projects/gtkada.pc.in	2011-08-10 19:50:04.000000000 +0200
+@@ -1,6 +1,11 @@
++prefix=@prefix@
++exec_prefix=@exec_prefix@
++libdir=@libdir@
++includedir=@includedir@
++
+ Name: GtkAda
  Description: Ada binding for gtk+-2.0
  Version: @GTKADA_MAJOR_VERSION at .@GTKADA_MINOR_VERSION at .@GTKADA_MICRO_VERSION@
  Requires: gtk+-2.0
 -Libs: -L at prefix@/lib -lgtkada
 -Cflags: -aI at prefix@/include/gtkada -aO at prefix@/lib/gtkada
-+Libs: -L at libdir@ -lgtkada
-+Cflags: -aI at includedir@/gtkada -aO at libdir@/gtkada
---- projects/Makefile	2008-05-14 17:07:19.000000000 +0200
-+++ projects/Makefile	2011-02-10 23:45:18.000000000 +0100
-@@ -5,28 +5,40 @@
++Libs: -L${libdir} -lgtkada
++Cflags: -aI${includedir}/gtkada -aO${libdir}/gtkada
+--- projects/Makefile	2010-06-08 19:09:00.000000000 +0200
++++ projects/Makefile	2011-08-10 21:29:07.000000000 +0200
+@@ -5,27 +5,39 @@
  SOVER=${MAJOR}.${MINOR}
  
  install: force
@@ -346,7 +374,7 @@
 -	$(MKDIR) $(prefix)/lib/pkgconfig/
 -	${CP} gtkada.pc $(prefix)/lib/pkgconfig/
 -	-${RM} ${prefix}/projects/gtkada*
--	./generate_prj.sh GtkAda "${prefix}" ${DEFAULT_LIBRARY_TYPE} ${SOVER}
+-	./generate_prj.sh GtkAda "${prefix}" ${DEFAULT_LIBRARY_TYPE} ${SOVER} ""
 -	${CP} gtkada.gpr ${prefix}/lib/gnat/
 +	${MKDIR} "${DESTDIR}${gprdir}"
 +	${MKDIR} "${DESTDIR}${gprdir}/gtkada"
@@ -354,47 +382,45 @@
 +	${CP} gtkada.pc "${DESTDIR}${libdir}/pkgconfig/"
 +	-${RM} "${DESTDIR}${prefix}"/projects/gtkada*
 +	./generate_prj.sh GtkAda "${bindir}" "${incdir}" "${libdir}" \
-+                "${libsubdir_static}" "${libsubdir_shared}" \
-+                "${alisubdir_static}" "${alisubdir_shared}" \
-+                "${DEFAULT_LIBRARY_TYPE}" "${SOVER}"
++	        "${libsubdir_static}" "${libsubdir_shared}" \
++	        "${alisubdir_static}" "${alisubdir_shared}" "" \
++	        "${DEFAULT_LIBRARY_TYPE}" "${SOVER}"
 +	${CP} gtkada.gpr "${DESTDIR}${gprdir}"
  ifeq ($(HAVE_LIBGLADE), True)
--	./generate_prj.sh GtkAda_Glade "${prefix}" ${DEFAULT_LIBRARY_TYPE} ${SOVER}
+-	./generate_prj.sh GtkAda_Glade "${prefix}" ${DEFAULT_LIBRARY_TYPE} ${SOVER} ""
 -	${CP} gtkada_glade.gpr ${prefix}/lib/gnat/
 +	./generate_prj.sh GtkAda_Glade "${bindir}" "${incdir}" "${libdir}" \
-+                "${libsubdir_static}" "${libsubdir_shared}" \
-+                "${alisubdir_static}" "${alisubdir_shared}" \
-+                "${DEFAULT_LIBRARY_TYPE}" "${SOVER}"
++	        "${libsubdir_static}" "${libsubdir_shared}" \
++	        "${alisubdir_static}" "${alisubdir_shared}" "" \
++	        "${DEFAULT_LIBRARY_TYPE}" "${SOVER}"
 +	${CP} gtkada_glade.gpr "${DESTDIR}${gprdir}"
  endif	
  ifeq ($(HAVE_OPENGL), True)
--	./generate_prj.sh GtkAda_GL "${prefix}" ${DEFAULT_LIBRARY_TYPE} ${SOVER}
+-	./generate_prj.sh GtkAda_GL "${prefix}" ${DEFAULT_LIBRARY_TYPE} ${SOVER} opengl
 -	${CP} gtkada_gl.gpr ${prefix}/lib/gnat/
 +	./generate_prj.sh GtkAda_GL "${bindir}" "${incdir}" "${libdir}" \
-+                "${libsubdir_static}" "${libsubdir_shared}" \
-+                "${alisubdir_static}" "${alisubdir_shared}" \
-+                "${DEFAULT_LIBRARY_TYPE}" "${SOVER}"
++	        "${libsubdir_static}" "${libsubdir_shared}" \
++	        "${alisubdir_static}" "${alisubdir_shared}" opengl \
++	        "${DEFAULT_LIBRARY_TYPE}" "${SOVER}"
 +	${CP} gtkada_gl.gpr "${DESTDIR}${gprdir}"
  endif	
  ifeq ($(HAVE_GNOME), True)
--	./generate_prj.sh GtkAda_Gnome "${prefix}" ${DEFAULT_LIBRARY_TYPE} ${SOVER}
+-	./generate_prj.sh GtkAda_Gnome "${prefix}" ${DEFAULT_LIBRARY_TYPE} ${SOVER} ""
 -	${CP} gtkada_gnome.gpr ${prefix}/lib/gnat/
 +	./generate_prj.sh GtkAda_Gnome "${bindir}" "${incdir}" "${libdir}" \
-+                "${libsubdir_static}" "${libsubdir_shared}" \
-+                "${alisubdir_static}" "${alisubdir_shared}" \
-+                "${DEFAULT_LIBRARY_TYPE}" "${SOVER}"
++	        "${libsubdir_static}" "${libsubdir_shared}" \
++	        "${alisubdir_static}" "${alisubdir_shared}" "" \
++	        "${DEFAULT_LIBRARY_TYPE}" "${SOVER}"
 +	${CP} gtkada_gnome.gpr "${DESTDIR}${gprdir}"
  endif	
--	${CP} *.lgpr ${prefix}/lib/gnat/gtkada
-+	${CP} *.lgpr "${DESTDIR}${gprdir}/gtkada"
  ifeq ($(OS),Windows_NT)
 -	${CP} gtkada_install_*.gpr ${prefix}/include/gtkada
 +	${CP} gtkada_install_*.gpr "${DESTDIR}${incdir}"
  endif
  
  clean: force
---- shared.gpr	2010-06-11 13:15:51.000000000 +0200
-+++ shared.gpr	2010-09-25 17:19:52.000000000 +0200
+--- shared.gpr	2011-04-28 16:16:57.000000000 +0200
++++ shared.gpr	2011-08-10 20:03:51.000000000 +0200
 @@ -1,6 +1,6 @@
  project Shared is
  
@@ -423,7 +449,7 @@
        end case;
     end Binder;
 --- src/glade/Makefile.in	2007-06-23 04:18:24.000000000 +0200
-+++ src/glade/Makefile.in	2011-01-18 01:41:00.000000000 +0100
++++ src/glade/Makefile.in	2011-08-10 18:34:04.000000000 +0200
 @@ -4,6 +4,7 @@
  ARCHIVENAME      = libgtkada_glade.a
  LIBGLADE_SOURCES = glade.adb glade-xml.adb
@@ -433,7 +459,7 @@
  GPRFILE          = glade
  SRC_FILES        = ${LIBGLADE_OBJECTS}
 --- src/gnome/Makefile.in	2007-06-23 04:18:01.000000000 +0200
-+++ src/gnome/Makefile.in	2011-01-18 01:44:22.000000000 +0100
++++ src/gnome/Makefile.in	2011-08-10 18:34:04.000000000 +0200
 @@ -3,6 +3,7 @@
  SONAME        = libgnomeada-$(MAJOR).$(MINOR)$(SO_EXT).$(MICRO)
  ARCHIVENAME   = libgnomeada.a
@@ -442,8 +468,8 @@
  EXTERNAL_LIBS = @GNOME_LIBS@
  GPRFILE       = gnome
  
---- src/Makefile.common.in	2011-02-06 03:44:30.000000000 +0100
-+++ src/Makefile.common.in	2011-02-11 00:11:35.000000000 +0100
+--- src/Makefile.common.in	2010-10-27 16:50:55.000000000 +0200
++++ src/Makefile.common.in	2011-08-10 22:55:34.000000000 +0200
 @@ -5,6 +5,7 @@
  
  GNATMAKE = gnatmake
@@ -452,7 +478,7 @@
  BUILD_SHARED = @BUILD_SHARED@
  SO_EXT   = @SO_EXT@
  SO_OPTS  = @SO_OPTS@
-@@ -38,11 +39,27 @@
+@@ -40,11 +41,27 @@
  RANLIB = @RANLIB@
  
  prefix        = @prefix@
@@ -485,7 +511,7 @@
  
  #################################################################
  ## Generic targets
-@@ -61,12 +78,15 @@
+@@ -63,12 +80,15 @@
  
  all:
  
@@ -506,43 +532,48 @@
  endif
  
  module_ada: force
-@@ -74,31 +94,37 @@
+@@ -76,23 +96,27 @@
  
  ifneq (${SONAME},)
  module_install_common: force
--	$(INSTALL_DATA) ${OBJ_DIR}/$(ARCHIVENAME) $(alidir)/static
+-	$(MKDIR) $(alidir)/static/$(INC_SUBDIR)/
+-	$(INSTALL_DATA) ${OBJ_DIR}/$(ARCHIVENAME) $(alidir)/static/$(INC_SUBDIR)/
 -	$(RM) $(libdir)/$(ARCHIVENAME)
--	$(CP) *.ads *.adb $(incdir)
+-	$(MKDIR) $(incdir)/$(INC_SUBDIR)
+-	$(CP) *.ads *.adb $(incdir)/$(INC_SUBDIR)
 -	${CP} ${OBJ_DIR}/*.ali ${alidir}/static
-+	$(CP) *.ads *.adb "${DESTDIR}$(incdir)"
++	$(MKDIR) "${DESTDIR}$(incdir)/$(INC_SUBDIR)"
++	$(CP) *.ads *.adb "${DESTDIR}$(incdir)/$(INC_SUBDIR)"
 +
 +module_install_static: force
 +	$(RM) "${DESTDIR}$(libdir)/$(ARCHIVENAME)"
-+	$(INSTALL_DATA) ${OBJ_DIR}/$(ARCHIVENAME) "${DESTDIR}${libdir_static}"
++	$(MKDIR) "${DESTDIR}${libdir_static}/$(INC_SUBDIR)/"
++	$(INSTALL_DATA) ${OBJ_DIR}/$(ARCHIVENAME) "${DESTDIR}${libdir_static}/$(INC_SUBDIR)/"
 +	${CP} ${OBJ_DIR}/*.ali "${DESTDIR}${alidir_static}"
  
  module_install_shared: force
--	$(INSTALL_DATA) ${OBJ_DIR}/$(SONAME) $(alidir)/relocatable
+-	$(MKDIR) $(alidir)/relocatable/$(INC_SUBDIR)/
+-	$(INSTALL_DATA) ${OBJ_DIR}/$(SONAME) $(alidir)/relocatable/$(INC_SUBDIR)/
 -	$(RM) $(libdir)/$(LIBNAME)
--	$(LN) $(SONAME) $(alidir)/relocatable/$(LIBNAME)
--	$(LN) gtkada/relocatable/$(SONAME) $(libdir)/$(LIBNAME)
--	$(LN) gtkada/relocatable/$(SONAME) $(libdir)/$(SONAME)
--	${CP} ${OBJ_DIR}/*.ali ${alidir}/relocatable
-+	$(INSTALL_PROGRAM) ${OBJ_DIR}/$(SONAME) "${DESTDIR}${libdir_shared}"
++	$(MKDIR) "${DESTDIR}${libdir_shared}/$(INC_SUBDIR)/"
++	$(INSTALL_PROGRAM) ${OBJ_DIR}/$(SONAME) "${DESTDIR}${libdir_shared}/$(INC_SUBDIR)/"
 +	$(RM) "${DESTDIR}$(libdir)/$(LIBNAME)"
+ ifneq (${OS},Windows_NT)
+-	$(LN) $(SONAME) $(alidir)/relocatable/$(LIBNAME)
+-	$(LN) gtkada/relocatable/$(INC_SUBDIR)/$(SONAME) $(libdir)/$(LIBNAME)
+-	$(LN) gtkada/relocatable/$(INC_SUBDIR)/$(SONAME) $(libdir)/$(SONAME)
 +	$(LN) $(SONAME) "${DESTDIR}${libdir_shared}/$(LIBNAME)"
 +	@if [ "x${libsubdir_shared}" != x ]; then \
-+	   $(LN) "${libsubdir_shared}/$(SONAME)" "${DESTDIR}$(libdir)/$(LIBNAME)"; \
-+	   $(LN) "${libsubdir_shared}/$(SONAME)" "${DESTDIR}$(libdir)/$(SONAME)"; \
++	   $(LN) "${libsubdir_shared}/$(INC_SUBDIR)/$(SONAME)" "${DESTDIR}$(libdir)/$(LIBNAME)"
++	   $(LN) "${libsubdir_shared}/$(INC_SUBDIR)/$(SONAME)" "${DESTDIR}$(libdir)/$(SONAME)"
 +	fi
+ endif
+-	${CP} ${OBJ_DIR}/*.ali ${alidir}/relocatable
 +	${CP} ${OBJ_DIR}/*.ali "${DESTDIR}${alidir_shared}"
  
  ${OBJ_DIR}/${SONAME}: ${wildcard ${SRC_FILES:%=${OBJ_DIR}/%}}
  	@echo Building ${SONAME}
- 	@cd ${OBJ_DIR}; $(CC) -shared $(FPIC) $(OS_SPECIFIC_LINK_OPTIONS) \
- 	  -o $(SONAME) $(SO_OPTS)$(SONAME) ${SRC_FILES} \
--          $(GTK_LIBS) $(EXTERNAL_LIBS)
-+	  $(GTKADA_LIBS) $(GTK_LIBS) $(EXTERNAL_LIBS)
+@@ -102,10 +126,12 @@
  	@cd ${OBJ_DIR}; $(RM) $(LIBNAME)
  	@cd ${OBJ_DIR}; $(LN) $(SONAME) $(LIBNAME)
  ifneq (${BUILD_TYPE},Debug)
@@ -555,17 +586,17 @@
  	@cd ${OBJ_DIR}; ${CHMOD} +x ${LIBNAME}
  
  ${OBJ_DIR}/${ARCHIVENAME}: ${wildcard ${SRC_FILES:%=${OBJ_DIR}/%}}
---- src/Makefile.in	2009-02-27 19:40:34.000000000 +0100
-+++ src/Makefile.in	2011-01-18 01:38:04.000000000 +0100
-@@ -23,6 +23,7 @@
+--- src/Makefile.in	2010-08-17 18:09:23.000000000 +0200
++++ src/Makefile.in	2011-08-10 22:13:27.000000000 +0200
+@@ -22,6 +22,7 @@
  c_extra_objects = ../gtkextra/obj/gtk*.o
  
- SRC_FILES=glib*.o gdk*.o gtk*.o pango*.o ${c_objects} ${c_extra_objects}
+ SRC_FILES=glib*.o gdk*.o gtk*.o pango*.o cairo*.o ${c_objects} ${c_extra_objects}
 +GTKADA_LIBS=
  EXTERNAL_LIBS=
  include Makefile.common
  
-@@ -39,7 +40,10 @@
+@@ -38,7 +39,10 @@
  ifeq ($(BUILD_SHARED),yes)
  libs: ${OBJ_DIR}/$(SONAME)
  endif
@@ -577,7 +608,7 @@
  
  opengl gtkextra glade gnome tools: force
  	$(MAKE) -C $@
-@@ -57,45 +61,53 @@
+@@ -56,48 +60,56 @@
  	  -DHAVE_GETTEXT=$(HAVE_GETTEXT) gtkada-intl.gpb gtkada-intl.adb
  
  install: force
@@ -594,7 +625,7 @@
 +	   $(MKDIR) "${DESTDIR}$(bindir)"; \
 +	   $(MKDIR) "${DESTDIR}$(libdir)"; \
 +	   $(MKDIR) "${DESTDIR}$(incdir)"; \
-+	   if [ $(BUILD_STATIC) = yes ]; then \
++	   if [ ${BUILD_STATIC} = yes ]; then \
 +	      $(MKDIR) "${DESTDIR}${alidir_static}"; \
 +	      $(RM) "${DESTDIR}$(libdir)/$(ARCHIVENAME)"; \
 +	      $(INSTALL_DATA) ${OBJ_DIR}/$(ARCHIVENAME) "${DESTDIR}${libdir_static}"; \
@@ -620,13 +651,16 @@
 -		fi; \
 -	        $(CP) $(OBJ_DIR)/glib*.ali $(OBJ_DIR)/gdk*.ali $(alidir)/relocatable; \
 -	        $(CP) $(OBJ_DIR)/gtk*.ali $(OBJ_DIR)/pango*.ali $(alidir)/relocatable; \
+-	        $(CP) $(OBJ_DIR)/cairo*.ali $(alidir)/relocatable; \
 -	   fi; \
 -	   $(CP) glib*.ads glib*.adb $(MESA_SPECS) $(incdir); \
 -	   $(CP) gdk*.ads gdk*.adb $(incdir); \
 -	   $(CP) gtk*.ads gtk*.adb $(incdir); \
 -	   $(CP) pango*.ads pango*.adb $(incdir); \
+-	   $(CP) cairo*.ads cairo*.adb $(incdir); \
 -	   $(CP) $(OBJ_DIR)/glib*.ali $(OBJ_DIR)/gdk*.ali $(alidir)/static; \
 -	   $(CP) $(OBJ_DIR)/gtk*.ali $(OBJ_DIR)/pango*.ali $(alidir)/static; \
+-	   $(CP) $(OBJ_DIR)/cairo*.ali $(alidir)/static; \
 +	             $(INSTALL_PROGRAM) ${OBJ_DIR}/$(SONAME) "${DESTDIR}${libdir_shared}"; \
 +		     $(RM) "${DESTDIR}$(libdir)/$(LIBNAME)"; \
 +		     $(LN) $(SONAME) "${DESTDIR}${libdir_shared}/$(LIBNAME)"; \
@@ -637,21 +671,24 @@
 +		fi; \
 +	        $(CP) $(OBJ_DIR)/glib*.ali $(OBJ_DIR)/gdk*.ali "${DESTDIR}${alidir_shared}"; \
 +	        $(CP) $(OBJ_DIR)/gtk*.ali $(OBJ_DIR)/pango*.ali "${DESTDIR}${alidir_shared}"; \
++	        $(CP) $(OBJ_DIR)/cairo*.ali "${DESTDIR}${alidir_shared}"; \
 +	   fi; \
 +	   $(CP) glib*.ads glib*.adb $(MESA_SPECS) "${DESTDIR}$(incdir)"; \
 +	   $(CP) gdk*.ads gdk*.adb "${DESTDIR}$(incdir)"; \
 +	   $(CP) gtk*.ads gtk*.adb "${DESTDIR}$(incdir)"; \
 +	   $(CP) pango*.ads pango*.adb "${DESTDIR}$(incdir)"; \
-+	   if [ $(BUILD_STATIC) = yes ]; then \
++	   $(CP) cairo*.ads cairo*.adb "${DESTDIR}$(incdir)"; \
++	   if [ ${BUILD_STATIC} = yes ]; then \
 +	      $(CP) $(OBJ_DIR)/glib*.ali $(OBJ_DIR)/gdk*.ali "${DESTDIR}${alidir_static}"; \
 +	      $(CP) $(OBJ_DIR)/gtk*.ali $(OBJ_DIR)/pango*.ali "${DESTDIR}${alidir_static}"; \
++	      $(CP) $(OBJ_DIR)/cairo*.ali "${DESTDIR}${alidir_static}"; \
 +	   fi; \
             $(MAKE) -C opengl install; \
             $(MAKE) -C glade install; \
             $(MAKE) -C gnome install; \
             $(MAKE) -C tools install; \
 -	   $(CHMOD) ugo-w $(alidir)/static/*.ali; \
-+	   if [ $(BUILD_STATIC) = yes ]; then \
++	   if [ ${BUILD_STATIC} = yes ]; then \
 +	      $(CHMOD) ugo-w "${DESTDIR}${alidir_static}"/*.ali; \
 +	   fi; \
  	   if [ $(BUILD_SHARED) = yes ]; then \
@@ -660,18 +697,19 @@
  	   fi; \
  	fi
  
---- src/opengl/Makefile.in	2008-05-14 17:07:19.000000000 +0200
-+++ src/opengl/Makefile.in	2011-01-18 01:43:45.000000000 +0100
-@@ -6,6 +6,7 @@
- OPENGL_OBJECTS   = gtk-glarea.o gdk-gl.o gl_h.o
- OPENGL_C_OBJECTS = gtkglarea.o gdkgl.o
+--- src/opengl/Makefile.in	2010-06-09 10:22:53.000000000 +0200
++++ src/opengl/Makefile.in	2011-08-10 18:34:04.000000000 +0200
+@@ -12,6 +12,8 @@
  OPENGL_C_OBJECTS_DIR = ${OPENGL_C_OBJECTS:%=${OBJ_DIR}/%}
-+GTKADA_LIBS      = -L../../lib-obj -lgtkada  # relative to OBJ_DIR
+ ifeq ($(OS),Windows_NT)
+     GTKADA_LIBS  = ../../lib-obj/libgtkada.dll
++else
++    GTKADA_LIBS  = -L../../lib-obj -lgtkada  # relative to OBJ_DIR
+ endif
  EXTERNAL_LIBS    = @GL_LIBS@
  OPENGL_FLAGS     = @GL_CFLAGS@
- GPRFILE          = opengl
 --- src/tools/gtkada-config.in	2009-02-28 10:45:18.000000000 +0100
-+++ src/tools/gtkada-config.in	2010-09-11 22:58:56.000000000 +0200
++++ src/tools/gtkada-config.in	2011-08-11 00:45:46.000000000 +0200
 @@ -3,21 +3,26 @@
  
  prefix=@prefix@
@@ -705,17 +743,16 @@
  
  usage()
  {
-@@ -36,7 +41,8 @@
+@@ -36,7 +41,7 @@
  
  show_cflags=1
  show_libs=1
 -libtype=relocatable
 +libtype=@DEFAULT_LIBRARY_TYPE@
-+building=0
  
  # Can have the following values:
  #   0 = none
-@@ -83,7 +89,7 @@
+@@ -83,7 +88,7 @@
  done
  
  ## Force static if relocatable was not installed
@@ -725,7 +762,7 @@
  else
     libtype=static
 --- src/tools/Makefile.in	2009-06-19 08:43:20.000000000 +0200
-+++ src/tools/Makefile.in	2010-09-26 14:19:07.000000000 +0200
++++ src/tools/Makefile.in	2011-08-10 19:29:40.000000000 +0200
 @@ -27,10 +27,10 @@
  
  install: force
@@ -734,43 +771,45 @@
 -	${INSTALL_SCRIPT} ${GTKADA_CONFIG} ${bindir}
 -	${INSTALL_PROGRAM} ${OBJ_DIR}/${GATE_EX} ${bindir}
 -	${INSTALL_PROGRAM} ${OBJ_DIR}/${GDIALOG} ${bindir}
-+	${INSTALL_SCRIPT} ${GATE} ${DESTDIR}${bindir}
-+	${INSTALL_SCRIPT} ${GTKADA_CONFIG} ${DESTDIR}${bindir}
-+	${INSTALL_PROGRAM} ${OBJ_DIR}/${GATE_EX} ${DESTDIR}${bindir}
-+	${INSTALL_PROGRAM} ${OBJ_DIR}/${GDIALOG} ${DESTDIR}${bindir}
++	${INSTALL_SCRIPT} ${GATE} "${DESTDIR}${bindir}"
++	${INSTALL_SCRIPT} ${GTKADA_CONFIG} "${DESTDIR}${bindir}"
++	${INSTALL_PROGRAM} ${OBJ_DIR}/${GATE_EX} "${DESTDIR}${bindir}"
++	${INSTALL_PROGRAM} ${OBJ_DIR}/${GDIALOG} "${DESTDIR}${bindir}"
  
  clean: module_clean
  
---- testgtk/Makefile.in	2008-05-15 09:36:05.000000000 +0200
-+++ testgtk/Makefile.in	2010-09-26 15:32:00.000000000 +0200
-@@ -43,12 +43,12 @@
+--- testgtk/Makefile.in	2010-09-10 12:33:37.000000000 +0200
++++ testgtk/Makefile.in	2011-08-10 18:34:39.000000000 +0200
+@@ -45,13 +45,13 @@
  	$(CC) -c opengl/lw.c -Iopengl @GTK_CFLAGS@
  
  install: force
 -	$(MKDIR) $(examples)
 -	$(MKDIR) $(examples)/opengl
-+	$(MKDIR) $(DESTDIR)$(examples)
-+	$(MKDIR) $(DESTDIR)$(examples)/opengl
++	$(MKDIR) "${DESTDIR}$(examples)"
++	$(MKDIR) "${DESTDIR}$(examples)/opengl"
  	$(RM) b~*
--	-$(INSTALL_PROGRAM) testgtk $(examples)
--	$(CP) *.ad? *.xpm *.png *.jpg *.gif *.lwo $(examples)
+-	-$(INSTALL_PROGRAM) testgtk$(EXEEXT) $(examples)
+-	-$(INSTALL_PROGRAM) testcairo$(EXEEXT) $(examples)
+-	$(CP) *.ad? *.xpm *.png *.jpg *.gif *.lwo *.xml $(examples)
 -	$(CP) opengl/*.ad? opengl/*.[ch] $(examples)/opengl
-+	-$(INSTALL_PROGRAM) testgtk $(DESTDIR)$(examples)
-+	$(CP) *.ad? *.xpm *.png *.jpg *.gif *.lwo $(DESTDIR)$(examples)
-+	$(CP) opengl/*.ad? opengl/*.[ch] $(DESTDIR)$(examples)/opengl
++	-$(INSTALL_PROGRAM) testgtk$(EXEEXT) "${DESTDIR}$(examples)"
++	-$(INSTALL_PROGRAM) testcairo$(EXEEXT) "${DESTDIR}$(examples)"
++	$(CP) *.ad? *.xpm *.png *.jpg *.gif *.lwo *.xml "${DESTDIR}$(examples)"
++	$(CP) opengl/*.ad? opengl/*.[ch] "${DESTDIR}$(examples)/opengl"
  
  clean: module_clean
  
 --- xml/Makefile	2007-06-23 04:20:22.000000000 +0200
-+++ xml/Makefile	2010-09-26 18:02:38.000000000 +0200
++++ xml/Makefile	2011-08-10 19:50:04.000000000 +0200
 @@ -3,8 +3,8 @@
  MKDIR = mkdir -p
  
  install: force
 -	${MKDIR} $(prefix)/share/gps/plug-ins
 -	${CP} gtkada.xml ${prefix}/share/gps/plug-ins/
-+	${MKDIR} ${DESTDIR}${datadir}/gps/plug-ins
-+	${CP} gtkada.xml ${DESTDIR}${datadir}/gps/plug-ins/
++	${MKDIR} "${DESTDIR}${datadir}/gps/plug-ins"
++	${CP} gtkada.xml "${DESTDIR}${datadir}/gps/plug-ins/"
  
  force:
  
diff --git a/GtkAda-2.18.0-gl_placement.patch b/GtkAda-2.18.0-gl_placement.patch
new file mode 100644
index 0000000..2205ea0
--- /dev/null
+++ b/GtkAda-2.18.0-gl_placement.patch
@@ -0,0 +1,13 @@
+--- src/Makefile.common.in~	2011-08-12 03:21:39.000000000 +0200
++++ src/Makefile.common.in	2011-08-12 03:21:39.000000000 +0200
+@@ -106,8 +106,8 @@
+ 	${CP} ${OBJ_DIR}/*.ali "${DESTDIR}${alidir_static}"
+ 
+ module_install_shared: force
+-	$(MKDIR) "${DESTDIR}${libdir_shared}/$(INC_SUBDIR)/"
+-	$(INSTALL_PROGRAM) ${OBJ_DIR}/$(SONAME) "${DESTDIR}${libdir_shared}/$(INC_SUBDIR)/"
++	$(MKDIR) "${DESTDIR}${libdir_shared}/"
++	$(INSTALL_PROGRAM) ${OBJ_DIR}/$(SONAME) "${DESTDIR}${libdir_shared}/"
+ 	$(RM) "${DESTDIR}$(libdir)/$(LIBNAME)"
+ ifneq (${OS},Windows_NT)
+ 	$(LN) $(SONAME) "${DESTDIR}${libdir_shared}/$(LIBNAME)"
diff --git a/GtkAda-2.18.0-install_rm.patch b/GtkAda-2.18.0-install_rm.patch
new file mode 100644
index 0000000..117985b
--- /dev/null
+++ b/GtkAda-2.18.0-install_rm.patch
@@ -0,0 +1,28 @@
+--- docs/gtkada_rm/Makefile.in	2010-08-10 16:26:31.000000000 +0200
++++ docs/gtkada_rm/Makefile.in	2011-08-12 01:53:35.000000000 +0200
+@@ -9,6 +9,7 @@
+ DESTDIR =
+ 
+ SRC=../../src/*.ads ../../src/opengl/*.ads ../../src/glade/*.ads
++SUBDIRS=gtkada_rm gtkada_rm/screenshots gtkada_rm/support gtkada_rm/support/images
+ 
+ gtkada_rm: docgen docgen_clean
+ 
+@@ -22,10 +23,14 @@
+ 	$(RM) -rf log.txt doc_obj/*
+ 
+ install:
+-	-$(MKDIR) "${DESTDIR}${RM_dir}"
+-	-for i in gtkada_rm/*; \
++	-$(MKDIR) "${DESTDIR}$(docdir)"
++	-for dir in $(SUBDIRS); \
+ 	do \
+-	  $(INSTALL_DATA) $$i "${DESTDIR}${RM_dir}"; \
++	   $(MKDIR) "${DESTDIR}$(docdir)/$$dir"; \
++	   for i in $$dir/*; \
++	   do \
++	     $(INSTALL_DATA) $$i "${DESTDIR}$(docdir)/$$dir"; \
++	   done \
+ 	done
+ 
+ clean: docgen_clean
diff --git a/GtkAda-2.18.0-ldflags.patch b/GtkAda-2.18.0-ldflags.patch
new file mode 100644
index 0000000..9d67d0a
--- /dev/null
+++ b/GtkAda-2.18.0-ldflags.patch
@@ -0,0 +1,30 @@
+--- src/Makefile.common.in~	2011-08-14 01:52:13.000000000 +0200
++++ src/Makefile.common.in	2011-08-14 01:52:13.000000000 +0200
+@@ -2,6 +2,7 @@
+ CC = @CC@
+ FPIC = @FPIC@
+ PWD = $(shell pwd)
++LDFLAGS = @LDFLAGS@
+ 
+ GNATMAKE = gnatmake
+ OS_SPECIFIC_LINK_OPTIONS = @OS_SPECIFIC_LINK_OPTIONS@
+@@ -121,7 +122,7 @@
+ ${OBJ_DIR}/${SONAME}: ${wildcard ${SRC_FILES:%=${OBJ_DIR}/%}}
+ 	@echo Building ${SONAME}
+ 	@cd ${OBJ_DIR}; $(CC) -shared $(FPIC) $(OS_SPECIFIC_LINK_OPTIONS) \
+-	  -o $(SONAME) $(SO_OPTS)$(SONAME) ${SRC_FILES} \
++	  -o $(SONAME) $(SO_OPTS)$(SONAME) ${LDFLAGS} ${SRC_FILES} \
+           $(GTKADA_LIBS) $(GTK_LIBS) $(EXTERNAL_LIBS)
+ 	@cd ${OBJ_DIR}; $(RM) $(LIBNAME)
+ 	@cd ${OBJ_DIR}; $(LN) $(SONAME) $(LIBNAME)
+--- src/tools/Makefile.in~	2011-08-14 01:52:11.000000000 +0200
++++ src/tools/Makefile.in	2011-08-14 01:52:11.000000000 +0200
+@@ -23,7 +23,7 @@
+ INSTALL_SCRIPT  = @INSTALL_SCRIPT@
+ 
+ all: force
+-	${GNATMAKE} -Ptools ${GPR_BUILD} ${GNATMAKELDFLAGS}
++	${GNATMAKE} -Ptools ${GPR_BUILD} ${GNATMAKELDFLAGS} ${LDFLAGS}
+ 
+ install: force
+ 	-${CHMOD} +x ${GATE} ${GTKADA_CONFIG}
diff --git a/GtkAda-2.18.0-lgnomeada.patch b/GtkAda-2.18.0-lgnomeada.patch
new file mode 100644
index 0000000..40106f0
--- /dev/null
+++ b/GtkAda-2.18.0-lgnomeada.patch
@@ -0,0 +1,29 @@
+--- projects/generate_prj.sh~	2011-08-13 23:08:33.000000000 +0200
++++ projects/generate_prj.sh	2011-08-13 23:08:33.000000000 +0200
+@@ -14,6 +14,12 @@
+ 
+ lcmodule=`echo $module | tr [A-Z] [a-z]`
+ 
++if [ "${module}" = GtkAda_Gnome ]; then
++   library_name=gnomeada
++else
++   library_name="${lcmodule}"
++fi
++
+ if [ "$OS" = "Windows_NT" ]; then
+ lcversion="-$version"
+ else
+@@ -112,11 +118,11 @@
+       cat <<EOF >> ${lc}.gpr
+    case Gtkada_Kind is
+       when "static" =>
+-         for Library_Name use "${lcmodule}";
++         for Library_Name use "${library_name}";
+          for Library_Dir use "${libdir}/${libsubdir_static}";
+          for Library_ALI_Dir use "${libdir}/${alisubdir_static}";
+       when "relocatable" =>
+-         for Library_Name use "${lcmodule}${lcversion}";
++         for Library_Name use "${library_name}${lcversion}";
+          for Library_Dir use "${libdir}/${libsubdir_shared}";
+          for Library_ALI_Dir use "${libdir}/${alisubdir_shared}";
+    end case;
diff --git a/GtkAda-2.18.0-link_as_needed.patch b/GtkAda-2.18.0-link_as_needed.patch
new file mode 100644
index 0000000..3772e96
--- /dev/null
+++ b/GtkAda-2.18.0-link_as_needed.patch
@@ -0,0 +1,11 @@
+--- configure~	2011-08-12 21:35:20.000000000 +0200
++++ configure	2011-08-12 21:35:20.000000000 +0200
+@@ -3036,7 +3036,7 @@
+   else
+     GTK_PREFIX=`$PKG_CONFIG $GTK --variable=prefix`
+     GTK_CFLAGS=`$PKG_CONFIG $GTK --cflags`
+-    GTK_LIBS=`$PKG_CONFIG $GTK --libs`
++    GTK_LIBS=-Wl,--as-needed\ `$PKG_CONFIG $GTK --libs`
+     gtk_config_major_version=`$PKG_CONFIG $GTK --modversion | \
+            sed 's/\([0-9]*\).\([0-9]*\).\([0-9]*\)/\1/'`
+     gtk_config_minor_version=`$PKG_CONFIG $GTK --modversion | \
diff --git a/GtkAda-2.14.0-lm.patch b/GtkAda-2.18.0-lm.patch
similarity index 50%
rename from GtkAda-2.14.0-lm.patch
rename to GtkAda-2.18.0-lm.patch
index 6c9b343..555f035 100644
--- a/GtkAda-2.14.0-lm.patch
+++ b/GtkAda-2.18.0-lm.patch
@@ -1,11 +1,11 @@
---- testgtk/Makefile.in~	2010-02-14 02:31:31.000000000 +0100
-+++ testgtk/Makefile.in	2010-02-14 02:31:31.000000000 +0100
+--- testgtk/Makefile.in	2011-08-11 00:54:31.000000000 +0200
++++ testgtk/Makefile.in	2011-08-11 00:54:31.000000000 +0200
 @@ -24,7 +24,7 @@
  
  ifeq ($(HAVE_OPENGL),True)
  OPENGL_C_OBJECTS=lw.o
 -OPENGL_LIBS= @GL_LIBS@
 +OPENGL_LIBS= @GL_LIBS@ -lm
+ GTKADA_GL_LIBS=-lgtkada_gl
  else
  OPENGL_C_OBJECTS=
- OPENGL_LIBS=
diff --git a/GtkAda-2.18.0-source_dirs.patch b/GtkAda-2.18.0-source_dirs.patch
new file mode 100644
index 0000000..6f1d318
--- /dev/null
+++ b/GtkAda-2.18.0-source_dirs.patch
@@ -0,0 +1,40 @@
+--- src/gnome/Makefile.in~	2011-08-14 02:54:05.000000000 +0200
++++ src/gnome/Makefile.in	2011-08-14 02:54:05.000000000 +0200
+@@ -6,6 +6,7 @@
+ GTKADA_LIBS   = -L../../lib-obj -lgtkada  # relative to OBJ_DIR
+ EXTERNAL_LIBS = @GNOME_LIBS@
+ GPRFILE       = gnome
++INC_SUBDIR    = gnome
+ 
+ include ../Makefile.common
+ 
+--- src/glade/Makefile.in~	2011-08-14 02:52:49.000000000 +0200
++++ src/glade/Makefile.in	2011-08-14 02:52:49.000000000 +0200
+@@ -8,6 +8,7 @@
+ EXTERNAL_LIBS    = @LIBGLADE_LIBS@
+ GPRFILE          = glade
+ SRC_FILES        = ${LIBGLADE_OBJECTS}
++INC_SUBDIR       = glade
+ include ../Makefile.common
+ 
+ ## These cannot be shared in Makefile.common, since relative paths might be
+--- projects/Makefile~	2011-08-14 02:50:51.000000000 +0200
++++ projects/Makefile	2011-08-14 02:50:51.000000000 +0200
+@@ -18,7 +18,7 @@
+ ifeq ($(HAVE_LIBGLADE), True)
+ 	./generate_prj.sh GtkAda_Glade "${bindir}" "${incdir}" "${libdir}" \
+ 	        "${libsubdir_static}" "${libsubdir_shared}" \
+-	        "${alisubdir_static}" "${alisubdir_shared}" "" \
++	        "${alisubdir_static}" "${alisubdir_shared}" glade \
+ 	        "${DEFAULT_LIBRARY_TYPE}" "${SOVER}"
+ 	${CP} gtkada_glade.gpr "${DESTDIR}${gprdir}"
+ endif	
+@@ -32,7 +32,7 @@
+ ifeq ($(HAVE_GNOME), True)
+ 	./generate_prj.sh GtkAda_Gnome "${bindir}" "${incdir}" "${libdir}" \
+ 	        "${libsubdir_static}" "${libsubdir_shared}" \
+-	        "${alisubdir_static}" "${alisubdir_shared}" "" \
++	        "${alisubdir_static}" "${alisubdir_shared}" gnome \
+ 	        "${DEFAULT_LIBRARY_TYPE}" "${SOVER}"
+ 	${CP} gtkada_gnome.gpr "${DESTDIR}${gprdir}"
+ endif	
diff --git a/GtkAda.spec b/GtkAda.spec
index da01f71..882fba0 100644
--- a/GtkAda.spec
+++ b/GtkAda.spec
@@ -1,28 +1,42 @@
 Name:           GtkAda
-Version:        2.14.1
-Release:        7.1%{?dist}
-Summary:        Ada graphical toolkit based on Gtk+
+Version:        2.18.0
+Release:        1%{?dist}
+Summary:        Ada binding to GTK+
+Summary(sv):    Adabinding till GTK+
 Group:          System Environment/Libraries
 License:        GPLv2+
 URL:            http://libre.adacore.com/libre/tools/GtkAda/
 # Adacore don't understand how to publish files for downloading, but the source
 # is available from here:
 # http://libre.adacore.com/libre/download2
-Source:         GtkAda-gpl-%{version}.tgz
-Patch0:         GtkAda-gtk217.patch
+Source:         gtkada-gpl-%{version}-src.tgz
+# I guess that this patch adapted older versions of GtkAda to work with
+# GTK+ 2.17, and that it is now unnecessary:
+#Patch0:         GtkAda-gtk217.patch
 # Patch to make project files use fedora-gnat-project-common:
 Patch1:         GtkAda-2.14.1-multilib_gpr.patch
 # Patch to make gtkada-config use uname:
 Patch2:         GtkAda-2.14.1-multilib_gtkada-config.patch
 # Patch to fix implicit DSO linking, proposed upstream 2010-02-16:
 # http://lists.adacore.com/pipermail/gtkada/2010-February/003871.html
-Patch3:         GtkAda-2.14.0-lm.patch
-# Adaptation to an addition in GTK+ 2.21, proposed upstream 2010-06-21:
-# http://lists.adacore.com/pipermail/gtkada/2010-June/003888.html
-Patch4:         GtkAda-2.14.0-GTK+-2.21.patch
+Patch3:         GtkAda-2.18.0-lm.patch
 # Patch for a more flexible build system, proposed upstream 2011-02-14:
 # http://lists.adacore.com/pipermail/gtkada/2011-February/003969.html
-Patch5:         GtkAda-2.14.1-configuration-3.patch
+Patch5:         GtkAda-2.18.0-configuration-4.patch
+# Fix to the reference manual installation, backported from the trunk:
+Patch6:         GtkAda-2.18.0-install_rm.patch
+# Hack to get libgtkada_gl in the right place:
+Patch7:         GtkAda-2.18.0-gl_placement.patch
+# GNU-specific patch to avoid link bloat:
+Patch8:         GtkAda-2.18.0-link_as_needed.patch
+# Patch for correct linking to libgnomeada, proposed upstream 2011-08-13:
+# http://lists.adacore.com/pipermail/gtkada/2011-August/004046.html
+Patch9:         GtkAda-2.18.0-lgnomeada.patch
+# Patch for LDFLAGS support, proposed upstream 2011-08-14:
+# http://lists.adacore.com/pipermail/gtkada/2011-August/004047.html
+Patch10:        GtkAda-2.18.0-ldflags.patch
+# Hack to avoid conflicts where two project files claim the same source files:
+Patch11:        GtkAda-2.18.0-source_dirs.patch
 BuildRequires:  gcc-gnat
 BuildRequires:  perl
 BuildRequires:  gtk2-devel >= 2.21
@@ -43,13 +57,22 @@ BuildRequires:  fedora-gnat-project-common >= 3
 # gcc-gnat is only available on these architectures:
 ExclusiveArch:  %{ix86} x86_64 ia64 ppc ppc64 alpha
 
-%description
-GtkAda is an Ada graphical toolkit based on Gtk+. It allows you to
-develop graphical applications in Ada using Gtk+.
+%global common_description_en \
+%{name} is an Ada binding to the graphical toolkit GTK+. It allows you to \
+develop graphical user interfaces in Ada using GTK+.
+
+%global common_description_sv \
+%{name} är en adabindning till den grafiska verktygslådan GTK+. Med %{name} \
+kan du utveckla grafiska användargränssnitt i ada baserade på GTK+.
+
+%description %{common_description_en}
+
+%description -l sv %{common_description_sv}
 
 
 %package devel
-Summary:        Development files for GtkAda
+Summary:        Development files for %{name}
+Summary(sv):    Filer för programmering med %{name}
 Group:          Development/Libraries
 Requires:       %{name}%{?_isa} = %{version}-%{release}
 Requires:       %{name}-gnome%{?_isa} = %{version}-%{release}
@@ -58,70 +81,110 @@ Requires:       %{name}-gl%{?_isa} = %{version}-%{release}
 Requires:       gtk2-devel%{?_isa}
 Requires:       fedora-gnat-project-common >= 2
 
-%description devel
+%description devel %{common_description_en}
+
 The %{name}-devel package contains source code and linking information for
 developing applications that use %{name}.
 
+%description devel -l sv %{common_description_sv}
+
+Paketet %{name}-devel innehåller källkod och länkningsinformation som behövs
+för att utveckla program som använder %{name}.
+
 
 %package gnome
-Summary:        GNOME bindings of GtkAda
+Summary:        %{name} binding to Gnome's GUI libraries
+Summary(sv):    %{name}s bindning till Gnomes GUI-bibliotek
 Group:          System Environment/Libraries
 
-%description gnome
-%{summary}.
+%description gnome %{common_description_en}
+
+The %{name}-gnome package contains the %{name} binding to Gnome's graphical
+user interface libraries.
+
+%description gnome -l sv %{common_description_sv}
+
+Paketet %{name}-gnome innehåller %{name}s bindning till Gnomes bibliotek för
+grafiska användargränssnitt.
 
 
 %package glade
-Summary:        Glade bindings of GtkAda
+Summary:        %{name} binding to Libglade
+Summary(sv):    %{name}s bindning till Libglade
 Group:          System Environment/Libraries
 
-%description glade
-%{summary}.
+%description glade %{common_description_en}
+
+The %{name}-glade package contains the %{name} binding to Libglade.
+
+%description glade -l sv %{common_description_sv}
+
+Paketet %{name}-glade innehåller %{name}s bindning till Libglade.
 
 
 %package gl
-Summary:        OpenGL bindings of GtkAda
+Summary:        %{name} binding to OpenGL
+Summary(sv):    %{name}s bindning till OpenGL
 Group:          System Environment/Libraries
 
-%description gl
-%{summary}.
+%description gl %{common_description_en}
+
+The %{name}-gl package contains the %{name} binding to the OpenGL interface.
+
+%description gl -l sv %{common_description_sv}
+
+Paketet %{name}-gl innehåller %{name}s bindning till OpenGL-gränssnittet.
 
 
 %package doc
-Summary:        Documentation for GtkAda
+Summary:        Documentation for %{name}
+Summary(sv):    Dokumentation till %{name}
 Group:          Documentation
-Requires:       %{name}-devel = %{version}-%{release}
 BuildArch:      noarch
 
-%description doc
-Documentation for GtkAda.
+%description doc %{common_description_en}
+
+The %{name}-doc package contains the documentation for %{name}.
+
+%description doc -l sv %{common_description_sv}
+
+Paketet %{name}-doc innehåller dokumentationen till %{name}.
 
 
 %prep
-%setup -q -n GtkAda-gpl-%{version}
+%setup -q -n gtkada-gpl-%{version}-src
 %patch5
-%patch0 -p1 -b .gtk217
+#patch0 -p1 -b .gtk217
 %patch1
 %patch2
 %patch3
-%patch4
+%patch6
+%patch7
+%patch8
+%patch9
+%patch10
+%patch11
 find -name .cvsignore | xargs rm -fr
 
 %build
 %configure --enable-build=Debuginfo --disable-subdirs --disable-static
 make GNATMAKE="gnatmake %{Gnatmake_optflags}"
-make -C docs
 
 
 %install
 %make_install gprdir=%{_GNAT_project_dir}
-(make -C docs install prefix=$PWD/doc-install)
 
 mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1
 (cd docs; install -m 0644 gate.1 gtkada-config.1 $RPM_BUILD_ROOT%{_mandir}/man1)
 
-rm -rf $RPM_BUILD_ROOT%{_datadir}/doc
-rm -rf $RPM_BUILD_ROOT%{_datadir}/examples
+# Put the examples in the documentation directory, excluding binaries.
+rm $RPM_BUILD_ROOT%{_datadir}/examples/gtkada/testgtk/testgtk $RPM_BUILD_ROOT%{_datadir}/examples/gtkada/testgtk/testcairo
+mv --no-target-directory $RPM_BUILD_ROOT%{_datadir}/examples/gtkada $RPM_BUILD_ROOT%{_docdir}/gtkada/examples
+
+# features and known-problems belong with the documentation for developers.
+# The license needs to be replicated in the doc subpackage as it doesn't depend
+# on the main package.
+cp features known-problems COPYING $RPM_BUILD_ROOT%{_docdir}/gtkada
 
 
 %post -p /sbin/ldconfig
@@ -170,17 +233,17 @@ rm -rf $RPM_BUILD_ROOT%{_datadir}/examples
 %{_libdir}/pkgconfig/*
 %{_datadir}/gps
 %{_mandir}/man*/*
-%doc known-problems
 
 
 %files doc
-%doc examples
-%doc doc-install/share/doc/gtkada/*
+%{_docdir}/gtkada
 
 
 %changelog
-* Sun May 22 2011 Björn Persson <bjorn at rombobjörn.se> - 2.14.1-7.1
-- Removed some obsolete stuff.
+* Sun Aug 14 2011 Björn Persson <bjorn at rombobjörn.se> - 2.18.0-1
+- new release 2.18.0
+- Dropped the patches gtk217 and GTK+-2.21.
+- Improved and translated the descriptions.
 
 * Tue May 03 2011 Björn Persson <bjorn at rombobjörn.se> - 2.14.1-7
 - Updated for fedora-gnat-project-common 3.
diff --git a/sources b/sources
index 4ab86b4..95787ef 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-ee729fa676b3c2ae8067b322ff1c43cb  GtkAda-gpl-2.14.1.tgz
+f5f9c8cb540efd4b261d4914b3410433  gtkada-gpl-2.18.0-src.tgz


More information about the scm-commits mailing list