Revision: 389 http://trac.macosforge.org/projects/darwinbuild/changeset/389 Author: wsiegrist@apple.com Date: 2008-09-24 14:58:24 -0700 (Wed, 24 Sep 2008) Log Message: ----------- Fix build problems on non-standard OSes and support more versions of gcc Modified Paths: -------------- trunk/darwinbuild/installXcode31 trunk/darwintrace/Makefile trunk/darwintrace/darwintrace.c Modified: trunk/darwinbuild/installXcode31 =================================================================== --- trunk/darwinbuild/installXcode31 2008-09-19 22:08:26 UTC (rev 388) +++ trunk/darwinbuild/installXcode31 2008-09-24 21:58:24 UTC (rev 389) @@ -20,8 +20,14 @@ BINSYMLINKS=( \ gcc \ - gcc-3.3 \ gcc-4.0 \ + gcc-4.2 \ + gcov \ + gcov-4.0 \ + gcov-4.2 \ + g++ \ + g++-4.0 \ + g++-4.2 \ strip) Modified: trunk/darwintrace/Makefile =================================================================== --- trunk/darwintrace/Makefile 2008-09-19 22:08:26 UTC (rev 388) +++ trunk/darwintrace/Makefile 2008-09-24 21:58:24 UTC (rev 389) @@ -10,16 +10,17 @@ all: darwintrace.dylib VERSION=$(shell uname -r | cut -f1 -d. ) -ifeq ($(VERSION), 9) +ifeq ($(VERSION), 8) +CFLAGS = -nostdlib +else CFLAGS = -nodefaultlibs -else -CFLAGS = -nostdlib endif +ARCHS=$(shell lipo -info /usr/lib/libSystem.dylib | cut -d : -f 3 | sed 's/ppc7400/ppc/' | awk '{ ORS=" "; for(i=1;i<=NF;i++) print "-arch", $$i}') darwintrace.dylib: darwintrace.c cc -o $(OBJROOT)/$@ \ - -arch i386 -arch ppc -arch ppc64 \ + $(ARCHS) \ -W -Wall -pedantic -std=c99 \ -flat_namespace \ -fno-common \ Modified: trunk/darwintrace/darwintrace.c =================================================================== --- trunk/darwintrace/darwintrace.c 2008-09-19 22:08:26 UTC (rev 388) +++ trunk/darwintrace/darwintrace.c 2008-09-24 21:58:24 UTC (rev 389) @@ -43,18 +43,17 @@ #include <sys/paths.h> #include <errno.h> -#define DARWINTRACE_SHOW_PROCESS 0 #define DARWINTRACE_LOG_FULL_PATH 1 #define DARWINTRACE_DEBUG_OUTPUT 0 #define START_FD 81 static int __darwintrace_fd = -2; #define BUFFER_SIZE 1024 -#if DARWINTRACE_SHOW_PROCESS + static char __darwintrace_progname[BUFFER_SIZE]; static pid_t __darwintrace_pid = -1; -#endif + #if DARWINTRACE_DEBUG_OUTPUT #define dprintf(...) fprintf(stderr, __VA_ARGS__) #else @@ -82,7 +81,7 @@ errno = olderrno; } } -#if DARWINTRACE_SHOW_PROCESS + if (__darwintrace_pid == -1) { __darwintrace_pid = getpid(); char** progname = _NSGetProgname(); @@ -90,7 +89,7 @@ strcpy(__darwintrace_progname, *progname); } } -#endif + } /* __darwintrace_setup must have been called already */ @@ -100,13 +99,13 @@ int size; size = snprintf(__darwintrace_buf, sizeof(__darwintrace_buf), -#if DARWINTRACE_SHOW_PROCESS + "%s[%d]\t" -#endif + "%s\t%s\n", -#if DARWINTRACE_SHOW_PROCESS + procname ? procname : __darwintrace_progname, __darwintrace_pid, -#endif + tag, path ); write(fd, __darwintrace_buf, size); @@ -333,10 +332,10 @@ /* we have liftoff */ if (interp && interp[0] != '\0') { const char* procname = NULL; -#if DARWINTRACE_SHOW_PROCESS + procname = strrchr(argv[0], '/') + 1; if (procname == NULL) procname = argv[0]; -#endif + __darwintrace_cleanup_path(interp); __darwintrace_logpath(__darwintrace_fd, procname, "execve", interp);
participants (1)
-
source_changes@macosforge.org