Browse code

untempatify RELEASENOTES.md

Nat! authored on 12-10-2017 20:38:30
Showing 2 changed files
... ...
@@ -1,4 +1,8 @@
1
-[comment]: <> (DO NOT EDIT THIS FILE. EDIT THE TEMPLATE "templates/RELEASENOTES.md.scion")
1
+## 3.14.0
2
+
3
+* make it a C project (to not require CXX)
4
+
5
+
2 6
 ### 3.13.6
3 7
 
4 8
 * fix build_script
5 9
deleted file mode 100644
... ...
@@ -1,851 +0,0 @@
1
-### 3.13.6
2
-
3
-* fix build_script
4
-* unified  mktemp handling across platforms
5
-* add libexec to build PATH, for the benefits of scripts (regression)
6
-
7
-### 3.13.5
8
-
9
-* fix corruption of motd file
10
-
11
-### 3.13.4
12
-
13
-* protect CC renames affecting subsequent builds
14
-
15
-### 3.13.3
16
-
17
-* add --lenient flag to mulle-bootstrap, used in mulle-bootstrap git to not abort on failure
18
-
19
-### 3.13.1
20
-
21
-* use CC, CXX and MAKE internally and heed possible external environment variable of same name
22
-
23
-## 3.13.0
24
-
25
-* add mulle-bootstrap log command, for looking at build logs of a specific dependency
26
-
27
-
28
-### 3.12.4
29
-
30
-* MAKE_FLAGS is MAKEFLAGS for consistency
31
-
32
-### 3.12.1
33
-
34
-* deal with empty/bad repositories more gracefully
35
-
36
-## 3.12.0
37
-
38
-* Various improvements for mingw. New version number for mulle-tests
39
-
40
-### 3.11.2
41
-
42
-* improvements for mingw, also improved speed a bit
43
-
44
-### 3.11.1
45
-
46
-* fixes for mingw
47
-* fix a problem with zip archives tests
48
-
49
-
50
-## 3.11.0
51
-
52
-Clean command reworked
53
-
54
-* `mulle-bootstrap clean build` followed by `mulle-bootstrap build` actually rebuilds everything as one would expect. The old functionality is now called `mulle-bootstrap clean cruft`
55
-* `clean build` does not throw away dependencies, use `clean full` for that
56
-
57
-## 3.10.0
58
-
59
-* new clean command 'full' is now also the new default
60
-* new config `dispense_style` . See [DISPENSE_STYLE](dox/settings/dispense_style/DISPENSE_STYLE.md)
61
-
62
-
63
-### 3.9.3
64
-
65
-* fix some problems with tar archives
66
-* subcommand !!! `mulle-bootstrap shell` has been moved to mulle-sde, a new project
67
-
68
-### 3.9.2
69
-
70
-* fix for github tar archives having the same name
71
-
72
-### 3.9.1
73
-
74
-* remove debug -x from release
75
-* fix a bug with renamed non-git repositories
76
-
77
-## 3.9.0
78
-
79
-* new mulle-bootstrap shell command to make life in a virtual env even easier
80
-* fix various xcode related build bugs
81
-* mulle-bootstrap doesn't do kill 0 anymore
82
-* add `mulle-bootstrap-core-options.sh` for external script users
83
-* `mulle-bootstrap -f build` now forces a rebuild, as one would expect
84
-
85
-### 3.8.5
86
-
87
-* fix broken xcode build path
88
-* allow some plural synonmys for setting, config, expansion command
89
-
90
-### 3.8.4
91
-
92
-* fix `Abort now (y/N) > y` not really aborting
93
-
94
-### 3.8.3
95
-
96
-* fix upgrade and status for tar/zip SCM, which previously errored out
97
-
98
-### 3.8.2
99
-
100
-* fix setting listings for os specific settings and build settings
101
-in general
102
-* fix reading of dispense settings
103
-
104
-### 3.8.1
105
-
106
-* fix archive extraction on linux
107
-
108
-## 3.8.0
109
-
110
-* new build setting `srcdir` where you can specify the subdirectory, that contains configure, CMakeLists et.c
111
-
112
-### 3.7.2
113
-
114
-* git fetch exception fixed when mirroring
115
-
116
-### 3.7.1
117
-
118
-* save git mirrors under their fork names
119
-
120
-## 3.7.0
121
-
122
-* experimentally added ${GITHUB_REMOTE_ORIGIN} expansion, so you can specify
123
-dependencies relative to the original project.
124
-* when moving embedded directories around, mulle-bootstrap will now create
125
-missing target directories
126
-* renamed `clone_cache` to `git_mirror` because that's better. `refresh_cache` is now `refresh_git_mirror`.
127
-* added option `--no-git-mirror`
128
-* added `type` command to introspect the bootstrap topology easier
129
-* avoid superflous updating of mirrored git clones during one session, which
130
-speeds up things considerably, when mirroring
131
-* fix bug of failing symlinks, when the destination itself is accessed via a
132
-symlink
133
-
134
-### 3.6.7
135
-
136
-* reduce verbosity in some places and hide ugly symlink paths
137
-
138
-### 3.6.6
139
-
140
-* fix a few regressions
141
-
142
-### 3.6.5
143
-
144
-* remove superflous set_build_needed
145
-
146
-### 3.6.4
147
-
148
-* fix accidental create of `.bootstap.local` as a file
149
-* when using clone chaches, mulle-bootstrap update and upgrade now work as one
150
-would expect. It would be good to erase your old clone caches.
151
-
152
-
153
-### 3.6.3
154
-
155
-* fix missing include in warn scripts
156
-
157
-### 3.6.2
158
-
159
-* fix and improve systeminstall (formerly just install)
160
-
161
-### 3.6.1
162
-
163
-* bug fixes
164
-
165
-
166
-## 3.6
167
-
168
-* Improved the dependencies copying routing. Now also copies `share` `sbin`
169
-`bin` `libexec` and picks up more possible output directories. `sbin` and `bin`
170
-will me merged into `dependencies/bin`.
171
-* Improve path construction, omitting empty components
172
-* Don't output superflous linefeed with paths
173
-* removed -fb flag, because it's just the same as clean before build.
174
-* Added a --from flag to build, so you can rebuild from a starting point.
175
-
176
-
177
-### 3.5.4
178
-
179
-* fix brews not being installed
180
-* clean dist now also dist cleans minions embedded repositories
181
-
182
-
183
-### 3.5.4
184
-
185
-* fix bug in ${expansion:-default}
186
-
187
-
188
-### 3.5.2
189
-
190
-#### `caches_path`renamed to more sensible `search_path`
191
-
192
-* experimentally, don't kill so hard anymore when failing (mostly for
193
-mulle-builds sake)
194
-* Because `mulle-bootstrap setting` now works, init by default does not
195
-create demo files any more. Inverted meaning of -d flag.
196
-* Various improvements to mulle-brew handling
197
-* The paths default is now to output an unquoted one-liner. This is less
198
-correct but simpler.
199
-* Added `mulle-bootstrap run`. See mulle-brew for more details.
200
-* Add proper version check in mulle-functions, so that mulle-brew doesn't
201
-run with wrong libraries
202
-
203
-### 3.4.0
204
-
205
-* added handling of `additional_repositories`. This is supposed to be used
206
-in `.bootstrap.local`. This way I can specify a "MulleFoundation" dependency
207
-if I want to compile for mulle-objc. But sometimes I want the Apple Foundation.
208
-* finally added list command for `setting`. All that's needed now is a scripts
209
-setting to list all scripts
210
-* -fb automatically adds `-U *` to CMAKEFLAGS so that cached values are ignored,
211
-this reduces a lot of WTF moments.
212
-* `CMAKE_FLAGS` is now `CMAKEFLAGS
213
-
214
-
215
-### 3.3.0
216
-
217
-* `mulle-bootstrap project-path` prints out what it thinks your project path is.
218
-This is helpful for **mulle-build**.
219
-* Improve output of `mulle-bootstrap -v help`.
220
-* An empty expansion in repositories is now an error by default. But you can
221
-change it back to previous behavior with  `mulle-bootstrap config -n empty_expansion_is_error`
222
-* The `-g` option no longer works for `mulle-bootstrap config`, use the `-u`
223
-setting to set values in `~/.bootstrap`. This unconfuses the '-g' which means
224
-`.bootstrap` and not `.bootstrap.local`, the default.
225
-* `mulle-bootstrap expansion -l` works now
226
-* You can now use `<key>=<value>` to set settings and expansions. This makes
227
-it easier to copy/paste show output.
228
-* Missing but not required repositories no longer produce a build error
229
-* added `-fb` as lesser -force mode than -f.
230
-* old Frameworks of previous builds are not a problem anymore
231
-* With config `use_cc_cxx=NO` mulle-bootstrap won't read the compiler to use
232
-from `.CC` and `.CXX`.
233
-
234
-
235
-### 3.2.0
236
-
237
-Do not specify cmake dependency in homebrew formula for mulle-bootstrap, since
238
-cmake is not absolutely required. Rather check this at runtime and output
239
-some helpful hints.
240
-
241
-
242
-### 3.1.0
243
-
244
-You can allow optional fetches to fail my listing repository-names, that
245
-are required. (embeded_repositories <-> embedded_required)
246
-Fixes some bugs.
247
-
248
-Still alpha though.
249
-
250
-
251
-# 3.0
252
-
253
-#### New commands: defer, emancipate, flags, status
254
-
255
-#### mulle-bootstrap command syntax was related to git, but now it's related
256
-to homebrew and apt-get. This has been done, because I wan't to have mulle-brew
257
-as a separate shell command, and the git syntax doesn't fit.
258
-
259
-That means, mulle-bootstrap fetch is now just a deprecated synonym for
260
-mulle-bootstrap install
261
-
262
-mulle-bootstrap update is now mulle-bootstrap upgrade.
263
-
264
-mulle-bootstrap install is now mulle-bootstrap systeminstall
265
-
266
-
267
-#### The way settings work as drastically changed too much to list here
268
-
269
-* config now returns the default value, if nothing is configured
270
-* various changes in variables
271
-
272
-Now               | Before              | Description
273
-DEPENDENCIES_DIR  | DEPENDENCIES_DIR    |
274
-ADDICTIONS_DIR    | ADDICTIONS_DIR      |
275
-BOOTSTRAP_DIR     | BOOTSTRAP_SUBDIR    |
276
-REPOS_DIR         | CLONES_SUBDIR       |
277
-                  | CLONESFETCH_SUBDIR  | Does not exist anymore
278
-
279
-
280
-* libexec is now found relative to $0 so the install script does not need to
281
-patch anymore. It's also convenient for the test scripts
282
-* various status files are now prefixed with .bootstrap_
283
-* **tag** as a setting does not exist anymore. Now its part of the repositories line
284
-* A lot of options have changed. Too many to mention. Sorry about this, but progres...
285
-
286
-
287
-### 2.6.1
288
-
289
-* fix bug with absolute paths
290
-
291
-## 2.6.0
292
-
293
-* mulle-bootstrap announces itself to cmake with -DMULLE_EXECUTABLE_VERSION
294
-
295
-### 2.5.2
296
-
297
-* -v -h gives more help
298
-* renamed -tt  to -tit and -tp to -tip, because it's more logical
299
-
300
-### 2.5.1
301
-
302
-* Allow --debug and --release as shortcuts for -c Debug and -c Release, because
303
-I am lazy and I expect it.
304
-
305
-
306
-## 2.5.0
307
-
308
-* Improve usage for `mulle-bootstrap init`
309
-* Reduce verbosity for PATH to fluff
310
-* The --no-recursion flag has been fixed, the  old behaviour is now available
311
-as --no-embedded.
312
-* Use eval exekutor for cmake to better inherit CMAKEFLAGS and protect paths
313
-with spaces.
314
-* build now acknowledges --check-usr-local-include also
315
-* With --prefix you can change /usr/local on the commandline for build and fetch
316
-
317
-
318
-### 2.4.2
319
-
320
-Make PATH generation compatible with homebrew shims
321
-
322
-
323
-### 2.4.1
324
-
325
-Exit with 0 when printing version.
326
-Emit better .gitignore code for symlinked embedded repos
327
-
328
-## 2.4.0
329
-
330
-Fix failing update for projects with only embedded repositories.
331
-
332
-* experimental fetch flag -es added. This allows fetch to symlink embedded
333
-repositories.
334
-
335
-
336
-## 2.3
337
-
338
-The main new feature of 2.3 is support for working with different repositories.
339
-E.g. I host releases on GitHub on a branch "release", which are accessed via
340
-https://, but when I develop I use Mulle KybernetiK on branch "master".
341
-
342
-The "trick" is to use parameterized branches and urls like so:
343
-
344
-```
345
-$ cat .bootstrap/repositories
346
-${MULLE_REPOSITORIES}/mulle-c11;;${MULLE_C11_BRANCH:-release}
347
-$ cat .bootstrap/MULLE_REPOSITORIES
348
-https://github.com/{{PUBLISHER}}
349
-```
350
-
351
-This works for the release part. Locally though in the non-committed
352
-`.bootstrap.local`:
353
-
354
-```
355
-$ cat MULLE_REPOSITORIES
356
-nat@mulle-kybernetik.com:/scm/public_git/repositories
357
-$ cat MULLE_C11_BRANCH
358
-master
359
-```
360
-
361
-### Changes
362
-
363
-* clarified the use of options vs. flags some more. e.g. git GITFLAGS command GITOPTIONS.
364
-* update will now also refresh
365
-* improved refresh check, should now properly detect edited config files, except if the
366
-edit is less than a second after the last refresh run. Death of the hidden -fr flag
367
-* start version checking bootstrap contents
368
-* -f flag will now also try to checkout branches, that are checked out
369
-incorrectly
370
-* fetch gains -i option, to ignore "wrongly" checked out repositories
371
-* fails are prefixed with the command, that caused the failure
372
-* use unexpanded URLs for dependency matches and store those into .bootstrap.auto
373
-* mulle-bootstrap now picks up URL changes and corrects them in fetched
374
-repositiories, but that does not per se force an update.
375
-* try to detect changes in .bootstrap better
376
-* improved retrieval of settings for embedded repositories
377
-* improved dependency code
378
-* some more checks, that embedded repositories do not clobber symlinked content
379
-* added -D bootstrap flag to create .bootstrap.local definition files. Convenient for specifiying alternate URLs for example.
380
-
381
-
382
-### 2.2.1
383
-
384
-
385
-* fix for Linux
386
-
387
-## 2.2
388
-
389
-* `mulle-bootstrap tag` will now also tag embedded repositories
390
-* `mulle-bootstrap git` will now also grace embedded repositories, so `mulle-bootstrap git status -s` is now better
391
-* reworked tag to be more aware of git flags, so `mulle-bootstrap tag -l` now
392
-works
393
-
394
-### 2.1.4
395
-
396
-* use a safer but uglier method to append to .gitignore
397
-
398
-### 2.1.3
399
-
400
-* Improve performance especially on windows, due to less superflous refreshes
401
-
402
-### 2.1.2
403
-
404
-* expose some more flags to usage. Distinguish between flags and options.
405
-* The description of -V was wrong.
406
-* Moved -c to fetch options as -cs to avoid clash with build flags
407
-
408
-### 2.1.1
409
-
410
-* Improve usage to show more available commands
411
-* redid the IFS setting/resetting chores
412
-
413
-
414
-## 2.1
415
-
416
-**The changes should be harmless, but to be safe
417
-`mulle-bootstrap dist clean` your projects**
418
-
419
-This version has some additions, that enable a more flexible use of
420
-embedded repositories to "compose" source trees. Up till 2.1 embedded
421
-repositories were always placed into the project root. Now you can
422
-specify the subdirectory like "src/embedded/foo" (relative to project root).
423
-
424
-Better fetch and build code checks that dependencies, that are
425
-installed in `/usr/local` already, need not be fetched again. This can
426
-be helpful, when building brew packages (for example). (**-nb**)
427
-
428
-Support for `mulle-build` which has an in general more optimistic approach to
429
-life. 2.3 will focus on making operations faster in the Windows bash shell.
430
-
431
-#### Commands
432
-
433
-* started on `mulle-bootstrap config`. First implemented setting is
434
-`warn_scripts`. You can turn off scripts warning, with
435
-`mulle-bootstrap config -on dont_warn_scripts`
436
-* added `git` command, so you can say `mulle-bootstrap git status`. Going to
437
-become more useful over time.
438
-* renamed hidden option **-r** to **-l** (sorry)
439
-* **-f** option removed from build/fetch options, as it didn't do anything. The
440
-**-f** for mulle-bootstrap is still there though.
441
-* new **-c** switch to enable checking `/usr/local/include` for dependency libraries
442
-conveniently from the command line. Fix build to add `/usr/local/include` to
443
-build, if `check_usr_local_include` is YES.
444
-* remove obsolete `mulle-bootstrap-project.sh` and `mulle-bootstrap project`.
445
-The idea behind that has been moved to `mulle-build`.
446
-
447
-#### Features
448
-
449
-* embedded repositories can now be placed at an arbitrary position within your
450
-project tree
451
-* allow build and fetch options to be passed to `bootstrap`
452
-* improved comments in `repositories` and `embedded_repositories` templates
453
-* pass ADDICTIONS_DIR to build systems
454
-* improve optimistic support, by memorizing if a fetch, refresh, build went
455
-thru successfully. The automatic refresh should run much less often now.
456
-
457
-#### Cmake
458
-
459
-* fixed multiple path settings for cmake
460
-* a project can indicate its preferred CC or CXX compiler by files .CC and .CXX
461
-in it's project root. e.g. `echo "mulle-clang" > .CC`. This can be overridden
462
-by settings. It's there because I have problems when not specifying the compiler
463
-on the command line.
464
-
465
-#### Bugfixes
466
-
467
-* fixed a problem in the parsing of the repositories file
468
-* fixed some as of yet unknown bugs, by improving some path functions
469
-* changes in deeply embedded repositories are now better tracked
470
-* call warn scripts earlier, when bootstrapping
471
-* fix dry run for commands with output redirection
472
-* fix ALL/NONE in yes no answers to work again
473
-
474
-
475
-### 2.0.1
476
-
477
-Fixes two bugs
478
-
479
-* fix problem in refresh using '==' instead of '='
480
-* fix cut not using -s for extra parameters
481
-
482
-
483
-# 2.0
484
-
485
-#### YOUR OLD STUFF MAY NOT RUN ANYMORE
486
-
487
-Do a `mulle-bootstrap dist clean`.
488
-
489
-
490
-### YOUR OLD SETTINGS MAY NOT WORK ANYMORE!
491
-
492
-Move all repo specific setting directories from
493
-
494
-`.bootstrap/settings/<reponame> `
495
-
496
-to
497
-
498
-`.bootstrap/<reponame>`
499
-
500
-#### YOUR OLD SCRIPTS MAY NOT WORK ANYMORE!
501
-
502
-* Fetch script names have changed. *-install.sh is now *-fetch.sh.
503
-
504
-#### Changes
505
-
506
-* Add pre-build.sh script phase (for libcurl really)
507
-* Brew formulas are now installed locally into "addictions". A folder which
508
-lies besides "dependencies". This is a pretty huge change. By removing pips and
509
-gems, mulle-bootstrap can now claim to do only project relative installs.
510
-* mulle-bootstrap xcode changed to emit a non-xcode project relative
511
- `$(DEPENDENCIES_DIR)` setting. Admittedly an experimental hack. But the old
512
- more proper way, didn't work with cmake generated xcode projects.
513
-* reorganized repository structure a bit
514
-* You can now specify ALL (always YES) or NONE (always NO) at the y/n prompt.
515
-* Support for MINGW on Windows for cmake and configure (experimental)
516
-* Finally added a proper dependency resolver
517
-* -f option now recognized by build and fetch
518
-* rewrote mulle-bootstrap so that the files in libexec are included and not
519
-executed, which is nicer for less environment pollution and ever so slightly
520
-better performance.
521
-* rewrote mulle-bootstrap so that it works on systems, which do not have
522
-symlinks available.  This meant that I had to redo the whole settings
523
-inheritance scheme.
524
-* -v is now more interesting to watch
525
-* renamed build setting OTHER_CPPFLAGS to OTHER_CXXFLAGS (!)
526
-* UNAME is now simplified and lowercased(!)
527
-* redid the settings merge and inheritance logic. It's now a bit more scrutable.
528
-* removed build_order from settings
529
-* script names have changed. For instance, post-install.sh is now post-fetch.sh.
530
-* dist-clean is gone, now dist means "clean dist". You can also say dist clean
531
-it doesn't matter.
532
-* don't pollute .gitignore with embedded repositories inside .repos#
533
-* reduced configurability of mulle-bootstrap, since I didn't use it so far much and it slows things down on MINGW
534
-
535
-
536
-## 1.1
537
-
538
-* Fix tar install, which was broken
539
-* Fix some wordings
540
-* You can now put configuration setting like variables into the URL. Like so:
541
-   https://${host:-www.mulle-kybernetik.com}:foo.git. Define the host like
542
-   a regular fetch setting. `echo "x.y.com" > .bootstrap/host`
543
-* Fix help screen for refresh and update
544
-* Don't complain if there are no dependencies generated
545
-
546
-
547
-# 1.0
548
-
549
-Version 1.0 breaks compatibility with the previous version. You should "clean"
550
-everything.
551
-
552
-* **change in the dependencies/ structure**
553
-   it's now dependencies/Debug/lib for Debug and dependencies/lib for Release
554
-* The default built is Release only
555
-* mulle-bootstrap tag can now '-f' force tags and '-d' delete tags
556
-* mulle-bootstrap no longer places headers into `dependencies/usr/local/include`
557
-but just into `dependencies/include`
558
-* the 'tag' command is now less powerful. It just tags the fetched repositories,
559
-because that's mulle-bootstraps scope. The tag 'script facility' has been
560
-eliminated.
561
-* new clean target "install"
562
-* removed convert-pre-0.10 and ibuild commands
563
-* ConsoleMovies are gone, I am too lazy to maintain them.
564
-* Improve generation of -F and -L flags in cmake and configure
565
-* cmake and configure always add `/usr/local/include` and link with `/usr/local/lib`
566
-(mostly due to brew installing dependencies there).
567
-* redid the verbosity logging with -v, -vv , -vvv, -t
568
-* clean before build is no longer the default
569
-
570
-## 0.26
571
-
572
-* Check library scripts version vs. executable version (paranoia)
573
-* Skip Dirty Harry with -f flag.
574
-* improve FAQ a little
575
-* Reverse oder of repositories when updating, because this catches deep
576
-  renames. Update now also fetches repositories, if they aren't there
577
-  yet.
578
-* Make the Dirty Harry check less foolproof, but also less annoying.
579
-
580
-
581
-## 0.25
582
-
583
-*  Remove python dependency
584
-*  **bootstrap: refresh between fetch and build**
585
-
586
-
587
-## 0.24
588
-
589
-*  Fix releasenotes underscores
590
-*  Fix xcodebuild path
591
-
592
-
593
-## 0.23
594
-
595
-*  Added -k options to build, to control cleaning before build.
596
-   You can now specify the default configurations to build with -c.
597
-   e.g. `mulle-bootstrap -c "Debug"
598
-*  Improved library and frameworks searchpath generation.
599
-*  You can pass build a `-j <cores>` flag, for cmake/make to parallelize
600
-   the build.
601
-*  Specify `ARCHS='${NATIVE_ARCH_ACTUAL}' mulle-bootstrap build`, when you
602
-   want to override the ARCHS setting for an Xcode build. Kinda hackish.
603
-*  xcodebuild routine does not overwrite `INSTALL_PATH` anymore.
604
-*  `mulle-bootstrap clean` has **output** as the new default
605
-*  Fix accidental IFS overwrite problem, resulting in git calls failing
606
-*  Install brews first, since they might load prerequisites for shell scripts.
607
-*  Allow user to specify `source_dir` build setting for projects, that do
608
-   not have CMakeLists.txt or .xcodeproj or configure in the top level.
609
-*  the Source Code Management system is no longer read from a .scm file, but
610
-   instead specified in the fourth field of repositories. The default is still
611
-   git and the only available alternative is still svn.
612
-      url;name;branch;scm
613
-
614
-*  Improve repository merge order again.
615
-*  Fix cmake to not always compile with DEBUG options. Allow to supply
616
-   cmake flags via "cmakeflags" root build setting.
617
-
618
-
619
-## 0.22
620
-
621
-*  Fix repository order when merging. You should know, that the
622
-   repository order in `.bootstrap/repositories` needs to be in proper sorted
623
-   order. Only than can mulle-bootstrap figure out the recursive dependencies
624
-   correctly.
625
-*  Allow clone of specific branches by changing the repository spec line to
626
-   url;name;branch
627
-
628
-      ```
629
-      https://www.mulle-kybernetik.com/repositories/mulle-configuration;;MulleFoundation
630
-      ```
631
-      uses the default name, but fetches the MulleFoundation branch.
632
-*  Huge change:  CMake (and configure) are now the prefered build systems even
633
-   on OS X (if a `CMakeLists.txt` is available). xcodebuild becomes a fallback
634
-   preference. The reasons are:
635
-      1.  CMake + Make seem faster than xcodebuild
636
-      2.  It forces me to keep up the CMakeLists.txt with the Xcode project
637
-   If you don't like it change the build setting 'build_preferences'.
638
-*  mulle-bootstrap recognizes that bare repositories need to be cloned more
639
-   often now, if not always.
640
-*  Make mulle-bootstrap more resilient against aborted fetches, added Dirty
641
-   Harry quote.
642
-*  Uses `CMAKE_EXE_LINKER_FLAGS` and `CMAKE_SHARED_LINKER_FLAGS` instead of
643
-   `CMAKE_LD_FLAGS`.
644
-*  Fix wrong --recursive for svn checkout.
645
-
646
-
647
-## 0.21
648
-
649
-*  Fix a bug when updating
650
-*  When updating ignore symlinked repositories and do not update embedded
651
-   repositories of said symlinks.
652
-*  Fixed option handling, so now -y -v and -v -y are possible. It used to be
653
-   that the order was -y -v.
654
-*  Embeded repository settings do not get inherited, from other repos, which is
655
-   just confusing.
656
-*  Make the zombiefication code a bit more clever, when expected repos aren't
657
-   there (yet).
658
-
659
-
660
-## 0.20
661
-
662
-*  Replace `CLONES_FETCH_SUBDIR` with `REPOS_DIR`.
663
-*  mulle-bootstrap now uses the zombie repository detection to actually bury
664
-   unused repositories. Check out "tests/refresh/refresh.sh" how this
665
-   actually works. The upshot is, all changes in the repositories settings
666
-   are now reflected on refresh.
667
-*  Fix a bug in `combined_escaped_search_path`, which produced ugly and
668
-   wrong search paths (that didn't matter).
669
-*  Pass `DEPENDENCIES_DIR` via command line, which fixes some subtle problems
670
-   with missing libraries, due to -force_load and friends.
671
-*  Started mulle-bootstrap project. The general idea is to do also manage
672
-   the project that contains the .bootstrap folder (at least a little bit). So
673
-   `mulle-bootstrap clone` is now `mulle-bootstrap project clone
674
-*  Better deep fetch and refresh avoids redoing repositories (could be
675
-   better though still)
676
-*  Don't append to log files, overwrite them.
677
-*  script build shows better info on failure
678
-*  Fix recursive repository agglomeration to not output duplicate lines
679
-*  Grep those lines with an exact line match
680
-
681
-
682
-## 0.19
683
-
684
-*  Forgot a -f on a ln -s , which could result in an irritating output.
685
-*  Now also refresh before fetching. mulle-bootstrap will now be able to
686
-   pick up changes in recursive repositories. And fetch additional repos as
687
-   needed, so you don't need to clean dist.
688
-*  Produce more helpful output if cmake is missing.
689
-*  Experimental support for "mulle-bootstrap clone", which will clone and build
690
-   a remote repository.
691
-*  Nicer markup for RELEASENOTES.md
692
-
693
-## 0.18
694
-
695
-*  Refixed: Fix old favorite bug build_ignore became a directory bug) again ...
696
-*  Added refresh, which will be called before build and update automatically
697
-   to rebuild .bootstrap.auto.
698
-
699
-## 0.17
700
-
701
-*  Fixed the broken inheritance. The "Always redo bootstrap.auto folder
702
-   on fetch" fix in 0.15, was in the wrong position. So 0.15 and 0.16 are
703
-   totally broken releases. Sorry.
704
-
705
-## 0.16
706
-
707
-*  Fixed misnamed exekutor.
708
-*  Fix old favorite bug build_ignore became a directory bug) again ...
709
-
710
-## 0.15
711
-
712
-*  `tag` checks in all repositories, that a tag does not exist.
713
-*  Remove some fluff from regular output.
714
-*  Fix a bug involving settings copy  (build_ignore became a directory bug)
715
-*  Executed commands are now prefixed with ==> for better readability.
716
-*  Always redo bootstrap.auto folder on fetch, which means that you don't need
717
-   to clean dist anymore after editing .bootstrap files.
718
-*  Forgot to write-protect dependencies, when only partial builds were done.
719
-
720
-## 0.14
721
-
722
-*  Fix various uglies.
723
-*  Make white terminals more happening with color choices.
724
-*  -v circumvents building into a logfile, which is sometimes more convenient.
725
-
726
-## 0.13
727
-
728
-*  Fix colorization by using printf, instead of echo.
729
-
730
-## 0.12
731
-
732
-*  Run post-install.sh also on embedded repositories. Sometimes useful, when
733
-   you need ./configure to produce some headers.
734
-*  Add parameters to "Executing script" line.
735
-*  Add "checkout" git flags, to fine tune the clone. But use --recursive
736
-   per default.
737
-
738
-## 0.11
739
-
740
-*  Fixes another stale headers problem. Project is creeping towards a 1.0.
741
-
742
-## 0.10
743
-
744
-*  Fetch settings can be platform specific by using the `uname` as a file
745
-   extension. e.g. repositories.Darwin. Other settings may follow, if the need
746
-   arises. So far it hasn't.
747
-*  Added `embedded_repositories` for those special moments, where you don't want
748
-   to link another project, but just steal a few files. These gits are installed
749
-   in your projects root and they are not built. You can not symlink them into
750
-   your project, just clone them.
751
-*  Because I needed ancient and dying svn for MulleScion,  you can now remap
752
-   from the default git to svn, by creating a file `<reponame>.scm`. That contains
753
-  the string "svn" then.
754
-*  *** Renamed "gits" to "repositories" ***
755
-*  Use mulle-bootstrap convert-pre.0.10 ~/src to convert all .bootstrap folders
756
-  that `find` can find.
757
-*  Do `mulle-bootstrap -n -v convert-pre-0.10 ${HOME}` to check what it's doing.
758
-*  Install dummy dirs for xcodebuild too, to avoid boring compiler warnings.
759
-*  Always overwrite headers, otherwise old and stale headers make life
760
-   unnecessarily more complicated.
761
-
762
-### 0.9.8
763
-
764
-*  Brings more Linux fixes
765
-
766
-### 0.9.7
767
-
768
-*  Allow mulle-bootstrap version to work everywhere.
769
-
770
-### 0.9.6
771
-
772
-*  Figured out that some terminal windows have a white background (duh).
773
-*  Fixed shifts for Ubuntu's hated dash.
774
-*  Fixed some other Linux problems.
775
-
776
-### 0.9.5
777
-
778
-*  Messed up the tagging somewhat... 0.9.1 and 0.9.2 were the same and
779
-*  0.9.3 doesn't even exist. So now 0.9.5 is the one.
780
-
781
-*  Don't trace environment reads of `MULLE_BOOTSTRAP_ANSWER` and
782
-*  `MULLE_BOOTSTRAP_VERBOSE`.
783
-*  Fix xcodebuild log filename generation
784
-*  Fix dry run some more.
785
-*  Less output during dispensal, when not using -v.
786
-*  Reduce usage output to 25 lines.
787
-
788
-### 0.9.1
789
-
790
-*  Fix cmake and configure build.
791
-
792
-## 0.9
793
-
794
-*  Specifying repos with `mulle-bootstrap build <repos>` was broken.
795
-*  Added -y option, so everything is answered YES. I use this all the time.
796
-*  Log xcodebuild command line into logfile.
797
-*  Fix useless errors during dry run.
798
-*  ** Changed the way custom "build.sh" scripts are executed. **
799
-*  You can give a xcodeproj to mulle-bootstrap xcode directly, nice for
800
-   sharing  dependencies with many subprojects.
801
-*  Fixes the collection and dispensal of built frameworks.
802
-*  Added logging to various 'cd' commands.
803
-*  Collect and dispense symbolic links for directories too (not just for files)
804
-*  Beautified output a little bit.
805
-*  Respect the terse flag (-s) during mulle-bootstrap xcode add.
806
-*  Add VENDOR_PREFIX to mulle-bootstrap-tag as third parameter.
807
-
808
-
809
-### 0.8.1
810
-
811
-*  And the fix, just minutes after the "release". warn scripts didn't
812
-   find a function, and now I have cleaned this up properly, I think.
813
-*  No more duplicate functions.
814
-
815
-## 0.8
816
-
817
-*  Added dist shortcut, because I always like to type "dist-clean".
818
-*  Allow upper-case user input for yes/no questions.
819
-*  Write protect dependencies folder, because I have a tendency to edit
820
-   the headers.
821
-*  Automatically append boring directories to .gitignore after fetch.
822
-*  Inverted script default answer, because it pains me. Also it's not
823
-   useful when using -a to just "breeze" through.
824
-*  Redirect build logs to "build/.repos/.logs", because especially
825
-   xcodebuild is just too verbose.
826
-
827
-### 0.7.1
828
-
829
-*  Fixed an internal error, when using mulle-bootstrap update.
830
-
831
-## 0.7
832
-
833
-*  Added version command
834
-
835
-##  0.6
836
-
837
-*  Improve scripts handling and add a some new phases to
838
-   the proceedings. Actually the whole script stuff didn't work before...
839
-*  Scripts in general aren't documented yet, because it's still very much
840
-   in fluctuation.
841
-
842
-*  More output during setting inheritance. Fix proper inheritance of
843
-*  build_order and build_ignore.
844
-
845
-*  Lots of en-passant bug fixes. Should be in general better than 0.5
846
-
847
-*  Add -V option.
848
-
849
-*  Added new did-install script phase. Depending on actual usage, I'll
850
-   probably ditch some of the other phases again. This is all in flux.