ncurses 5.9 - patch 20111022
[ncurses.git] / misc / gen-pkgconfig.in
index 36220d3d47c5b099681dcf47d30952d93ecb941b..c924bc633fac2d8fb0bd30ca87ae903820c96274 100644 (file)
@@ -1,7 +1,7 @@
 #!@SHELL@
-# $Id: gen-pkgconfig.in,v 1.4 2009/01/04 21:52:33 tom Exp $
+# $Id: gen-pkgconfig.in,v 1.10 2011/10/08 19:20:15 tom Exp $
 ##############################################################################
-# Copyright (c) 2009 Free Software Foundation, Inc.                          #
+# Copyright (c) 2009-2010,2011 Free Software Foundation, Inc.                #
 #                                                                            #
 # Permission is hereby granted, free of charge, to any person obtaining a    #
 # copy of this software and associated documentation files (the "Software"), #
@@ -28,7 +28,7 @@
 # authorization.                                                             #
 ##############################################################################
 #
-# Author: Thomas E. Dickey, 2009
+# Author: Thomas E. Dickey
 #
 # The complete configure script for ncurses is the ncurses5-config (or similar
 # name, depending on the flavor, e.g., ncursesw5-config, ncurses6-config, etc).
 # library, except that the tinfo library does not depend on ncurses.
 LIB_NAME=@LIB_NAME@
 TINFO_NAME=@TINFO_NAME@
+PANEL_NAME=panel # @PANEL_NAME@
+MENU_NAME=menu # @MENU_NAME@
+FORM_NAME=form # @FORM_NAME@
+CXX_NAME=ncurses++ # @CXX_NAME@
 DFT_DEP_SUFFIX=@DFT_DEP_SUFFIX@
+TINFO_ARG_SUFFIX=@TINFO_ARG_SUFFIX@
 CXX_LIB_SUFFIX=@CXX_LIB_SUFFIX@
 
 prefix="@prefix@"
@@ -53,15 +58,39 @@ show_includedir='@includedir@'
 show_libdir='@libdir@'
 
 MAIN_LIBRARY="${LIB_NAME}@DFT_ARG_SUFFIX@"
-SUB_LIBRARY="${TINFO_NAME}@DFT_ARG_SUFFIX@"
+SUB_LIBRARY="${TINFO_ARG_SUFFIX}"
+PANEL_LIBRARY="${PANEL_NAME}@DFT_ARG_SUFFIX@"
+MENU_LIBRARY="${MENU_NAME}@DFT_ARG_SUFFIX@"
+FORM_LIBRARY="${FORM_NAME}@DFT_ARG_SUFFIX@"
+
+SUB_LIBRARY_REQ=${SUB_LIBRARY}
+if test $TINFO_NAME = $LIB_NAME ; then
+       SUB_LIBRARY_REQ=
+fi
+
+if test "$includedir" = "/usr/include" ; then
+       CFLAGS=
+else
+       CFLAGS="-I\${includedir}"
+fi
+
+if test "$libdir" = "/usr/lib" ; then
+       LDFLAGS=
+else
+       LDFLAGS="-L\${libdir}"
+fi
 
 for lib in ../lib/*
 do
        name=`basename $lib`
+       if test "$name" = "*" ; then
+               break
+       fi
+
        root=`basename $name "$DFT_DEP_SUFFIX"`
-       if test "$name" == "$root" ; then
+       if test "$name" = "$root" ; then
                root=`basename $name "$CXX_LIB_SUFFIX"`
-               if test "$name" == "$root" ; then
+               if test "$name" = "$root" ; then
                        continue
                fi
        fi
@@ -69,37 +98,31 @@ do
        name=`echo "$name" | sed -e 's/^lib//' -e 's/\..*$//'`
 
        desc="ncurses @NCURSES_MAJOR@.@NCURSES_MINOR@"
+       reqs=
+
        if test $name = $MAIN_LIBRARY ; then
-               reqs=
                desc="$desc library"
        elif test $name = $SUB_LIBRARY ; then
-               reqs=
                desc="$desc terminal interface library"
-       else
-               reqs=$MAIN_LIBRARY
+       elif expr $name : ".*${CXX_NAME}.*" >/dev/null ; then
+               reqs="$PANEL_LIBRARY, $MENU_LIBRARY, $FORM_LIBRARY, $MAIN_LIBRARY"
                desc="$desc add-on library"
-       fi
-
-       if test "$includedir" = "/usr/include" ; then
-               cflags=
-       else
-               cflags="-I\${includedir}"
-       fi
-
-       if test "$libdir" = "/usr/lib" ; then
-               libs=
        else
-               libs="-L\${libdir}"
+               reqs="$MAIN_LIBRARY"
+               desc="$desc add-on library"
        fi
-       libs="$libs -l$name"
 
-       # add dependencies that pkg-config cannot guess about
-       if test -z "$reqs" ; then
-               libs="$libs @LIBS@"
+       if test $name != $SUB_LIBRARY ; then
+               if test $name != $TINFO_NAME ; then
+                       test -n "$reqs" && reqs="$reqs, "
+                       reqs="${reqs}${SUB_LIBRARY}"
+               fi
        fi
 
        echo "** creating ${name}.pc"
        cat >${name}.pc <<EOF
+# vile:makemode
+
 prefix=$show_prefix
 exec_prefix=$show_exec_prefix
 libdir=$show_libdir
@@ -110,10 +133,13 @@ version=@NCURSES_MAJOR@.@NCURSES_MINOR@.@NCURSES_PATCH@
 Name: $name
 Description: $desc
 Version: \${version}
-Requires: $reqs
-Libs: $libs
-Cflags: $cflags
+URL: http://invisible-island.net/ncurses
+Requires.private: $reqs
+Libs: $LDFLAGS -l$name
+Libs.private: @LIBS@
+Cflags: $CFLAGS
 EOF
-       # pr -f ${name}.pc
+
+       #pr -f ${name}.pc
 done
 # vile:shmode