Browse code

updated mulle-sde

Nat! authored on 21-05-2019 18:20:11
Showing 36 changed files
... ...
@@ -10,6 +10,7 @@
10 10
 old/
11 11
 tmp/
12 12
 build/
13
+kitchen/
13 14
 var/
14 15
 
15 16
 /tests/mulle-tests
... ...
@@ -54,6 +55,7 @@ stash/
54 55
 
55 56
 # build stuff is boring too
56 57
 build/
58
+kitchen/
57 59
 dependency/
58 60
 addiction/
59 61
 *.tmp/
... ...
@@ -7,11 +7,11 @@ export MULLE_MATCH_FILENAMES="config:*.h:*.inc:*.c:CMakeLists.txt:*.cmake"
7 7
 
8 8
 
9 9
 # Used by `mulle-match find` to locate files
10
-export MULLE_MATCH_PATH="${PROJECT_SOURCE_DIR}:CMakeLists.txt:cmake"
10
+export MULLE_MATCH_PATH=".mulle/etc/sourcetree/config:${PROJECT_SOURCE_DIR}:CMakeLists.txt:cmake"
11 11
 
12 12
 
13 13
 # Used by `mulle-match find` to ignore boring subdirectories like .git
14
-export MULLE_MATCH_IGNORE_PATH=
14
+export MULLE_MATCH_IGNORE_PATH=""
15 15
 
16 16
 
17 17
 # tell mulle-sde to keep files protected from read/write changes
... ...
@@ -37,10 +37,10 @@ export ADDICTION_DIR="${MULLE_VIRTUAL_ROOT}/addiction"
37 37
 #
38 38
 # Use common build directory
39 39
 #
40
-export BUILD_DIR="${MULLE_VIRTUAL_ROOT}/build"
40
+export KITCHEN_DIR="${MULLE_VIRTUAL_ROOT}/kitchen"
41 41
 #
42 42
 #
43 43
 #
44
-export MULLE_SDE_INSTALLED_VERSION="0.37.1"
44
+export MULLE_SDE_INSTALLED_VERSION="0.38.0"
45 45
 
46 46
 
... ...
@@ -23,7 +23,7 @@ then
23 23
    MULLE_HOSTNAME="`PATH=/bin:/usr/bin:/sbin:/usr/sbin hostname -s`"
24 24
    if [ "${MULLE_HOSTNAME:0:1}" = '.' ]
25 25
    then
26
-      MULLE_HOSTNAME="_walitza"
26
+      MULLE_HOSTNAME="_terodde"
27 27
    fi
28 28
    export MULLE_HOSTNAME
29 29
 fi
... ...
@@ -78,8 +78,7 @@ case "${MULLE_SHELL_MODE}" in
78 78
       # source in any bash completion files
79 79
       #
80 80
       DEFAULT_IFS="${IFS}"
81
-      shopt -s nullglob; IFS="
82
-"
81
+      shopt -s nullglob; IFS=$'\n'
83 82
       for FILENAME in "${MULLE_VIRTUAL_ROOT}/.mulle/share/env/libexec"/*-bash-completion.sh
84 83
       do
85 84
          . "${FILENAME}"
... ...
@@ -120,7 +119,7 @@ case "${MULLE_SHELL_MODE}" in
120 119
    *INTERACTIVE*)
121 120
       if [ -z "" ]
122 121
       then
123
-         alias buildorder="mulle-sde buildorder"
122
+         alias craftorder="mulle-sde craftorder"
124 123
          alias clean="mulle-sde clean"
125 124
          alias craft="mulle-sde craft"
126 125
          alias dependency="mulle-sde dependency"
... ...
@@ -137,5 +136,18 @@ case "${MULLE_SHELL_MODE}" in
137 136
          alias subproject="mulle-sde subproject"
138 137
          alias update="mulle-sde update"
139 138
       fi
139
+
140
+      if [ -z "" ]
141
+      then
142
+         alias c="mulle-sde craft"
143
+         alias C="mulle-sde clean; mulle-sde craft"
144
+         alias CC="mulle-sde clean all; mulle-sde craft"
145
+         alias t="mulle-sde test rerun --serial"
146
+         alias tt="mulle-sde test craft ; mulle-sde test rerun --serial"
147
+         alias T="mulle-sde test craft ; mulle-sde test"
148
+         alias TT="mulle-sde test clean ; mulle-sde test"
149
+         alias u="mulle-sde update"
150
+         alias l="mulle-sde list"
151
+      fi
140 152
    ;;
141 153
 esac
142 154
new file mode 100644
... ...
@@ -0,0 +1,79 @@
1
+
2
+awk
3
+base64
4
+basename
5
+bash
6
+cat
7
+chgrp
8
+chmod
9
+chown
10
+clear
11
+cp
12
+cut
13
+date
14
+dd
15
+df
16
+dirname
17
+dmesg
18
+echo
19
+ed;optional
20
+egrep
21
+emacs;optional
22
+env
23
+expr
24
+false
25
+fgrep
26
+find
27
+grep
28
+head
29
+hostname
30
+kill
31
+less
32
+ln
33
+login
34
+ls
35
+mkdir
36
+mknod
37
+more
38
+mount
39
+mudo
40
+mv
41
+nano;optional
42
+ps
43
+pwd
44
+readlink
45
+rm
46
+rmdir
47
+sed
48
+sh
49
+sleep
50
+sort
51
+stat
52
+stty
53
+su
54
+sync
55
+tail
56
+tee
57
+test
58
+touch
59
+tr
60
+true
61
+umount
62
+uname
63
+uuidgen
64
+vi;optional
65
+wc
66
+which
67
+xargs;optional
68
+column
69
+mulle-cmake-graphviz-include
70
+mulle-create-build-motd
71
+curl;optional
72
+git;optional
73
+gzip;optional
74
+inotifywait;optional
75
+ssh;optional
76
+tar;optional
77
+tty;optional
78
+wget;optional
79
+zip;optional
... ...
@@ -1,7 +1,5 @@
1
-column
2 1
 mulle-cmake-graphviz-include;optional
3 2
 mulle-create-build-motd;optional
4
-curl;optional
5 3
 git;optional
6 4
 gzip;optional
7 5
 id;optional
... ...
@@ -9,11 +7,10 @@ inotifywait;optional
9 7
 ssh;optional
10 8
 tar;optional
11 9
 tty;optional
12
-wget;optional
13 10
 zip;optional
11
+xz;optional
12
+bzip2;optional
14 13
 mulle-sourcetree-to-c
15 14
 mulle-match-to-cmake;optional
16 15
 mulle-sourcetree-to-cmake;optional
17 16
 cmake
18
-ninja;optional
19
-make;optional
... ...
@@ -6,11 +6,9 @@ cc;optional
6 6
 clang;optional
7 7
 diff
8 8
 gcc;optional
9
+dsymutil;optional
9 10
 install_name_tool
10 11
 ld
11 12
 nm
12 13
 otool
13 14
 ranlib
14
-xcodebuild
15
-xcrun
16
-sw_vers
... ...
@@ -1,4 +1,6 @@
1 1
 
2
+autoconf;optional
3
+autoreconf;optional
2 4
 awk
3 5
 base64
4 6
 basename
... ...
@@ -8,7 +10,9 @@ chgrp
8 10
 chmod
9 11
 chown
10 12
 clear
13
+column;optional
11 14
 cp
15
+curl;optional
12 16
 cut
13 17
 date
14 18
 dd
... ...
@@ -32,6 +36,7 @@ less
32 36
 ln
33 37
 login
34 38
 ls
39
+make;optional
35 40
 mkdir
36 41
 mknod
37 42
 more
... ...
@@ -39,6 +44,7 @@ mount
39 44
 mudo
40 45
 mv
41 46
 nano;optional
47
+ninja;optional
42 48
 ps
43 49
 pwd
44 50
 readlink
... ...
@@ -51,6 +57,7 @@ sort
51 57
 stat
52 58
 stty
53 59
 su
60
+sw_vers;optional
54 61
 sync
55 62
 tail
56 63
 tee
... ...
@@ -63,5 +70,8 @@ uname
63 70
 uuidgen
64 71
 vi;optional
65 72
 wc
73
+wget;optional
66 74
 which
67 75
 xargs;optional
76
+xcodebuild;optional
77
+xcrun;optional
68 78
new file mode 100644
... ...
@@ -0,0 +1,16 @@
1
+inotifywait;remove
2
+fswatch;optional
3
+ar
4
+as
5
+cc;optional
6
+clang;optional
7
+diff
8
+gcc;optional
9
+install_name_tool
10
+ld
11
+nm
12
+otool
13
+ranlib
14
+xcodebuild
15
+xcrun
16
+sw_vers
0 17
new file mode 100644
... ...
@@ -0,0 +1,9 @@
1
+ar
2
+as
3
+cc;optional
4
+clang;optional
5
+diff
6
+gcc;optional
7
+ld
8
+nm
9
+ranlib
0 10
new file mode 100644
... ...
@@ -0,0 +1,11 @@
1
+ar
2
+as
3
+cc;optional
4
+clang;optional
5
+diff
6
+gcc;optional
7
+ld
8
+nm
9
+valgrind;optional
10
+vgdb;optional
11
+valgrind.bin;optional
... ...
@@ -1 +1 @@
1
-2.2.3
1
+2.3.0
... ...
@@ -6,3 +6,5 @@ mulle-c/c-cmake;buildtool
6 6
 mulle-sde/c-cmake;buildtool
7 7
 mulle-sde/cmake;buildtool
8 8
 mulle-c/travis;extra
9
+mulle-sde/c-demo;extra
10
+mulle-c/c-demo;extra
... ...
@@ -1 +1 @@
1
-0.9.10
1
+0.10.0
... ...
@@ -1 +1 @@
1
-0.9.10
1
+0.10.0
2 2
new file mode 100644
... ...
@@ -0,0 +1 @@
1
+0.10.0
... ...
@@ -1 +1 @@
1
-0.9.10
1
+0.10.0
... ...
@@ -1 +1 @@
1
-0.0.0
1
+0.10.0
... ...
@@ -1 +1 @@
1
-0.15.2
1
+0.16.0
... ...
@@ -1 +1 @@
1
-0.15.2
1
+0.16.0
2 2
new file mode 100644
... ...
@@ -0,0 +1 @@
1
+0.16.0
... ...
@@ -1 +1 @@
1
-0.15.2
1
+0.16.0
... ...
@@ -1 +1 @@
1
-0.15.2
1
+0.16.0
... ...
@@ -35,14 +35,16 @@ if( NOT __ALL_LOAD_C_CMAKE__)
35 35
    # to generate an RPATH
36 36
    #
37 37
    function( CreateForceAllLoadList listname outputname)
38
-      set( list ${BEGIN_ALL_LOAD})
39
-      foreach( library ${${listname}})
40
-         if( APPLE)
41
-            list( APPEND list "${library}")
42
-         endif()
43
-         list( APPEND list "${FORCE_LOAD_PREFIX}${library}")
44
-      endforeach()
45
-      list( APPEND list ${END_ALL_LOAD})
38
+      if( ${${listname}})
39
+         set( list ${BEGIN_ALL_LOAD})
40
+         foreach( library ${${listname}})
41
+            if( APPLE)
42
+               list( APPEND list "${library}")
43
+            endif()
44
+            list( APPEND list "${FORCE_LOAD_PREFIX}${library}")
45
+         endforeach()
46
+         list( APPEND list ${END_ALL_LOAD})
47
+      endif()
46 48
       set( ${outputname} "${list}" PARENT_SCOPE)
47 49
    endfunction()
48 50
 
... ...
@@ -5,105 +5,167 @@ if( NOT __ENVIRONMENT__CMAKE__)
5 5
       message( STATUS "# Include \"${CMAKE_CURRENT_LIST_FILE}\"" )
6 6
    endif()
7 7
 
8
+   #
9
+   #
10
+   #
8 11
    set( MULLE_VIRTUAL_ROOT "$ENV{MULLE_VIRTUAL_ROOT}")
9
-   set( DEPENDENCY_DIR "$ENV{DEPENDENCY_DIR}")
10
-   set( ADDICTION_DIR "$ENV{ADDICTION_DIR}")
11
-
12 12
    if( NOT MULLE_VIRTUAL_ROOT)
13 13
       set( MULLE_VIRTUAL_ROOT "${PROJECT_SOURCE_DIR}")
14 14
    endif()
15
-   if( NOT DEPENDENCY_DIR)
16
-      set( DEPENDENCY_DIR "${MULLE_VIRTUAL_ROOT}/dependency")
17
-   endif()
18
-   if( NOT ADDICTION_DIR)
19
-      set( ADDICTION_DIR "${MULLE_VIRTUAL_ROOT}/addiction")
15
+
16
+   # get MULLE_SDK_PATH into cmake list form
17
+   # MULLE_SDK_PATH is set my mulle-craft and usually looks like the
18
+   # default set below. But! If you are using --sdk --platform
19
+   # distictions the paths will be different
20
+   #
21
+   string( REPLACE ":" ";" MULLE_SDK_PATH "$ENV{MULLE_SDK_PATH}")
22
+
23
+   if( NOT MULLE_SDK_PATH)
24
+      set( MULLE_SDK_PATH
25
+         "${MULLE_VIRTUAL_ROOT}/dependency"
26
+         "${MULLE_VIRTUAL_ROOT}/addiction"
27
+      )
20 28
    endif()
21 29
 
22
-   set( CMAKE_INCLUDE_PATH "${DEPENDENCY_DIR}/include"
23
-      "${ADDICTION_DIR}/include"
24
-      ${CMAKE_INCLUDE_PATH}
25
-   )
26
-   set( CMAKE_LIBRARY_PATH "${DEPENDENCY_DIR}/lib"
27
-      "${ADDICTION_DIR}/lib"
28
-      ${CMAKE_LIBRARY_PATH}
29
-   )
30
-   set( CMAKE_FRAMEWORK_PATH "${DEPENDENCY_DIR}/Frameworks"
31
-      "${ADDICTION_DIR}/Frameworks"
32
-      ${CMAKE_FRAMEWORK_PATH}
33
-   )
30
+   set( TMP_INCLUDE_DIRS)
31
+   set( TMP_CMAKE_INCLUDE_PATH)
32
+   set( TMP_CMAKE_LIBRARY_PATH)
33
+   set( TMP_CMAKE_FRAMEWORK_PATH)
34
+
35
+   ###
36
+   ### If you build DEBUG craftorder, but want RELEASE interspersed, so that
37
+   ### the debugger doesn't trace through too much fluff then set the
38
+   ### FALLBACK_BUILD_TYPE (for lack of a better name)
39
+   ###
40
+   ### TODO: reenable later
41
+   ###
42
+   # if( NOT FALLBACK_BUILD_TYPE)
43
+   #    set( FALLBACK_BUILD_TYPE "$ENV{ORACLE_EO_ADAPTOR_FALLBACK_BUILD_TYPE}")
44
+   #    if( NOT FALLBACK_BUILD_TYPE)
45
+   #       set( FALLBACK_BUILD_TYPE "$ENV{FALLBACK_BUILD_TYPE}")
46
+   #    endif()
47
+   #    if( NOT FALLBACK_BUILD_TYPE)
48
+   #       set( FALLBACK_BUILD_TYPE "Debug")
49
+   #    endif()
50
+   # endif()
51
+#
52
+   # if( FALLBACK_BUILD_TYPE STREQUAL "Release")
53
+   #    unset( FALLBACK_BUILD_TYPE)
54
+   # endif()
55
+   message( STATUS "MULLE_SDK_PATH=${MULLE_SDK_PATH}")
56
+
57
+   foreach( TMP_SDK_PATH ${MULLE_SDK_PATH})
58
+      message( STATUS "TMP_SDK_PATH=${TMP_SDK_PATH}")
59
+      #
60
+      # Add build-type includes/libs first
61
+      # Add Release as a fallback afterwards
62
+      #
63
+      # The CMAKE_INCLUDE_PATH path for the CMAKE_BUILD_TYPE are added
64
+      # unconditionally just in case ppl do interesting stuff in their
65
+      # CMakeLists
66
+      #
67
+      # We always prepend to "override" inherited values, so
68
+      # the order seems reversed
69
+      #
70
+      if( EXISTS "${TMP_SDK_PATH}")
71
+
72
+         #
73
+         # add build type unconditionally if not Release
74
+         #
75
+         if( NOT CMAKE_BUILD_TYPE STREQUAL "Release")
76
+            set( TMP_CMAKE_INCLUDE_PATH
77
+               ${TMP_CMAKE_INCLUDE_PATH}
78
+               "${TMP_SDK_PATH}/${CMAKE_BUILD_TYPE}/include"
79
+            )
80
+            set( TMP_INCLUDE_DIRS
81
+               ${TMP_INCLUDE_DIRS}
82
+               "${TMP_SDK_PATH}/${CMAKE_BUILD_TYPE}/include"
83
+            )
84
+
85
+            set( TMP_CMAKE_LIBRARY_PATH
86
+               ${TMP_CMAKE_LIBRARY_PATH}
87
+               "${TMP_SDK_PATH}/${CMAKE_BUILD_TYPE}/lib"
88
+            )
89
+            set( TMP_CMAKE_FRAMEWORK_PATH
90
+               ${TMP_CMAKE_FRAMEWORK_PATH}
91
+               "${TMP_SDK_PATH}/${CMAKE_BUILD_TYPE}/Frameworks"
92
+            )
93
+         endif()
34 94
 
35
-   ### Additional search paths based on build style
95
+         #
96
+         # add release as fallback always
97
+         #
98
+         set( TMP_SDK_RELEASE_PATH "${TMP_SDK_PATH}/Release")
99
+         if( NOT EXISTS "${TMP_SDK_RELEASE_PATH}")
100
+            set( TMP_SDK_RELEASE_PATH "${TMP_SDK_PATH}")
101
+         endif()
36 102
 
37
-   if( NOT CMAKE_BUILD_TYPE STREQUAL "Release")
103
+         message( STATUS "TMP_SDK_RELEASE_PATH=${TMP_SDK_RELEASE_PATH}")
104
+         if( EXISTS "${TMP_SDK_RELEASE_PATH}/include")
105
+            message( STATUS "TMP_SDK_RELEASE_PATH=${TMP_SDK_RELEASE_PATH}/include exists")
106
+         else()
107
+            message( STATUS "TMP_SDK_RELEASE_PATH=${TMP_SDK_RELEASE_PATH}/include does not exist")
108
+         endif()
38 109
 
39
-      set( CMAKE_INCLUDE_PATH
40
-         "${DEPENDENCY_DIR}/${CMAKE_BUILD_TYPE}/include"
41
-         ${CMAKE_INCLUDE_PATH}
42
-      )
43
-      set( CMAKE_LIBRARY_PATH
44
-         "${DEPENDENCY_DIR}/${CMAKE_BUILD_TYPE}/lib"
45
-         ${CMAKE_LIBRARY_PATH}
46
-      )
47
-      set( CMAKE_FRAMEWORK_PATH
48
-         "${DEPENDENCY_DIR}/${CMAKE_BUILD_TYPE}/Frameworks"
49
-         ${CMAKE_FRAMEWORK_PATH}
50
-      )
110
+         if( EXISTS "${TMP_SDK_RELEASE_PATH}/include")
111
+            set( TMP_CMAKE_INCLUDE_PATH
112
+               ${TMP_CMAKE_INCLUDE_PATH}
113
+               "${TMP_SDK_RELEASE_PATH}/include"
114
+            )
115
+            set( TMP_INCLUDE_DIRS
116
+               ${TMP_INCLUDE_DIRS}
117
+               "${TMP_SDK_RELEASE_PATH}/include"
118
+            )
119
+         endif()
51 120
 
52
-      include_directories( BEFORE SYSTEM
53
-         ${DEPENDENCY_DIR}/${CMAKE_BUILD_TYPE}/include
54
-      )
55
-   else()
56
-      ### If you build DEBUG buildorder, but want RELEASE interspersed, so that
57
-      ### the debugger doesn't trace through too much fluff then set the
58
-      ### FALLBACK_BUILD_TYPE (for lack of a better name)
59
-
60
-      if( NOT FALLBACK_BUILD_TYPE)
61
-         set( FALLBACK_BUILD_TYPE "$ENV{MULLE_CONCURRENT_FALLBACK_BUILD_TYPE}")
62
-         if( NOT FALLBACK_BUILD_TYPE)
63
-            set( FALLBACK_BUILD_TYPE "$ENV{MULLE_OBJC_RUNTIME_FALLBACK_BUILD_TYPE}")
64
-            if( NOT FALLBACK_BUILD_TYPE)
65
-               set( FALLBACK_BUILD_TYPE "$ENV{FALLBACK_BUILD_TYPE}")
66
-            endif()
67
-            if( NOT FALLBACK_BUILD_TYPE)
68
-               set( FALLBACK_BUILD_TYPE "Debug")
69
-            endif()
121
+         if( EXISTS "${TMP_SDK_RELEASE_PATH}/lib")
122
+            set( TMP_CMAKE_LIBRARY_PATH
123
+               ${TMP_CMAKE_LIBRARY_PATH}
124
+               "${TMP_SDK_RELEASE_PATH}/lib"
125
+            )
126
+         endif()
127
+         if( EXISTS "${TMP_SDK_RELEASE_PATH}/Frameworks")
128
+            set( TMP_CMAKE_FRAMEWORK_PATH
129
+               "${TMP_SDK_RELEASE_PATH}/Frameworks"
130
+               ${TMP_CMAKE_FRAMEWORK_PATH}
131
+            )
70 132
          endif()
71
-      endif()
72 133
 
73
-      if( FALLBACK_BUILD_TYPE STREQUAL "Release")
74
-         unset( FALLBACK_BUILD_TYPE)
134
+         unset( TMP_SDK_RELEASE_PATH)
75 135
       endif()
136
+   endforeach()
76 137
 
77
-      if( FALLBACK_BUILD_TYPE)
78
-         set( CMAKE_INCLUDE_PATH
79
-            ${CMAKE_INCLUDE_PATH}
80
-            "${DEPENDENCY_DIR}/${FALLBACK_BUILD_TYPE}/include"
81
-         )
82
-         set( CMAKE_LIBRARY_PATH
83
-            ${CMAKE_LIBRARY_PATH}
84
-            "${DEPENDENCY_DIR}/${FALLBACK_BUILD_TYPE}/lib"
85
-         )
86
-         set( CMAKE_FRAMEWORK_PATH
87
-            ${CMAKE_FRAMEWORK_PATH}
88
-            "${DEPENDENCY_DIR}/${FALLBACK_BUILD_TYPE}/Frameworks"
89
-         )
90
-         message( STATUS "FALLBACK_BUILD_TYPE=\"${FALLBACK_BUILD_TYPE}\"" )
91
-      endif()
92
-   endif()
138
+   set( CMAKE_INCLUDE_PATH
139
+      ${TMP_CMAKE_INCLUDE_PATH}
140
+      ${CMAKE_INCLUDE_PATH}
141
+   )
142
+   set( CMAKE_LIBRARY_PATH
143
+      ${TMP_CMAKE_LIBRARY_PATH}
144
+      ${CMAKE_LIBRARY_PATH}
145
+   )
146
+   set( CMAKE_FRAMEWORK_PATH
147
+      ${TMP_CMAKE_FRAMEWORK_PATH}
148
+      ${CMAKE_FRAMEWORK_PATH}
149
+   )
150
+
151
+
152
+   message( STATUS "CMAKE_INCLUDE_PATH=\"${CMAKE_INCLUDE_PATH}\"" )
153
+   message( STATUS "CMAKE_LIBRARY_PATH=\"${CMAKE_LIBRARY_PATH}\"" )
154
+   message( STATUS "CMAKE_FRAMEWORK_PATH=\"${CMAKE_FRAMEWORK_PATH}\"" )
155
+   message( STATUS "INCLUDE_DIRS=\"${TMP_INCLUDE_DIRS}\"" )
93 156
 
94 157
 
95 158
    include_directories( BEFORE SYSTEM
96
-      ${DEPENDENCY_DIR}/include
97
-      ${ADDICTION_DIR}/include
159
+      ${TMP_INCLUDE_DIRS}
98 160
    )
99 161
 
100
-   # after release include
101
-   if( FALLBACK_BUILD_TYPE)
102
-      include_directories( BEFORE SYSTEM
103
-         ${DEPENDENCY_DIR}/${FALLBACK_BUILD_TYPE}/include
104
-      )
105
-   endif()
162
+   unset( TMP_INCLUDE_DIRS)
163
+   unset( TMP_CMAKE_INCLUDE_PATH)
164
+   unset( TMP_CMAKE_LIBRARY_PATH)
165
+   unset( TMP_CMAKE_FRAMEWORK_PATH)
106 166
 
167
+   #
168
+   #
107 169
    # include files that get installed
108 170
    set( CMAKE_INCLUDES
109 171
       "cmake/DependenciesAndLibraries.cmake"
... ...
@@ -123,7 +185,7 @@ if( NOT __ENVIRONMENT__CMAKE__)
123 185
    # Parallel build support. run all "participating" projects once for
124 186
    # HEADERS_PHASE in parallel.
125 187
    # Now run all "participating" projects for COMPILE_PHASE in parallel.
126
-   # Finally run all participating and non-participating projects in buildorder
188
+   # Finally run all participating and non-participating projects in craftorder
127 189
    # serially together with the LINK_PHASE. What is tricky is that the
128 190
    # sequential projects may need to run first.
129 191
    #
... ...
@@ -89,9 +89,4 @@ the sourcetree and inherited sourcetrees.
89 89
 
90 90
    include( PostExecutable OPTIONAL)
91 91
 
92
-
93
-   ### Install
94
-
95
-   install( TARGETS ${INSTALL_EXECUTABLE_TARGETS} DESTINATION "bin")
96
-
97 92
 endif()
... ...
@@ -8,17 +8,14 @@ include( StartupC)
8 8
 
9 9
 include( ExecutableAuxC OPTIONAL)
10 10
 
11
-if( ALL_LOAD_DEPENDENCY_LIBRARIES)
12
-   CreateForceAllLoadList( ALL_LOAD_DEPENDENCY_LIBRARIES FORCE_ALL_LOAD_DEPENDENCY_LIBRARIES)
13
-
14
-   if( NOT EXECUTABLE_LIBRARY_LIST)
15
-      set( EXECUTABLE_LIBRARY_LIST
16
-         ${FORCE_ALL_LOAD_DEPENDENCY_LIBRARIES}
17
-         ${DEPENDENCY_LIBRARIES}
18
-         ${OPTIONAL_DEPENDENCY_LIBRARIES}
19
-         ${OS_SPECIFIC_LIBRARIES}
20
-         ${STARTUP_LIBRARY}
21
-      )
22
-   endif()
11
+CreateForceAllLoadList( ALL_LOAD_DEPENDENCY_LIBRARIES FORCE_ALL_LOAD_DEPENDENCY_LIBRARIES)
23 12
 
13
+if( NOT EXECUTABLE_LIBRARY_LIST)
14
+   set( EXECUTABLE_LIBRARY_LIST
15
+      ${FORCE_ALL_LOAD_DEPENDENCY_LIBRARIES}
16
+      ${DEPENDENCY_LIBRARIES}
17
+      ${OPTIONAL_DEPENDENCY_LIBRARIES}
18
+      ${OS_SPECIFIC_LIBRARIES}
19
+      ${STARTUP_LIBRARY}
20
+   )
24 21
 endif()
... ...
@@ -11,6 +11,7 @@ if( NOT __FINAL_OUTPUT_C_CMAKE__)
11 11
    message( STATUS "CMAKE_MODULE_PATH is ${CMAKE_MODULE_PATH}")
12 12
    message( STATUS "CMAKE_BUILD_TYPE is ${CMAKE_BUILD_TYPE}")
13 13
    message( STATUS "CMAKE_SYSTEM_NAME is ${CMAKE_SYSTEM_NAME}")
14
+   message( STATUS "BUILD_SHARED_LIBS is ${BUILD_SHARED_LIBS}")
14 15
 
15 16
    if( APPLE)
16 17
       message( STATUS "CMAKE_OSX_SYSROOT is ${CMAKE_OSX_SYSROOT}")
... ...
@@ -87,6 +87,22 @@ if( LINK_PHASE)
87 87
    message( STATUS "PRIVATE_HEADERS=${PRIVATE_HEADERS}")
88 88
    message( STATUS "PROJECT_INSTALLABLE_HEADERS=${PROJECT_INSTALLABLE_HEADERS}")
89 89
 
90
+   #
91
+   # allow forward definitions in shared library
92
+   #
93
+   option( SHARED_UNRESOLVED_SYMBOLS "Shared libraries may have unresolved symbols" ON)
94
+
95
+   if( SHARED_UNRESOLVED_SYMBOLS)
96
+      if( APPLE)
97
+         get_target_property( TMP_LIBRARY_TYPE "${LIBRARY_NAME}" TYPE)
98
+         if( TMP_LIBRARY_TYPE STREQUAL "SHARED_LIBRARY")
99
+            target_link_libraries( "${LIBRARY_NAME}"
100
+            "-undefined dynamic_lookup"
101
+         )
102
+         endif()
103
+      endif()
104
+   endif()
105
+
90 106
    include( LibraryAux OPTIONAL)
91 107
 
92 108
    if( BUILD_SHARED_LIBS)
... ...
@@ -45,6 +45,14 @@ if( STANDALONE)
45 45
       )
46 46
    endif()
47 47
 
48
+   #
49
+   # for example take out the mulle-allocator library from the standalone
50
+   # so that the test library can add mulle-testallocator
51
+   #
52
+   if( STANDALONE_EXCLUDE_LIBRARIES)
53
+      list( REMOVE_ITEM STANDALONE_ALL_LOAD_LIBRARIES ${STANDALONE_EXCLUDE_LIBRARIES})
54
+   endif()
55
+
48 56
    # STARTUP_LIBRARY is supposed to be a find_library definition
49 57
    if( NOT STANDALONE_STARTUP_LIBRARY)
50 58
       set( STANDALONE_STARTUP_LIBRARY ${STARTUP_LIBRARY})
... ...
@@ -173,5 +181,8 @@ and everybody will be happy")
173 181
       )
174 182
 
175 183
       message( STATUS "STANDALONE_LIBRARY_NAME is ${STANDALONE_LIBRARY_NAME}")
184
+      message( STATUS "STANDALONE_ALL_LOAD_LIBRARIES is ${STANDALONE_ALL_LOAD_LIBRARIES}")
185
+      message( STATUS "FORCE_STANDALONE_ALL_LOAD_LIBRARIES is ${FORCE_STANDALONE_ALL_LOAD_LIBRARIES}")
186
+      message( STATUS "OS_SPECIFIC_LIBRARIES is ${OS_SPECIFIC_LIBRARIES}")
176 187
    endif()
177 188
 endif()
... ...
@@ -1,5 +1,2 @@
1
-mulle-testallocator;tar;no-all-load,no-import,no-singlephase,no-static-link,only-os-darwin;EFA28AE8-FC43-456F-B56F-281623FCE0EF;${MULLE_TESTALLOCATOR_URL:-https://github.com/mulle-core/mulle-testallocator/archive/${MULLE_TESTALLOCATOR_BRANCH:-latest}.tar.gz};;;;
2
-mulle-concurrent;tar;no-all-load,no-import,only-standalone;3EA9AD1D-4EC4-433F-A960-4D865BA3B131;${MULLE_CONCURRENT_URL:-https://github.com/mulle-concurrent/mulle-concurrent/archive/${MULLE_CONCURRENT_BRANCH:-latest}.tar.gz};;;;
3
-mulle-testallocator#1;tar;no-import,no-os-darwin,no-singlephase,no-static-link;452D58F1-4B99-4BC8-9534-BCD1CE552B9D;${MULLE_TESTALLOCATOR_URL:-https://github.com/mulle-core/mulle-testallocator/archive/${MULLE_TESTALLOCATOR_BRANCH:-latest}.tar.gz};;;;
4
-mulle-allocator;tar;no-all-load,no-import,no-singlephase,no-static-link;8C48C359-BB9B-4585-B87F-BF9DE8D0BE1E;${MULLE_ALLOCATOR_URL:-https://github.com/mulle-c/mulle-allocator/archive/${MULLE_ALLOCATOR_BRANCH:-latest}.tar.gz};;;;
5
-mulle-stacktrace;tar;no-all-load,no-import,no-singlephase;0A7E5B74-24C8-4AD4-AFFC-23AD51B0997F;${MULLE_STACKTRACE_URL:-https://github.com/mulle-core/mulle-stacktrace/archive/${MULLE_STACKTRACE_BRANCH:-latest}.tar.gz};;;;
1
+mulle-concurrent;tar;no-all-load,no-import;3EA9AD1D-4EC4-433F-A960-4D865BA3B131;${MULLE_CONCURRENT_URL:-https://github.com/mulle-concurrent/mulle-concurrent/archive/${MULLE_CONCURRENT_BRANCH:-latest}.tar.gz};;;;
2
+mulle-testallocator;tar;no-all-load,no-import,no-singlephase;EFA28AE8-FC43-456F-B56F-281623FCE0EF;${MULLE_TESTALLOCATOR_URL:-https://github.com/mulle-core/mulle-testallocator/archive/${MULLE_TESTALLOCATOR_BRANCH:-latest}.tar.gz};;;;
... ...
@@ -37,4 +37,4 @@ export ADDICTION_DIR="${MULLE_VIRTUAL_ROOT}/addiction"
37 37
 #
38 38
 # Use common build directory
39 39
 #
40
-export BUILD_DIR="${MULLE_VIRTUAL_ROOT}/build"
40
+export KITCHEN_DIR="${MULLE_VIRTUAL_ROOT}/kitchen"
... ...
@@ -23,7 +23,7 @@ then
23 23
    MULLE_HOSTNAME="`PATH=/bin:/usr/bin:/sbin:/usr/sbin hostname -s`"
24 24
    if [ "${MULLE_HOSTNAME:0:1}" = '.' ]
25 25
    then
26
-      MULLE_HOSTNAME="_walitza"
26
+      MULLE_HOSTNAME="_terodde"
27 27
    fi
28 28
    export MULLE_HOSTNAME
29 29
 fi
... ...
@@ -78,8 +78,7 @@ case "${MULLE_SHELL_MODE}" in
78 78
       # source in any bash completion files
79 79
       #
80 80
       DEFAULT_IFS="${IFS}"
81
-      shopt -s nullglob; IFS="
82
-"
81
+      shopt -s nullglob; IFS=$'\n'
83 82
       for FILENAME in "${MULLE_VIRTUAL_ROOT}/.mulle/share/env/libexec"/*-bash-completion.sh
84 83
       do
85 84
          . "${FILENAME}"
... ...
@@ -120,7 +119,7 @@ case "${MULLE_SHELL_MODE}" in
120 119
    *INTERACTIVE*)
121 120
       if [ -z "" ]
122 121
       then
123
-         alias buildorder="mulle-sde buildorder"
122
+         alias craftorder="mulle-sde craftorder"
124 123
          alias clean="mulle-sde clean"
125 124
          alias craft="mulle-sde craft"
126 125
          alias dependency="mulle-sde dependency"
... ...
@@ -137,5 +136,18 @@ case "${MULLE_SHELL_MODE}" in
137 136
          alias subproject="mulle-sde subproject"
138 137
          alias update="mulle-sde update"
139 138
       fi
139
+
140
+      if [ -z "" ]
141
+      then
142
+         alias c="mulle-sde craft"
143
+         alias C="mulle-sde clean; mulle-sde craft"
144
+         alias CC="mulle-sde clean all; mulle-sde craft"
145
+         alias t="mulle-sde test rerun --serial"
146
+         alias tt="mulle-sde test craft ; mulle-sde test rerun --serial"
147
+         alias T="mulle-sde test craft ; mulle-sde test"
148
+         alias TT="mulle-sde test clean ; mulle-sde test"
149
+         alias u="mulle-sde update"
150
+         alias l="mulle-sde list"
151
+      fi
140 152
    ;;
141 153
 esac
142 154
new file mode 100644
... ...
@@ -0,0 +1,67 @@
1
+
2
+awk
3
+base64
4
+basename
5
+bash
6
+cat
7
+chgrp
8
+chmod
9
+chown
10
+clear
11
+cp
12
+cut
13
+date
14
+dd
15
+df
16
+dirname
17
+dmesg
18
+echo
19
+ed;optional
20
+egrep
21
+emacs;optional
22
+env
23
+expr
24
+false
25
+fgrep
26
+find
27
+grep
28
+head
29
+hostname
30
+kill
31
+less
32
+ln
33
+login
34
+ls
35
+mkdir
36
+mknod
37
+more
38
+mount
39
+mudo
40
+mv
41
+nano;optional
42
+ps
43
+pwd
44
+readlink
45
+rm
46
+rmdir
47
+sed
48
+sh
49
+sleep
50
+sort
51
+stat
52
+stty
53
+su
54
+sync
55
+tail
56
+tee
57
+test
58
+touch
59
+tr
60
+true
61
+umount
62
+uname
63
+uuidgen
64
+vi;optional
65
+wc
66
+which
67
+xargs;optional
... ...
@@ -1,4 +1,6 @@
1 1
 
2
+autoconf;optional
3
+autoreconf;optional
2 4
 awk
3 5
 base64
4 6
 basename
... ...
@@ -8,7 +10,9 @@ chgrp
8 10
 chmod
9 11
 chown
10 12
 clear
13
+column;optional
11 14
 cp
15
+curl;optional
12 16
 cut
13 17
 date
14 18
 dd
... ...
@@ -32,6 +36,7 @@ less
32 36
 ln
33 37
 login
34 38
 ls
39
+make;optional
35 40
 mkdir
36 41
 mknod
37 42
 more
... ...
@@ -39,6 +44,7 @@ mount
39 44
 mudo
40 45
 mv
41 46
 nano;optional
47
+ninja;optional
42 48
 ps
43 49
 pwd
44 50
 readlink
... ...
@@ -51,6 +57,7 @@ sort
51 57
 stat
52 58
 stty
53 59
 su
60
+sw_vers;optional
54 61
 sync
55 62
 tail
56 63
 tee
... ...
@@ -63,5 +70,8 @@ uname
63 70
 uuidgen
64 71
 vi;optional
65 72
 wc
73
+wget;optional
66 74
 which
67 75
 xargs;optional
76
+xcodebuild;optional
77
+xcrun;optional
... ...
@@ -1 +1 @@
1
-2.2.3
1
+2.3.0