automake
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

KAI compiler dependency generation


From: Ralf Wildenhues
Subject: KAI compiler dependency generation
Date: Fri, 27 Jun 2003 10:12:27 +0200
User-agent: Mutt/1.4.1i

automake's depcomp script could be adjusted to recognize the dependency
generation option of the KAI C++/C compiler, version 4.0.  Don't know if
this would be useful to people, as the compiler is not developed any
more, but just in case:

| $ KCC --c --output_dependencies deps/bar.baz -c -o obj/blubb.o src/foo.c
| $ ls
| deps  obj  src
| $ ls obj
| blubb.o
| $ ls deps
| bar.baz
| $ more deps/bar.baz
| obj/blubb.o: src/foo.c
| obj/blubb.o: src/foo.h
| [...]

Thus, sgi-like (at least somewhat) dependency generation is possible.
Below is a patch which implements it.  Corrections and suggestions
welcome -- I especially didn't know what to do in the libtool case, as
KCC does not understand '-Wp,', and I do not use libtool.  There has to
be a space after --output_dependencies for KCC.

Regards,
Ralf

--- depcomp.orig        2003-06-26 21:43:38.000000000 +0200
+++ depcomp     2003-06-27 10:03:39.000000000 +0200
@@ -55,6 +55,11 @@
   depmode=gcc
 fi
 
+if test "$depmode" = kai; then
+  sgiflag="--output_dependencies "
+  depmode=sgi
+fi
+
 if test "$depmode" = dashXmstdout; then
    # This is just like dashmstdout with a different argument.
    dashmflag=-xM
@@ -127,11 +132,14 @@
   ;;
 
 sgi)
-  if test "$libtool" = yes; then
-    "$@" "-Wp,-MDupdate,$tmpdepfile"
-  else
-    "$@" -MDupdate "$tmpdepfile"
+  if test -z "$sgiflag"; then
+    if test "$libtool" = yes; then
+      sgiflag=-Wp,-MDupdate,
+    else
+      sgiflag="-MDupdate "
+    fi
   fi
+  "$@" $sgiflag"$tmpdepfile"
   stat=$?
   if test $stat -eq 0; then :
   else
@@ -278,6 +286,11 @@
    rm -f "$tmpdepfile"
    ;;
 
+kai)
+  # KAI C++/C compiler, handled by sgi mode.  See also hp mode.
+  exit 1
+  ;;
+
 #nosideeffect)
   # This comment above is used by automake to tell side-effect
   # dependency tracking mechanisms from slower ones.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]