Date: Mon, 8 Jun 2009 21:47:55 +0000 (UTC) From: Ed Schouten <ed@FreeBSD.org> To: src-committers@freebsd.org, svn-src-projects@freebsd.org Subject: svn commit: r193767 - in projects/clangbsd: cddl/lib/libzpool lib/librt sys/cddl/contrib/opensolaris/uts/common/fs/zfs Message-ID: <200906082147.n58Lltp7044893@svn.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: ed Date: Mon Jun 8 21:47:55 2009 New Revision: 193767 URL: http://svn.freebsd.org/changeset/base/193767 Log: Build librt and libzpool with Clang. Unfortunately #pragma weak isn't yet good enough to build libzpool, so change it slightly to use a construct that does work. Modified: projects/clangbsd/cddl/lib/libzpool/Makefile projects/clangbsd/lib/librt/Makefile projects/clangbsd/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c Modified: projects/clangbsd/cddl/lib/libzpool/Makefile ============================================================================== --- projects/clangbsd/cddl/lib/libzpool/Makefile Mon Jun 8 21:44:03 2009 (r193766) +++ projects/clangbsd/cddl/lib/libzpool/Makefile Mon Jun 8 21:47:55 2009 (r193767) @@ -23,13 +23,6 @@ ATOMIC_SRCS= opensolaris_atomic.c LIB= zpool -.include <bsd.own.mk> - -# XXX: LLVM PR3679 -.if ${MK_CLANG_IS_CC} != "no" && ${CC} == "cc" -CC= gcc -.endif - ZFS_COMMON_SRCS= ${ZFS_COMMON_OBJS:C/.o$/.c/} vdev_file.c ZFS_SHARED_SRCS= ${ZFS_SHARED_OBJS:C/.o$/.c/} KERNEL_SRCS= kernel.c taskq.c util.c Modified: projects/clangbsd/lib/librt/Makefile ============================================================================== --- projects/clangbsd/lib/librt/Makefile Mon Jun 8 21:44:03 2009 (r193766) +++ projects/clangbsd/lib/librt/Makefile Mon Jun 8 21:47:55 2009 (r193767) @@ -1,12 +1,5 @@ # $FreeBSD$ -.include <bsd.own.mk> - -# XXX: LLVM PR3678 -.if ${MK_CLANG_IS_CC} != "no" && ${CC} == "cc" -CC= gcc -.endif - LIB=rt SHLIB_MAJOR= 1 CFLAGS+=-I${.CURDIR}/../libc/include -I${.CURDIR} Modified: projects/clangbsd/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c ============================================================================== --- projects/clangbsd/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c Mon Jun 8 21:44:03 2009 (r193766) +++ projects/clangbsd/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/dbuf.c Mon Jun 8 21:47:55 2009 (r193767) @@ -1232,7 +1232,6 @@ dbuf_undirty(dmu_buf_impl_t *db, dmu_tx_ return (0); } -#pragma weak dmu_buf_will_dirty = dbuf_will_dirty void dbuf_will_dirty(dmu_buf_impl_t *db, dmu_tx_t *tx) { @@ -1246,6 +1245,7 @@ dbuf_will_dirty(dmu_buf_impl_t *db, dmu_ (void) dbuf_read(db, NULL, rf); (void) dbuf_dirty(db, tx); } +__weak_reference(dbuf_will_dirty, dmu_buf_will_dirty); void dmu_buf_will_fill(dmu_buf_t *db_fake, dmu_tx_t *tx) @@ -1264,7 +1264,6 @@ dmu_buf_will_fill(dmu_buf_t *db_fake, dm (void) dbuf_dirty(db, tx); } -#pragma weak dmu_buf_fill_done = dbuf_fill_done /* ARGSUSED */ void dbuf_fill_done(dmu_buf_impl_t *db, dmu_tx_t *tx) @@ -1285,6 +1284,7 @@ dbuf_fill_done(dmu_buf_impl_t *db, dmu_t } mutex_exit(&db->db_mtx); } +__weak_reference(dbuf_fill_done, dmu_buf_fill_done); /* * "Clear" the contents of this dbuf. This will mark the dbuf @@ -1707,15 +1707,14 @@ dbuf_create_bonus(dnode_t *dn) dn->dn_bonus = dbuf_create(dn, 0, DB_BONUS_BLKID, dn->dn_dbuf, NULL); } -#pragma weak dmu_buf_add_ref = dbuf_add_ref void dbuf_add_ref(dmu_buf_impl_t *db, void *tag) { int64_t holds = refcount_add(&db->db_holds, tag); ASSERT(holds > 1); } +__weak_reference(dbuf_add_ref, dmu_buf_add_ref); -#pragma weak dmu_buf_rele = dbuf_rele void dbuf_rele(dmu_buf_impl_t *db, void *tag) { @@ -1768,13 +1767,14 @@ dbuf_rele(dmu_buf_impl_t *db, void *tag) mutex_exit(&db->db_mtx); } } +__weak_reference(dbuf_rele, dmu_buf_rele); -#pragma weak dmu_buf_refcount = dbuf_refcount uint64_t dbuf_refcount(dmu_buf_impl_t *db) { return (refcount_count(&db->db_holds)); } +__weak_reference(dbuf_refcount, dmu_buf_refcount); void * dmu_buf_set_user(dmu_buf_t *db_fake, void *user_ptr, void *user_data_ptr_ptr,
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200906082147.n58Lltp7044893>