]>
git.proxmox.com Git - mirror_zfs.git/blob - scripts/update-zfs.sh
3 # WARNING: This script removes the entire zfs subtree and will
4 # repopulate it using the requested OpenSolaris source release.
5 # This script should only be used when rebasing the TopGit tree
6 # against the latest release.
12 REMOTE_SRC
=http
://dlc.sun.com
/osol
/on
/downloads
/${RELEASE}/on-src.
tar.bz2
16 echo "${PROG}: $1" >&2
25 if [ `basename $DST` != "scripts" ]; then
26 die
"Must be run from scripts directory"
29 SRC
=`mktemp -d /tmp/os-${RELEASE}.XXXXXXXXXX`
32 echo "----------------------------------------------------------------------"
33 echo "Remote Source: ${REMOTE_SRC}"
34 echo "Local Source: ${SRC}"
35 echo "Local Dest: ${DST}"
37 echo "------------- Fetching OpenSolaris ${RELEASE} archive ----------------"
38 wget
${REMOTE_SRC} -P ${SRC} ||
39 die
"Error 'wget ${REMOTE_SRC}'"
41 echo "------------- Unpacking OpenSolaris ${RELEASE} archive ---------------"
42 tar -xjf ${SRC}/on-src.
tar.bz2
-C ${SRC} ||
43 die
"Error 'tar -xjf ${SRC}/on-src.tar.bz2 -C ${SRC}'"
45 SRC_LIB
=${SRC}/usr
/src
/lib
46 SRC_CMD
=${SRC}/usr
/src
/cmd
47 SRC_CM
=${SRC}/usr
/src
/common
48 SRC_UTS
=${SRC}/usr
/src
/uts
49 SRC_UCM
=${SRC}/usr
/src
/uts
/common
50 SRC_ZLIB
=${SRC}/usr
/src
/uts
/common
/fs
/zfs
59 echo "------------- Updating ZFS from OpenSolaris ${RELEASE} ---------------"
61 mkdir
-p ${DST_MOD}/avl
/include
/sys
/
62 cp ${SRC_CM}/avl
/avl.c
${DST_MOD}/avl
/
63 cp ${SRC_UCM}/sys
/avl.h
${DST_MOD}/avl
/include
/sys
/
64 cp ${SRC_UCM}/sys
/avl_impl.h
${DST_MOD}/avl
/include
/sys
/
66 echo "* module/nvpair"
67 mkdir
-p ${DST_MOD}/nvpair
/include
/sys
/
68 cp ${SRC_CM}/nvpair
/nvpair.c
${DST_MOD}/nvpair
/
69 cp ${SRC_UCM}/sys
/nvpair.h
${DST_MOD}/nvpair
/include
/sys
/
70 cp ${SRC_UCM}/sys
/nvpair_impl.h
${DST_MOD}/nvpair
/include
/sys
/
72 echo "* module/zcommon"
73 mkdir
-p ${DST_MOD}/zcommon
/include
/sys
/fs
/
74 mkdir
-p ${DST_MOD}/zcommon
/include
/sys
/fm
/fs
/
75 cp ${SRC_CM}/zfs
/*.c
${DST_MOD}/zcommon
/
76 cp ${SRC_CM}/zfs
/*.h
${DST_MOD}/zcommon
/include
/
77 cp ${SRC_UCM}/sys
/fs
/zfs.h
${DST_MOD}/zcommon
/include
/sys
/fs
/
78 cp ${SRC_UCM}/sys
/fm
/fs
/zfs.h
${DST_MOD}/zcommon
/include
/sys
/fm
/fs
/
81 mkdir
-p ${DST_MOD}/zpool
/include
/sys
/
82 cp ${SRC_UTS}/intel
/zfs
/spa_boot.c
${DST_MOD}/zfs
/
83 cp ${SRC_ZLIB}/*.c
${DST_MOD}/zfs
/
84 cp ${SRC_ZLIB}/sys
/*.h
${DST_MOD}/zfs
/include
/sys
/
85 rm ${DST_MOD}/zfs
/vdev_disk.c
86 rm ${DST_MOD}/zfs
/include
/sys
/vdev_disk.h
89 mkdir
-p ${DST_LIB}/libspl
/include
/sys
/
90 cp ${SRC_LIB}/libc
/port
/gen
/strlcat.c
${DST_LIB}/libspl
/
91 cp ${SRC_LIB}/libc
/port
/gen
/strlcpy.c
${DST_LIB}/libspl
/
92 cp ${SRC_LIB}/libc
/port
/gen
/strnlen.c
${DST_LIB}/libspl
/
93 cp ${SRC_LIB}/libgen
/common
/mkdirp.c
${DST_LIB}/libspl
/
94 cp ${SRC_CM}/unicode
/u8_textprep.c
${DST_LIB}/libspl
/
95 cp ${SRC_UCM}/os
/list.c
${DST_LIB}/libspl
/
96 cp ${SRC_UCM}/sys
/list.h
${DST_LIB}/libspl
/include
/sys
/
97 cp ${SRC_UCM}/sys
/list_impl.h
${DST_LIB}/libspl
/include
/sys
/
100 # Full source available in 'module/avl'
102 echo "* lib/libnvpair"
103 mkdir
-p ${DST_LIB}/libnvpair
/include
/
104 cp ${SRC_UCM}/os
/nvpair_alloc_system.c
${DST_LIB}/libnvpair
/
105 cp ${SRC_LIB}/libnvpair
/libnvpair.c
${DST_LIB}/libnvpair
/
106 cp ${SRC_LIB}/libnvpair
/libnvpair.h
${DST_LIB}/libnvpair
/include
/
108 echo "* lib/libuutil"
109 mkdir
-p ${DST_LIB}/libuutil
/include
/
110 cp ${SRC_LIB}/libuutil
/common
/*.c
${DST_LIB}/libuutil
/
111 cp ${SRC_LIB}/libuutil
/common
/*.h
${DST_LIB}/libuutil
/include
/
113 echo "* lib/libzcommon"
114 # Full source available in 'module/zcommon'
116 echo "* lib/libzpool"
117 mkdir
-p ${DST_LIB}/libzpool
/include
/sys
/
118 cp ${SRC_LIB}/libzpool
/common
/kernel.c
${DST_LIB}/libzpool
/
119 cp ${SRC_LIB}/libzpool
/common
/taskq.c
${DST_LIB}/libzpool
/
120 cp ${SRC_LIB}/libzpool
/common
/util.c
${DST_LIB}/libzpool
/
121 cp ${SRC_LIB}/libzpool
/common
/sys
/zfs_context.h
${DST_LIB}/libzpool
/include
/sys
/
124 mkdir
-p ${DST_LIB}/libzfs
/include
/
125 cp ${SRC_LIB}/libzfs
/common
/*.c
${DST_LIB}/libzfs
/
126 cp ${SRC_LIB}/libzfs
/common
/*.h
${DST_LIB}/libzfs
/include
/
129 mkdir
-p ${DST_CMD}/zpool
130 cp ${SRC_CMD}/zpool
/*.c
${DST_CMD}/zpool
/
131 cp ${SRC_CMD}/zpool
/*.h
${DST_CMD}/zpool
/
134 mkdir
-p ${DST_CMD}/zfs
135 cp ${SRC_CMD}/zfs
/*.c
${DST_CMD}/zfs
/
136 cp ${SRC_CMD}/zfs
/*.h
${DST_CMD}/zfs
/
139 mkdir
-p ${DST_CMD}/zdb
/
140 cp ${SRC_CMD}/zdb
/*.c
${DST_CMD}/zdb
/
143 mkdir
-p ${DST_CMD}/zdump
144 cp ${SRC_CMD}/zdump
/*.c
${DST_CMD}/zdump
/
147 mkdir
-p ${DST_CMD}/zinject
148 cp ${SRC_CMD}/zinject
/*.c
${DST_CMD}/zinject
/
149 cp ${SRC_CMD}/zinject
/*.h
${DST_CMD}/zinject
/
152 mkdir
-p ${DST_CMD}/ztest
153 cp ${SRC_CMD}/ztest
/*.c
${DST_CMD}/ztest
/
155 echo "${REMOTE_SRC}" >${DST}/ZFS.RELEASE