Ticket #57669: dylib.patch
File dylib.patch, 5.0 KB (added by ryandesign (Ryan Carsten Schmidt), 6 years ago) |
---|
-
config/darwin.mk
Teach the configurator how to build a macOS dynamic library and link everything with it instead of the static library.
old new 1 1 ######################################################### 2 # Linux#2 # macOS # 3 3 ######################################################### 4 4 OBJEXT=.o 5 SHAREDLIBEXT=.dylib 6 SHAREDLIBFLAGS=-dynamiclib -install_name $(PREFIX)/lib/$(notdir $@) 5 7 LIBEXT=.a 6 8 EXEEXT= 7 9 F2CEXT=.c -
configurator/taucs_config.c
old new 132 132 if (flags & hsource ) return ".h"; 133 133 if (flags & csource ) return ".c"; 134 134 if (flags & cilksource) return ".c"; 135 if (flags & sharedlib ) return "$(SHAREDLIBEXT)"; 135 136 if (flags & lib ) return "$(LIBEXT)"; 136 137 if (flags & executable) return "$(EXEEXT)"; 137 138 … … 558 559 559 560 fprintf(f, "%s: $(%s_content) $(STDDEPS)\n",get_full_name(i,0),base); 560 561 fprintf(f,"\t- $(RM) %s\n",get_full_name(i,0)); 562 if ( (files[i].flags & sharedlib) ) { 563 fprintf(f,"\t$(FC) $(FCFLAGS) $(COUTFLG)%s $(%s_content) $(SHAREDLIBFLAGS) $(LDFLAGS) $(LIBS)\n",get_full_name(i,0),base); 564 } else { 561 565 fprintf(f,"\t$(AR) $(AOUTFLG)%s $(%s_content)\n",get_full_name(i,0),base); 562 566 fprintf(f,"\t$(RANLIB) %s\n",get_full_name(i,0)); 567 } 563 568 } 564 569 565 570 if ( (files[i].flags & executable) ) { -
configurator/taucs_structure.h
old new 67 67 dcomplex = 2048, 68 68 scomplex = 4096, 69 69 dreal = 8192, 70 sreal = 16384 70 sreal = 16384, 71 72 sharedlib = 32768 71 73 }; 72 74 73 75 int source_types = csource | fcsource | cilksource; … … 151 158 "taucs_ccs_ops", 152 159 0 153 160 }, 154 "libtaucs ",161 "libtaucs.1", 155 162 { "LIBLAPACK", "LIBBLAS", 0 } 156 163 }, 157 164 … … 161 168 "readhb", 162 169 0 163 170 }, 164 "libtaucs ",171 "libtaucs.1", 165 172 { 0 } 166 173 }, 167 174 … … 172 179 173 180 { "AMD" , include, 0, { "ORDERING", 0 }, 174 181 { "amdatr","amdbar","amdexa","amdhaf","amdhat","amdpre","amdtru", 0 }, 175 "libtaucs ", { 0 }182 "libtaucs.1", { 0 } 176 183 }, 177 184 178 185 { "COLAMD" , include, 0, { "ORDERING", 0 }, 179 186 { "colamd", 0 }, 180 "libtaucs ", { 0 }187 "libtaucs.1", { 0 } 181 188 }, 182 189 183 190 { "GENMMD" , include, 0, { "ORDERING", 0 }, 184 191 { "genmmd", 0 }, 185 "libtaucs ", { 0 }192 "libtaucs.1", { 0 } 186 193 }, 187 194 188 195 { "ORDERING", include, 0 , { "BASE", 0 }, … … 190 197 "taucs_ccs_order", 191 198 0 192 199 }, 193 "libtaucs ",200 "libtaucs.1", 194 201 { 0 } 195 202 }, 196 203 … … 199 206 "taucs_linsolve", 200 207 0 201 208 }, 202 "libtaucs ",209 "libtaucs.1", 203 210 { 0 } 204 211 }, 205 212 … … 208 215 "taucs_sn_llt", 209 216 0 210 217 }, 211 "libtaucs ",218 "libtaucs.1", 212 219 { 0 } 213 220 }, 214 221 215 222 { "OOC_LLT" , include, 0, { "BASE", "ADVANCED_MEMORY_OPS", 0 }, 216 223 { "taucs_ccs_ooc_llt", "taucs_ooc_io", 0 }, 217 "libtaucs ", { 0 }224 "libtaucs.1", { 0 } 218 225 }, 219 226 220 227 { "OOC_LU" , include, 0, { "BASE", "ADVANCED_MEMORY_OPS", 0 }, 221 228 { "taucs_ccs_ooc_lu", "taucs_ooc_io", 0 }, 222 "libtaucs ", { 0 }229 "libtaucs.1", { 0 } 223 230 }, 224 231 225 232 { "ADVANCED_MEMORY_OPS", include, 0 , { "BASE", 0 }, … … 227 234 "taucs_memory", 228 235 0 229 236 }, 230 "libtaucs ",237 "libtaucs.1", 231 238 { 0 } 232 239 }, 233 240 234 241 { "VAIDYA", include, 0, { "BASE", 0 }, 235 242 { "taucs_vaidya", "taucs_iter", 0 }, 236 "libtaucs ", { 0 }243 "libtaucs.1", { 0 } 237 244 }, 238 245 239 246 { "REC_VAIDYA", include, 0, { "BASE", 0 }, 240 247 { "taucs_recvaidya", "taucs_iter" ,0 }, 241 "libtaucs ", { 0 }248 "libtaucs.1", { 0 } 242 249 }, 243 250 244 251 { "GREMBAN" , include, 0, { "BASE", 0 }, 245 252 { "taucs_gremban", "taucs_iter" ,0 }, 246 "libtaucs ", { 0 }253 "libtaucs.1", { 0 } 247 254 }, 248 255 249 256 { "INCOMPLETE_CHOL", include, 0 , { "BASE", 0 }, … … 252 259 "taucs_ccs_solve_llt", 253 260 0 254 261 }, 255 "libtaucs ",262 "libtaucs.1", 256 263 { 0 } 257 264 }, 258 265 259 266 { "ITER" , include, 0, { "BASE", 0 }, 260 267 { "taucs_iter", 0 }, 261 "libtaucs ", { 0 }268 "libtaucs.1", { 0 } 262 269 }, 263 270 264 271 { "INVERSE_FACTOR" , include, 0, { "BASE", 0 }, 265 272 { "taucs_ccs_xxt", 0 }, 266 "libtaucs ", { 0 }273 "libtaucs.1", { 0 } 267 274 }, 268 275 269 276 { "TESTING_PROGRAMS" , include, 0, { "TEST_DIRECT", "TEST_ITER", "TEST_MEMORY", 0 }, … … 290 297 "taucs_ccs_generators", 291 298 0 292 299 }, 293 "libtaucs ", { 0 }300 "libtaucs.1", { 0 } 294 301 }, 295 302 296 303 { "MALLOC_STUBS" , include, 0, { "BASE", 0 }, … … 298 305 "taucs_malloc", 299 306 0 300 307 }, 301 "libtaucs ", { 0 }308 "libtaucs.1", { 0 } 302 309 }, 303 310 304 311 { "AD_HOC_TEST" , exclude, 0, { "BASE", 0 }, /* this is for ad-hoc testing */ … … 366 373 { "memory_test" , "DIRPROGS", csource }, 367 374 368 375 { "libtaucs" , "DIRLIB", lib }, 376 { "libtaucs.1" , "DIRLIB", sharedlib | lib }, 369 377 370 378 { "direct" , "DIREXE", executable }, 371 379 { "taucs_run" , "DIREXE", executable },