]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
macos: further next version support
authorDerrick Brashear <shadow@dementia.org>
Tue, 26 Apr 2011 14:46:41 +0000 (10:46 -0400)
committerDerrick Brashear <shadow@dementia.org>
Thu, 28 Apr 2011 01:47:59 +0000 (18:47 -0700)
try to optimize out things which will be missing

Reviewed-on: http://gerrit.openafs.org/4569
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: Derrick Brashear <shadow@dementia.org>
(cherry picked from commit a33f77b6e11214326f5e752de171602c0e9efe86)

Change-Id: Ie20120aad8cb477d532594b9462aca3cf993aabb
Reviewed-on: http://gerrit.openafs.org/4571
Reviewed-by: Derrick Brashear <shadow@dementia.org>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
13 files changed:
acinclude.m4
src/afs/DARWIN/osi_file.c
src/afs/afs.h
src/afs/afs_osi_pag.c
src/config/param.x86_darwin_110.h
src/platform/DARWIN/AFSPreference/OpenAFS.xcodeproj/project.pbxproj
src/platform/DARWIN/AklogAuthPlugin/AklogAuthPlugin.xcodeproj/project.pbxproj
src/platform/DARWIN/Makefile.in
src/vol/devname.c
src/vol/salvaged.c
src/vol/salvager.c
src/vol/vol-salvage.c
src/vol/volume.c

index a51ec318179a0798d28fad98da3dd3e5c0422e55..f5538b70f54ecbdbee93ec0f206e6c580019b5ae 100644 (file)
@@ -517,24 +517,43 @@ else
                        ;;
                powerpc-apple-darwin7*)
                        AFS_SYSNAME="ppc_darwin_70"
+                       OSXSDK="macosx10.3"
                        ;;
                powerpc-apple-darwin8.*)
                        AFS_SYSNAME="ppc_darwin_80"
+                       OSXSDK="macosx10.4"
                        ;;
                i386-apple-darwin8.*)
                        AFS_SYSNAME="x86_darwin_80"
+                       OSXSDK="macosx10.4"
                        ;;
                powerpc-apple-darwin9.*)
                        AFS_SYSNAME="ppc_darwin_90"
+                       OSXSDK="macosx10.5"
                        ;;
                i386-apple-darwin9.*)
                        AFS_SYSNAME="x86_darwin_90"
+                       OSXSDK="macosx10.5"
                        ;;
                i?86-apple-darwin10.*)
                        AFS_SYSNAME="x86_darwin_100"
+                       OSXSDK="macosx10.6"
                        ;;
                x86_64-apple-darwin10.*)
                        AFS_SYSNAME="x86_darwin_100"
+                       OSXSDK="macosx10.6"
+                       ;;
+               arm-apple-darwin10.*)
+                       AFS_SYSNAME="arm_darwin_100"
+                       OSXSDK="iphoneos4.0"
+                       ;;
+               x86_64-apple-darwin11.*)
+                       AFS_SYSNAME="x86_darwin_110"
+                       OSXSDK="macosx10.7"
+                       ;;
+               i?86-apple-darwin11.*)
+                       AFS_SYSNAME="x86_darwin_110"
+                       OSXSDK="macosx10.7"
                        ;;
                sparc-sun-solaris2.5*)
                        AFS_SYSNAME="sun4x_55"
@@ -683,6 +702,7 @@ case $AFS_SYSNAME in
                AC_CHECK_HEADERS(crt_externs.h)
                DARWIN_PLIST=src/libafs/afs.${AFS_SYSNAME}.plist
                DARWIN_INFOFILE=afs.${AFS_SYSNAME}.plist
+               AC_SUBST(OSXSDK)
                ;;
 esac
 
index ae027d713553637abc1f85af592972011c41ff44..4012ff7332b788cc60e0b854c99cbbb46d06c0b9 100644 (file)
@@ -150,7 +150,9 @@ osi_UFSOpen(afs_dcache_id_t *ainode)
        /* valid for alpha_osf, SunOS, Ultrix */
        memset(&afs_osi_cred, 0, sizeof(afs_ucred_t));
        afs_osi_cred.cr_ref++;
+#ifndef AFS_DARWIN110_ENV
        afs_osi_cred.cr_ngroups = 1;
+#endif
        afs_osicred_initialized = 1;
     }
     afile = (struct osi_file *)osi_AllocSmallSpace(sizeof(struct osi_file));
index 6e6881b5acd722020fe4d9498aaa9540bb92bf7a..c23a0498ad4ecb8e822d11682098483e4d7ed4ab 100644 (file)
@@ -1443,6 +1443,9 @@ extern int afsd_dynamic_vcaches;
  */
 #if defined(AFS_NBSD40_ENV)
 /* in osi_machdep.h as expected */
+#elif defined (AFS_DARWIN110_ENV)
+#define afs_cr_uid(cred) kauth_cred_getuid((kauth_cred_t)(cred))
+#define afs_cr_gid(cred) kauth_cred_getgid((kauth_cred_t)(cred))
 #elif !(defined(AFS_LINUX26_ENV) && defined(STRUCT_TASK_STRUCT_HAS_CRED))
 #define afs_cr_uid(cred) ((cred)->cr_uid)
 #define afs_cr_gid(cred) ((cred)->cr_gid)
@@ -1451,6 +1454,7 @@ extern int afsd_dynamic_vcaches;
 #define afs_cr_rgid(cred) ((cred)->cr_rgid)
 #endif
 
+#if !defined(AFS_DARWIN110_ENV)
 static_inline void
 afs_set_cr_uid(afs_ucred_t *cred, uid_t uid) {
     cred->cr_uid = uid;
@@ -1468,7 +1472,8 @@ static_inline void
 afs_set_cr_rgid(afs_ucred_t *cred, gid_t gid) {
     cred->cr_rgid = gid;
 }
-#endif
+#endif /* ! AFS_OBSD_ENV */
+#endif /* ! AFS_DARWIN110_ENV */
 #endif
 
 #ifdef AFS_SUN5_ENV
index 68a2a4c7fda942b0c0f32e6c660580a4a4a59308..c888605354d6c225db5547cbd1299eb88255444d 100644 (file)
@@ -542,7 +542,7 @@ void afs_get_groups_from_pag(afs_uint32 pag, gid_t *g0p, gid_t *g1p)
 }
 #endif
 
-#ifndef AFS_LINUX26_ENV
+#if !defined(AFS_LINUX26_ENV) && !defined(AFS_DARWIN110_ENV)
 static afs_int32
 osi_get_group_pag(afs_ucred_t *cred)
 {
@@ -615,6 +615,7 @@ PagInCred(afs_ucred_t *cred)
     if (cred == NULL || cred == afs_osi_credp) {
        return NOPAG;
     }
+#ifndef AFS_DARWIN110_ENV
 #if defined(AFS_LINUX26_ENV) && defined(LINUX_KEYRING_SUPPORT)
     /*
      * If linux keyrings are in use and we carry the session keyring in our credentials
@@ -634,6 +635,7 @@ PagInCred(afs_ucred_t *cred)
        pag = NOPAG;
 #else
     pag = osi_get_group_pag(cred);
+#endif
 #endif
     return pag;
 }
index 8fa8ebfc50ccd6489cc397c515481e008ff9d138..81c2708ed3e2add871ecb4ffb9d2b87e06854592 100644 (file)
@@ -15,7 +15,6 @@
 #else
 #error Unsupported architecture
 #endif
-#define AFS_VFSINCL_ENV                1
 #ifdef __amd64__
 #define AFS_64BITUSERPOINTER_ENV 1
 #endif
 #ifndef AFS_PARAM_H
 #define AFS_PARAM_H
 
-#define AFS_VFSINCL_ENV 1      /* NOBODY uses this.... */
 #define AFS_ENV                 1
 #define AFS_64BIT_ENV           1      /* Defines afs_int32 as int, not long. */
 #if defined(__ppc__)
index c3198860b2d0fe655df4d90b31be1ed72b0efcaf..c18a959adcfacaf599db240da59afdadd1ff2490 100644 (file)
                                "ARCHS[sdk=macosx10.4u]" = "$(ARCHS_STANDARD_32_BIT)";
                                "ARCHS[sdk=macosx10.5]" = "$(ARCHS_STANDARD_32_BIT)";
                                "ARCHS[sdk=macosx10.6]" = "$(ARCHS_STANDARD_32_64_BIT)";
+                               "ARCHS[sdk=macosx10.7]" = "$(ARCHS_STANDARD_32_64_BIT)";
                                GCC_C_LANGUAGE_STANDARD = gnu99;
                                GCC_ENABLE_OBJC_EXCEPTIONS = YES;
                                GCC_ENABLE_OBJC_GC = supported;
                                "ARCHS[sdk=macosx10.4u]" = "$(ARCHS_STANDARD_32_BIT)";
                                "ARCHS[sdk=macosx10.5]" = "$(ARCHS_STANDARD_32_BIT)";
                                "ARCHS[sdk=macosx10.6]" = "$(ARCHS_STANDARD_32_64_BIT)";
+                               "ARCHS[sdk=macosx10.7]" = "$(ARCHS_STANDARD_32_64_BIT)";
                                GCC_C_LANGUAGE_STANDARD = gnu99;
                                GCC_ENABLE_OBJC_EXCEPTIONS = YES;
                                GCC_ENABLE_OBJC_GC = supported;
index d0f7a8b1baa237c510bfaa1d89c2771e8b392ad8..5f9d9d562f38af1b21851b5b1bf6096e2d632013 100644 (file)
                                "ARCHS[sdk=macosx10.4u]" = "$(ARCHS_STANDARD_32_BIT)";
                                 "ARCHS[sdk=macosx10.5]" = "$(ARCHS_STANDARD_32_BIT)";
                                 "ARCHS[sdk=macosx10.6]" = "$(ARCHS_STANDARD_32_64_BIT)";
+                                "ARCHS[sdk=macosx10.7]" = "$(ARCHS_STANDARD_32_64_BIT)";
                                ALWAYS_SEARCH_USER_PATHS = NO;
                                COPY_PHASE_STRIP = NO;
                                GCC_DYNAMIC_NO_PIC = NO;
                                "ARCHS[sdk=macosx10.4u]" = "$(ARCHS_STANDARD_32_BIT)";
                                 "ARCHS[sdk=macosx10.5]" = "$(ARCHS_STANDARD_32_BIT)";
                                 "ARCHS[sdk=macosx10.6]" = "$(ARCHS_STANDARD_32_64_BIT)";
+                                "ARCHS[sdk=macosx10.7]" = "$(ARCHS_STANDARD_32_64_BIT)";
                                ALWAYS_SEARCH_USER_PATHS = NO;
                                DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
                                GCC_MODEL_TUNING = G5;
                                "ARCHS[sdk=macosx10.4u]" = "$(ARCHS_STANDARD_32_BIT)";
                                 "ARCHS[sdk=macosx10.5]" = "$(ARCHS_STANDARD_32_BIT)";
                                 "ARCHS[sdk=macosx10.6]" = "$(ARCHS_STANDARD_32_64_BIT)";
+                                "ARCHS[sdk=macosx10.7]" = "$(ARCHS_STANDARD_32_64_BIT)";
                                GCC_C_LANGUAGE_STANDARD = gnu99;
                                GCC_OPTIMIZATION_LEVEL = 0;
                                GCC_WARN_ABOUT_RETURN_TYPE = YES;
                                "ARCHS[sdk=macosx10.4u]" = "$(ARCHS_STANDARD_32_BIT)";
                                 "ARCHS[sdk=macosx10.5]" = "$(ARCHS_STANDARD_32_BIT)";
                                 "ARCHS[sdk=macosx10.6]" = "$(ARCHS_STANDARD_32_64_BIT)";
+                                "ARCHS[sdk=macosx10.7]" = "$(ARCHS_STANDARD_32_64_BIT)";
                                GCC_C_LANGUAGE_STANDARD = gnu99;
                                GCC_WARN_ABOUT_RETURN_TYPE = YES;
                                GCC_WARN_UNUSED_VARIABLE = YES;
index b061ab665e2eb658743ae7c04a8a8ea1bae4bd14..37389ec322f967b1504b17e86680a286f4280675 100644 (file)
@@ -12,6 +12,8 @@ INSTALL_DATA = @INSTALL_DATA@
 INSTALL_PROGRAM = @INSTALL_PROGRAM@
 INSTALL_SCRIPT = @INSTALL_SCRIPT@
 
+OSXSDK = @OSXSDK@
+
 .PHONY: all afscell
 
 all: OpenAFS.prefPane afssettings afscell growlagent aklog.bundle
@@ -21,34 +23,31 @@ afscell/build/Release/afscell.bundle: afscell
 afscell/InstallerSections.plist: afscell 
 
 OpenAFS.prefPane:
-       @case ${SYS_NAME} in \
-       *_darwin_100 ) \
-               xcodebuild -sdk macosx10.6 -project ${srcdir}/AFSPreference/OpenAFS.xcodeproj SYMDIR=`pwd`/AFSPreference/build;; \
-       *_darwin_90 ) \
-               xcodebuild -sdk macosx10.5 -project ${srcdir}/AFSPreference/OpenAFS.xcodeproj SYMDIR=`pwd`/AFSPreference/build;; \
-       *_darwin_80 ) \
-               xcodebuild -sdk macosx10.4 -project ${srcdor}/AFSPreference/OpenAFS.xcodeproj SYMDIR=`pwd`/AFSPreference/build;; \
+       @case ${OSXSDK} in \
+       macosx* ) \
+               xcodebuild -sdk ${OSXSDK} -project ${srcdir}/AFSPreference/OpenAFS.xcodeproj SYMDIR=`pwd`/AFSPreference/build;; \
        * ) \
-               echo Not building AFS prefPane for ${SYS_NAME} ;; \
+               echo Not building AFS prefPane for ${OSXSDK} ;; \
        esac
 
 aklog.bundle:
-       @case ${SYS_NAME} in \
-       *_darwin_100 ) \
-               xcodebuild -sdk macosx10.6 -project ${srcdir}/AklogAuthPlugin/AklogAuthPlugin.xcodeproj SYMDIR=`pwd`/AklogAuthPlugin/build;; \
-       *_darwin_90 ) \
-               xcodebuild -sdk macosx10.5 -project ${srcdir}/AklogAuthPlugin/AklogAuthPlugin.xcodeproj SYMDIR=`pwd`/AklogAuthPlugin/build;; \
-       *_darwin_80 ) \
-               xcodebuild -sdk macosx10.4 -project ${srcdor}/AklogAuthPlugin/AklogAuthPlugin.xcodeproj SYMDIR=`pwd`/AklogAuthPlugin/build;; \
+       @case ${OSXSDK} in \
+       macosx* ) \
+               xcodebuild -sdk ${OSXSDK} -project ${srcdir}/AklogAuthPlugin/AklogAuthPlugin.xcodeproj SYMDIR=`pwd`/AklogAuthPlugin/build;; \
        * ) \
-               echo Not building AklogAuthPlugin for ${SYS_NAME} ;; \
+               echo Not building AklogAuthPlugin for ${OSXSDK} ;; \
        esac
 
 growlagent:
        cd growlagent && $(MAKE) all
 
 afscell:
-       xcodebuild -project ${srcdir}/afscell/afscell.xcodeproj SYMROOT=`pwd`/afscell/build
+       @case ${OSXSDK} in \
+       macosx* ) \
+               xcodebuild -sdk ${OSXSDK} -project ${srcdir}/afscell/afscell.xcodeproj SYMROOT=`pwd`/afscell/build;; \
+       * ) \
+               echo Not building afscell.bundle for ${OSXSDK} ;; \
+       esac
 
 afssettings: afssettings.m 
        ${CC} ${CFLAGS} -o afssettings $? -framework Foundation
index e7f014761829b85792d04fa00ed429a3641088fb..fae960c83a1e9ce3a47617b300078c86db056542 100644 (file)
@@ -33,7 +33,7 @@
 #endif
 #endif
 #else /* AFS_VFSINCL_ENV */
-#if !defined(AFS_AIX_ENV) && !defined(AFS_LINUX20_ENV) && !defined(AFS_XBSD_ENV) && !defined(AFS_ARM_DARWIN_ENV)
+#if !defined(AFS_AIX_ENV) && !defined(AFS_LINUX20_ENV) && !defined(AFS_XBSD_ENV) && !defined(AFS_DARWIN_ENV)
 #include <sys/fs.h>
 #endif
 #endif /* AFS_VFSINCL_ENV */
@@ -176,7 +176,7 @@ vol_DevName(dev_t adev, char *wpath)
        if (stat(part, &status) == -1) {
            continue;
        }
-#if !defined(AFS_SGI_XFS_IOPS_ENV) && !defined(AFS_LINUX22_ENV) && !defined(AFS_ARM_DARWIN_ENV)
+#if !defined(AFS_SGI_XFS_IOPS_ENV) && !defined(AFS_LINUX22_ENV) && !defined(AFS_DARWIN_ENV)
        if ((status.st_ino !=
             ROOTINO) /*|| ((status.st_mode & S_IFMT) != S_IFBLK) */ ) {
            continue;
index 106d5d3bb963fd40feea0c09bf75edd41a83b2de..0f3d345eba9732fe94400500ccb314a93f2f8e0c 100644 (file)
@@ -59,7 +59,7 @@
 #ifdef AFS_OSF_ENV
 #include <ufs/inode.h>
 #else /* AFS_OSF_ENV */
-#if !defined(AFS_LINUX20_ENV) && !defined(AFS_XBSD_ENV) && !defined(AFS_ARM_DARWIN_ENV)
+#if !defined(AFS_LINUX20_ENV) && !defined(AFS_XBSD_ENV) && !defined(AFS_DARWIN_ENV)
 #include <sys/inode.h>
 #endif
 #endif
index e2d3fbfa37ca8db23af08c10cc4c68c356b48366..dd5727332a9e3564803340a7bbfa484746c7787f 100644 (file)
@@ -61,7 +61,7 @@
 #ifdef AFS_OSF_ENV
 #include <ufs/inode.h>
 #else /* AFS_OSF_ENV */
-#if !defined(AFS_LINUX20_ENV) && !defined(AFS_XBSD_ENV) && !defined(AFS_ARM_DARWIN_ENV)
+#if !defined(AFS_LINUX20_ENV) && !defined(AFS_XBSD_ENV) && !defined(AFS_DARWIN_ENV)
 #include <sys/inode.h>
 #endif
 #endif
index 371b2efa84f4c9a61ecddd9ba5cc0a75d165f692..e9cfede735be5e5f94d22236ee4dea12ebe2eb4f 100644 (file)
@@ -128,7 +128,7 @@ Vnodes with 0 inode pointers in RW volumes are now deleted.
 #ifdef AFS_OSF_ENV
 #include <ufs/inode.h>
 #else /* AFS_OSF_ENV */
-#if !defined(AFS_LINUX20_ENV) && !defined(AFS_XBSD_ENV) && !defined(AFS_ARM_DARWIN_ENV)
+#if !defined(AFS_LINUX20_ENV) && !defined(AFS_XBSD_ENV) && !defined(AFS_DARWIN_ENV)
 #include <sys/inode.h>
 #endif
 #endif
index cf1c2bf85ba433ecc6e74972dbbbdfa48363de22..f99c0a338f3189b482707580d5cfbc73a70a0f60 100644 (file)
@@ -45,7 +45,7 @@
 #endif
 #endif
 #else /* AFS_VFSINCL_ENV */
-#if !defined(AFS_AIX_ENV) && !defined(AFS_LINUX20_ENV) && !defined(AFS_XBSD_ENV) && !defined(AFS_ARM_DARWIN_ENV)
+#if !defined(AFS_AIX_ENV) && !defined(AFS_LINUX20_ENV) && !defined(AFS_XBSD_ENV) && !defined(AFS_DARWIN_ENV)
 #include <sys/fs.h>
 #endif
 #endif /* AFS_VFSINCL_ENV */