forked from macosforge/darwinbuild
-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGES
428 lines (376 loc) · 18.8 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
Darwin Build Scripts Change History
-----------------------------------
Release 37 [16-Oct-2013]
- darwinup: fix C++ 98 conformance issue
Release 36 [2-May-2013]
- darwinup: fix bad return code from update_xpc_services_cache.
- darwinup: don't run bzip2 compression on (limited cpu) embedded devices.
Release 35 [24-Apr-2013]
- all: fix implicit integer conversions.
Release 34.1 [14-Mar-2013]
Release 34 [12-Mar-2013]
- darwintrace: avoid snprintf(3); manually construct log messages.
Release 33 [29-Aug-2012]
- darwinup: Fix uninitialised variable in Database.cpp.
Release 32 [17-May-2012]
- darwinup: Updated trigger for xpchelper cacher rebuild.
Release 31 [22-Mar-2012]
- darwintrace: fixed crash when used by multi-threaded applications
Release 30 [15-Mar-2012]
- darwinup: not detecting installs into /System/Library/Sandbox/Profiles
Release 29 [15-Feb-2012]
- darwintrace: posix_spawn may have NULL envp parameter
Release 28.1 [9-Feb-2012]
- darwinup: Don't include actual mach-o binaries in the test suite.
Release 28 [8-Feb-2012]
- darwinup: Display more helpful error if unable to create a depot.
- darwinup: Touch /System/Library/Extensions when uninstalling kernel extensions.
- darwinup: Run xpchelper on system sandbox profile changes.
Release 27 [23-Jan-2012]
- darwinup: Clear quarantine xattr from installed files.
- darwinup: Correctness fix for has_suffix.
Release 26.5 [29-Nov-2011]
- all: set correct INSTALL_PATH for iOS simulator
Release 26.4 [17-Nov-2011]
- darwintrace: files opened with fopen(3) are missing from trace log
Release 26.3 [11-Nov-2011]
- darwintrace: darwintrace_make_environ bug unsets DYLD_INSERT_LIBRARIES
Release 26.2 [9-Nov-2011]
- darwintrace: build failure on 10.6, undefined symbol __posix_spawn
- darwintrace: crash in darwintrace_make_environ
Release 26.1 [7-Nov-2011]
- darwintrace: compiler warning build fix
Release 26 [6-Nov-2011]
- darwintrace: preserve DYLD_INSERT_LIBRARIES and DARWINTRACE_LOG
- darwintrace: interpose posix_spawn
Release 25 [4-Nov-2011]
- darwinup: support for rebuilding xpchelper cache
Release 24.1 [17-Jun-2011]
- Build fixes for newer compilers
Release 24 [10-Feb-2011]
- darwinup: fix uninstall build-check safety
- darwinup: remove unprebinding support
- darwintrace: use modern interposing
- darwintrace: add feature to ignore ROOT paths
- darwintrace: add test suite
Release 23.1 [25-Jan-2011]
- darwinup: strip symbols when building with Public configuration
Release 23 [03-Nov-2010]
- darwinup: properly backup and restore existing content when
installing a root that replaces a directory with a file.
Release 22 [27-Oct-2010]
- darwinup: make man page clearer about what paths we support
- darwinup: add safety measures to prevent recursive installs
- darwinup: do not try to rollback installs that fail before
there is anything to rollback.
Release 21.1 [29-Sep-2010]
- darwinup: fix regression in v21 that broke installing roots when
the path is a symlink to a directory.
Release 21 [17-Sep-2010]
- darwinup: fix bug which silently failed to fully install
a root if the root had a directory where the destination
had a symlink to a directory
- darwinup: test for object change during analyze stage instead
of install stage so we can bail out without having a root
partially installed then uninstalled
- darwinup: add a full set of test cases for object change
conditions
Release 20.1 [02-Sep-2010]
- darwinxref: build fix for format string warning
Release 20 [10-Aug-2010]
- all: use CommonCrypto instead of OpenSSL
- all: remove obsolete Makefiles
Release 19.1 [01-Jul-2010]
- darwinup: fix bug which prevented remote root install when the remote
path is a symlink.
Release 19 [15-Jun-2010]
- darwinup: fix crash when getgrnam fails
- darwinup: add rename command
- darwinup: touch /System/Library/Extensions when a kernel
extension is modified.
- darwinup: add option for rebooting when finished
Release 18.1 [04-May-2010]
- darwinup: fix release build issue
Release 18 [03-May-2010]
- darwinup: fix bug which caused the uninstall half of upgrade to
run when the install half failed
- darwinup: add .tbz as a suffix for bzip2 tarballs
Release 17.1 [20-Apr-2010]
- darwinup: add a manpage for darwinup
- darwinup: fix crash when not root and a db upgrade is needed
- darwinup: make remote root install behave consistently with
respect to trailing slashes.
Release 17 [30-Mar-2010]
- darwinup: only update dyld cache when Depot actually
changes a file
- darwinup: uninstalling a superseded root does not require
the -f option to force it since it is safe in all cases.
- darwinup: conditionalize some features in case we build
without xar or universal support.
Release 16.2 [22-Mar-2010]
- darwinup: fix crash in verify subcommand
- darwinup: fix non-root list subcommand locking
Release 16.1 [15-Mar-2010]
- darwinup: uninstall a root's files in reverse order so children
get removed before parents. Fixes "!" status bug.
- darwinup: lock depot for entire duration of operations to prevent
collisions.
- darwinup: gracefully warn when update_dyld_shared_cache not found
- darwinup: fix 32-bit-only crash in database subsystem
- darwinup: adjust what output goes to stderr vs stdout
Release 16 [12-Mar-2010]
- darwinup: delete old roots after they are no longer needed
- darwinup: track base OS build for roots
- darwinup: list subcommand now handles arbitrary arguments
- darwinup: added superseded keyword to allow cleanup of superseded roots
- darwinup: improve messages when not running as root
Release 15 [03-Mar-2010]
- darwinup: fixed stray directories bugs due to apparent local modifications
- darwinup: added new database abstraction layer to simplify Depot code,
reduce copy-paste, and reduce unnecessary statement preparation
- darwinup: allow list subcommand to run as not-root
- darwinup: support multiple command line arguments (ex: globbing)
Release 14 [05-Feb-2010]
- darwinup: add upgrade command to automatically replace last root
installed with the same name.
- darwinup: added ability to install roots which have broken symlinks
Release 13.1 [22-Dec-2009]
- darwinup: fix bug where rollback archives for user modifications
did not contain parent directories and thus certain
install/modify/uninstall patterns would result in data loss.
Release 13 [16-Dec-2009]
- darwinup: convert use of fork()/exec() to posix_spawn()
- darwinup: add Serial to archive list, allow use of serial, name,
and keywords to identify archives on the command line
- darwinup: support fetching archives via rsync and curl
- darwinup: support cpio, xar, zip and pax archives
Release 12 [10-Dec-2009]
- darwinup: rollback installations that fail
- darwinup: add force (-f) option to allow potentially unsafe operations
- darwinup: require being root, print more meaningful error when not
- darwinxref: detect plugins with duplicate names
- darwinbuild: create buildroot images with root/wheel ownership and
attach them with owners on (Ben Huntsman)
Release 11 [29-Oct-2009]
- fetch libredo_prebinding from src.macosforge.org if not found
at build time
- convert build system to Xcode
Release 0.8.0 [29-Oct-2009]
- darwinup: add dyld to dependency copy list
- darwinxref: fix strdup_cfstr to work with unicode paths
- darwintrace: support redirecting file access as a pseudo-chroot
- darwinbuild: support hybrid make-xcrun based projects
- darwinbuild: fix -logdeps post-processing to account for BuildRoot
symlink and /Developer
- darwinxref: fix resolveDeps plugin -commit option to work when no project
is given
- darwinbuild: installXcode for Xcode v3.2
- darwinbuild: add support for subversion working copies in SourceCache
- darwinbuild: add support for http and scp fetching of plists
- darwinbuild: fix bug where duplicate NFS exports were added
(aladin@puredarwin)
- darwinbuild: fix bug where project-level binary_sites values were ignored
- darwinbuild: add -nosource option to skip staging source (dmaclach)
- darwinbuild: NFS loopback support
- darwinbuild: HFSX sparse image support
- all: build according to the archs of our dependencies if env does
not force a set of archs
- darwinup: add -p option so roots can be installed at arbitrary paths
- darwinbuild: print a message when we skip loading a root on purpose
- darwinup: fix "bad file descriptor" error
- darwinup: build libredo.o 4-way fat
- all: honor PREFIX and ARCHS environment when compiling
- all: fix uninstall make target
- darwintrace: fix a /bin/sh crash when trying to print with a bad
char pointer
- darwinxref: use OSSwap instead of NXSwap APIs
- darwinup: copy dependencies of darwinup instead of move
- darwinbuild: add -configuration option (Ben Huntsman)
- darwinbuild: allow for redirections when fetching sources
- darwinup: use flock(2) to serialize Depot access
- darwinbuild: Xcode 3.x compatibility
- darwinbuild: allow projects to have their own binary_sites
- darwinxref: new plugins for generating dot graphs and diffing builds
- darwinbuild: store download cache in Roots directory, not
/usr/local/share/darwinbuild/cache
- darwinbuild: special case file:/// URLs for downloads
- darwintrace: build on Leopard
- Added 8G32 plist (Mac OS X 10.4.4 for PowerPC, Darwin 8.4)
- darwintrace: build ppc64 library
- darwinbuild: add .pbxproj suffix (for xcodebuild)
- darwinxref: delete dictionary keys from database when obsolete
- darwinxref: register Mach-O symbols
- darwinxref: register ppc64 binaries
- darwinbuild: consolidate manifest symlinks and digests in build log
- darwinbuild: added elapsed build time to the build log
Release 0.7.2 [31-Oct-2005]
- Added 8F46 plist (Mac OS X 10.4.3, Darwin 8.3)
- darwinbuild: support -headers for -load, which loads the Headers root
- darwinbuild: load Headers if newer than Roots
- darwinbuild: add support to packageRoots -x to embed project
plists as xar subdocs (bbraun)
- darwinxref: add exportProject verb (bbraun)
- darwinmaster: default to fat roots and hybrid HFS+/ISO filesystem
- darwinbuild: Add support for "src_foo.c.add" patches as overlays
- updated Makfile to honor DSTROOT
- darwinxref: Added additive and subtractive dependencies
- darwintrace: prevent the log file descriptor from being closed
- darwinxref: exportIndex now quotes dictionary keys when necessary
- darwinxref: Added APIs for accessing properties without inheritance
- darwinxref: version '*' now prints all inherited project versions
- darwinbuild: always enable volfs when building
- darwinbuild: enable darwintrace earlier so that xcodebuild is logged
- installXcodebuild: install ICU into the private BuildRoot/XCD/
- darwinbuild: receipts are now created for pre-built roots only when
necessary
- darwinbuild: create receipts for -headers mode
- darwintrace: calls to readlink(2) are now logged
- darwinbuild: added -nopatch option to build without applying patches
Release 0.7.1 [6-Sep-2005]
- darwinbuild: Restore use of InstallHeader()
- darwinxref: install DBPlugin.h header file
- darwinxref: added group Tcl hooks and group plugin
- darwinbuild: no longer appends build number to binary_sites URL;
uses inheritance when HTTP failures encountered
- darwinxref: added new groups API
- darwinxref: added default handlers for plugins
- darwinxref: call redo_prebinding to create a canonical Mach-O binary
during register for reproducible manifests
- Added synthfat script to synthesize fat dylibs from thin dylibs
- Added darwinmaster.sh for creating bootable CDs
- Added packageRoots.sh to archive most recent Roots for the build
- Added thinFile.sh to thin a single Mach-O file
- Added thinPackages.sh to create multiple thin Packages from a fat one
- darwinbuild.common: added CheckDarwinBuildRoot function
- darwinxref: added support for CFData in the sqlite database
- darwinxref: treat dyld as a "lib" dependency
- darwintrace: use a high file descriptor for the log file
- darwinxref: add resolveDeps -commit to merge dependency info back
to main database.
Release 0.7.0 [12-Aug-2005]
- darwinbuild: print Xcode version when building Xcode-based projects
- darwinbuild: Add a -load option which loads the BuildRoot/ with a
single project
- darwinbuild: Add a -loadonly option which loads
the BuildRoot/ but doesn't start the build
- darwinbuild: use -stdin mode to register to register
files from pre-built .tar.gz roots.
- darwinxref: Add a -stdin mode to the "register" plugin
to accept file paths to register
- darwintrace: Be more aggressive about logging full paths
- darwinbuild: Patch files can use gzip, bzip2, or no compression,
and the can be applied with either -p0 or -p1
- darwinbuild: Modify installXcodebuild so that it doesn't interfere
with the frameworks/dylibs that have already been installed
- darwinxref: Create the necessary tables to that "resolveDeps" works
- darwinxref: Add "-lib" and "-staticlib" to "dependencies"
plugin
- darwinbuild: Install GCC 4.0 Xcode compiler specification,
and use it as a template to synthesize a 3.5 .xcspec. This
allows some Libsystem contributors to be built chrooted
- darwinbuild: allow -depsbuild multiple times to download
dependent roots from one of several builds
- darwinbuild: add -source to download and patch sources
- darwinbuild: query DB for patch files, download them from
source_sites
- darwinbuild: allow -init to take the path to a local plist (ssen)
- darwinbuild: use "plist_sites" to find parent builds for -init (ssen)
- darwinxref: preserve sort order for array properties like
source_sites (ssen)
- darwinxref: new "plist_sites" plugin (ssen)
- darwinxref: fix build version detection for "info"
pseudo-plugin (ssen)
- darwinxref: new "patchfiles" plugin (ssen)
Release 0.6.1 [28-Jul-2005]
- darwinbuild: actually unmount volfs in the BuildRoot
- darwinbuild: recover from interrupted downloads
- darwinxref: fixed memory leak in read_plist (toby)
- darwinbuild: only invoke installXcodebuild if not already installed
- darwinbuild: copy the ditto(1) emulator into the BuildRoot
- emulate ditto(1) using tar(1) on systems without Bom.framework
- darwinbuild: store downloaded roots in a global cache directory
Release 0.6 [25-Jul-2005]
- darwinbuild: enforce that darwinbuild is run as root
- darwinbuild: be slightly more graceful about bad parameters
- moved installXcodebuild from /usr/local/bin to /usr/local/share
- darwinbuild: moved build root receipts into /usr/local/darwinbuild
- darwintrace: fixed bug when volfs paths do not resolve (pguyot)
- darwintrace: builds with -Wall (pguyot)
- darwinbuild: added uuids to roots based on manifests
- darwinxref: added manifest support to register plugin
- added manifest tool to generate manifests for roots
- added an exit handler to unmount devfs and volfs in the BuildRoot
- list header dependencies more conservatively (ssen)
- added common.mk for common makefile variables
- installXcodebuild correctly handles umbrella frameworks (ssen)
- darwinbuild recognizes Xcode 2.1 projects: .xcodeproj (ssen)
- darwintrace resolves volfs ("/.vol") paths now (ssen)
- updated darwinbuild usage statement (pogma)
- added darwinbuild -init to configure working directory as build env
- updated darwinbuild to use new darwinxref
- re-wrote darwinxref to support a plugin architecture
Release 0.5 [12-May-2005]
- Added Tiger 8A428.plist and files-8A428.txt.gz
- Automatically resolve dependencies after logging them
- [Bug 2741] Added -target defaults to the plist
- [Bug 2747] Bug fix for -chroot and -logdeps combination
- Download sources from source_sites property in build plist
- darwinbuild: Copy sources into /SourceCache for consistency with XBS
- darwinbuild: unset TERMCAP to avoid warnings with screen(1)
- darwinbuild: default -build with DARWINBUILD_BUILD environment variable
- darwinbuild: automatically replace stale roots in buildroot
- darwinxref: default -b with DARWINBUILD_BUILD environment variable
- darwinxref: do not recurse for header dependencies
- darwinxref: set architecture-specific environment variables based on
RC_ARCHS value
- darwinxref: dependencies and files now key on build-project instead
of project-version
- darwinxref: added 'edit' command for interactive database editing
- Removed references to unused Objects directory
Release 0.4 [6-Apr-2005]
- [Bug 2838] darwinxref: resolveDeps can now resolve a single project
- [Bug 2833] deprecated darwinbuild.env, environment variables are now
stored in the build plist file.
- [Bug 2824] darwinxref: fixed crasher on pure-Darwin systems
- [Bug 2811] darwinbuild: -target now works correctly for Xcode projects
- [Bug 2805] darwinbuild: exit status reflects build's exit status
- [Bug 2781] darwinbuild: don't use ditto(1) on pure-Darwin systems
- [Bug 2746] added indexes to SQL tables to improve performance
- darwinbuild: redirect build tool stdin to /dev/null
- darwinbuild: automatically resolve dependencies after logging them
- darwinxref: bigger transactions in resolveDeps for better performance
- darwinbuild: fixed some instances where build number was not passed
to darwinxref.
Release 0.3 [15-Mar-2005]
- darwinbuild -chroot now works with xcodebuild projects
- [Bug 2740] Added darwinbuild.common for common subroutines (kito)
- installXcodebuild honors the DARWIN_BUILDROOT environment variable
- installXcodebuild merges Mac OS X CoreFoundation with i386 CF-Lite
- added 7U16-files.txt.gz for darwinxref findFile database
- updated 7U16.plist to include build dependencies gathered via -logdeps
- darwinbuild.env: added RC_JASPER=YES for CoreOSMakefiles
- [Bug 2752] darwinxref: resolve aliases when printing project versions
- [Bug 2763] darwinxref: deprecate "headers" depends type for "header"
- [Bug 2747] darwinbuild: -logdeps works in combination with -chroot
- [Bug 2745] darwinbuild: products of build aliases are now correctly
copied into the Roots directory
- darwintrace: execve does not log when it would return ENOENT
- darwinxref: added exportFiles and improved loadFiles command
- darwinxref: print summaries after loadDeps, resolveDeps commands
- darwinbuild: extracting sources now works correctly when build
aliases are used
- Added -build=value flag to darwinbuild
- Added darwintrace.dylib to log build-time dependencies with -logdeps
flag to darwinbuild
Release 0.2 [1-Mar-2005]
- Added project plist export command to darwinxref
- darwinxref prints all projects when '*' is requested
- Updated darwinxref to use SQLite 3.1.3
- Added support for build aliases
- Added file registration and search for projects' contents
- Inspects Mach-O files for dylib dependencies during registration
- Changed dependency format to be specific to project-version tuples
- Added resolve command which creates dependencies on the projects that
provide files used during a build.
Release 0.1 [30-Jun-2004]
- Initial release of Darwin Build Scripts