1AUTOMAKE_OPTIONS = subdir-objects 2 3AM_CFLAGS = $(RNA_CFLAGS) $(PTHREAD_CFLAGS) 4AM_CXXFLAGS = $(RNA_CXXFLAGS) $(PTHREAD_CFLAGS) 5AM_CPPFLAGS = $(RNA_CPPFLAGS) ${SVM_INC} -I$(top_srcdir)/src ${JSON_INC} 6AM_LDFLAGS = $(RNA_LDFLAGS) $(PTHREAD_LIBS) 7 8SUBDIRS = static 9 10vrna_constraintsdir = $(pkgincludedir)/constraints 11vrna_paramsdir = $(pkgincludedir)/params 12vrna_utilsdir = $(pkgincludedir)/utils 13vrna_iodir = $(pkgincludedir)/io 14vrna_searchdir = $(pkgincludedir)/search 15vrna_plottingdir = $(pkgincludedir)/plotting 16vrna_puzzlerdir = $(pkgincludedir)/plotting/RNApuzzler 17vrna_loopsdir = $(pkgincludedir)/loops 18vrna_datastructuresdir = $(pkgincludedir)/datastructures 19vrna_landscapedir = $(pkgincludedir)/landscape 20 21# the library names to build 22lib_LTLIBRARIES = libRNA.la 23 24# convenience library 25noinst_LTLIBRARIES = libRNA_conv.la \ 26 libRNA_constraints.la \ 27 libRNA_datastructures.la \ 28 libRNA_utils.la \ 29 libRNA_plotting.la \ 30 libRNA_params.la \ 31 libRNA_loops.la \ 32 libRNA_eval.la \ 33 libRNA_landscape.la \ 34 libRNA_special_const.la 35 36# where to install the headers on the system 37libRNA_ladir = $(includedir)/ViennaRNA 38libRNA_la_SOURCES = 39 40# ldflags to avoid version information 41libRNA_la_LIBADD = libRNA_conv.la 42libRNA_la_LDFLAGS = -avoid-version -static $(LTO_LDFLAGS) $(PTHREAD_LIBS) 43 44libRNA_conv_la_LIBADD = \ 45 libRNA_constraints.la \ 46 libRNA_datastructures.la \ 47 libRNA_utils.la \ 48 libRNA_plotting.la \ 49 libRNA_params.la \ 50 libRNA_eval.la \ 51 libRNA_loops.la \ 52 libRNA_landscape.la 53 54 55if VRNA_AM_SWITCH_SIMD_SSE41 56noinst_LTLIBRARIES += libRNA_utils_sse41.la 57libRNA_conv_la_LIBADD += libRNA_utils_sse41.la 58libRNA_utils_sse41_la_CFLAGS = $(SIMD_SSE41_FLAGS) 59endif 60 61if VRNA_AM_SWITCH_SIMD_AVX512 62noinst_LTLIBRARIES += libRNA_utils_avx512.la 63libRNA_conv_la_LIBADD += libRNA_utils_avx512.la 64libRNA_utils_avx512_la_CFLAGS = $(SIMD_AVX512_FLAGS) 65endif 66 67# Dummy C++ source to cause C++ linking. 68if VRNA_AM_SWITCH_SVM 69nodist_EXTRA_libRNA_la_SOURCES = dummy.cxx 70else 71nodist_EXTRA_libRNA_la_SOURCES = 72endif 73 74if VRNA_AM_SWITCH_SVM 75 SVM_SRC = ../@LIBSVM_DIR@/svm.cpp 76 SVM_INC = -I$(top_srcdir)/src/@LIBSVM_DIR@ 77 SVM_H = ../@LIBSVM_DIR@/svm.h 78 SVM_UTILS = utils/svm_utils.c 79 SVM_UTILS_H = utils/svm.h 80 SVM_UTILS_H_OLD = svm_utils.h 81endif 82 83if VRNA_AM_SWITCH_JSON 84 JSON_SRC = ../json/json.c 85 JSON_H = ../json/json.h 86 JSON_INC = -I$(top_srcdir)/src/json 87endif 88 89pkginclude_HEADERS = \ 90 pair_mat.h \ 91 RNAstruct.h \ 92 dist_vars.h \ 93 mfe.h \ 94 mfe_window.h \ 95 fold.h \ 96 part_func.h \ 97 part_func_window.h \ 98 stringdist.h \ 99 edit_cost.h \ 100 fold_vars.h \ 101 profiledist.h \ 102 treedist.h \ 103 inverse.h \ 104 subopt.h \ 105 cofold.h \ 106 duplex.h \ 107 alifold.h \ 108 part_func_co.h \ 109 concentrations.h \ 110 ProfileAln.h \ 111 LPfold.h \ 112 Lfold.h \ 113 part_func_up.h \ 114 ribo.h \ 115 findpath.h \ 116 data_structures.h \ 117 char_stream.h \ 118 stream_output.h \ 119 fold_compound.h \ 120 MEA.h \ 121 mm.h \ 122 loop_energies.h \ 123 exterior_loops.h \ 124 hairpin_loops.h \ 125 interior_loops.h \ 126 multibranch_loops.h \ 127 2Dfold.h \ 128 2Dpfold.h \ 129 PKplex.h\ 130 pk_plex.h\ 131 ali_plex.h \ 132 plex.h \ 133 snofold.h \ 134 snoop.h \ 135 move_set.h\ 136 gquad.h \ 137 constraints.h \ 138 eval.h \ 139 perturbation_fold.h \ 140 centroid.h\ 141 utils.h \ 142 structure_utils.h \ 143 string_utils.h \ 144 aln_util.h \ 145 model.h \ 146 dp_matrices.h \ 147 PS_dot.h \ 148 plot_structure.h \ 149 plot_aln.h \ 150 plot_utils.h \ 151 plot_layouts.h \ 152 naview.h \ 153 boltzmann_sampling.h \ 154 equilibrium_probs.h \ 155 constraints_ligand.h \ 156 constraints_SHAPE.h \ 157 constraints_hard.h \ 158 constraints_soft.h \ 159 alphabet.h \ 160 sequence.h \ 161 grammar.h \ 162 structured_domains.h \ 163 unstructured_domains.h \ 164 file_utils.h \ 165 file_formats.h \ 166 file_formats_msa.h \ 167 energy_par.h \ 168 energy_const.h \ 169 params.h \ 170 read_epars.h \ 171 convert_epars.h \ 172 commands.h \ 173 units.h \ 174 combinatorics.h \ 175 neighbor.h \ 176 walk.h \ 177 heat_capacity.h \ 178 ${SVM_UTILS_H_OLD} \ 179 ${SVM_H} \ 180 ${JSON_H} 181 182if VRNA_AM_SWITCH_SVM 183pkginclude_HEADERS += zscore.h 184endif 185 186vrna_constraints_HEADERS = \ 187 constraints/basic.h \ 188 constraints/ligand.h \ 189 constraints/SHAPE.h \ 190 constraints/hard.h \ 191 constraints/soft.h 192 193 194vrna_loops_HEADERS = \ 195 loops/all.h \ 196 loops/external.h \ 197 loops/hairpin.h \ 198 loops/internal.h \ 199 loops/multibranch.h 200 201 202vrna_utils_HEADERS = \ 203 utils/basic.h \ 204 utils/strings.h \ 205 utils/structures.h \ 206 utils/alignments.h \ 207 utils/higher_order_functions.h \ 208 utils/cpu.h \ 209 utils/units.h \ 210 ${SVM_UTILS_H} 211 212 213vrna_search_HEADERS = \ 214 search/BoyerMoore.h 215 216 217vrna_plotting_HEADERS = \ 218 plotting/alignments.h \ 219 plotting/layouts.h \ 220 plotting/probabilities.h \ 221 plotting/structures.h \ 222 plotting/utils.h \ 223 plotting/naview.h 224 225vrna_puzzler_HEADERS = \ 226 plotting/RNApuzzler/RNApuzzler.h \ 227 plotting/RNApuzzler/RNAturtle.h 228 229 230vrna_io_HEADERS = \ 231 io/utils.h \ 232 io/file_formats.h \ 233 io/file_formats_msa.h 234 235 236vrna_params_HEADERS = \ 237 params/default.h \ 238 params/constants.h \ 239 params/basic.h \ 240 params/io.h \ 241 params/convert.h 242 243 244vrna_datastructures_HEADERS = \ 245 datastructures/basic.h \ 246 datastructures/lists.h \ 247 datastructures/char_stream.h \ 248 datastructures/stream_output.h \ 249 datastructures/hash_tables.h \ 250 datastructures/heap.h 251 252 253vrna_landscape_HEADERS = \ 254 landscape/paths.h \ 255 landscape/findpath.h \ 256 landscape/neighbor.h \ 257 landscape/walk.h \ 258 landscape/move.h 259 260 261libRNA_conv_la_SOURCES = \ 262 fold_compound.c \ 263 dist_vars.c \ 264 part_func.c \ 265 part_func_wrappers.c \ 266 pf_fold.c \ 267 treedist.c \ 268 inverse.c \ 269 ProfileDist.c \ 270 RNAstruct.c \ 271 mfe.c \ 272 mfe_window.c \ 273 mfe_wrappers.c \ 274 mfe_window_wrappers.c \ 275 fold.c \ 276 stringdist.c \ 277 subopt.c \ 278 Lfold.c \ 279 cofold.c \ 280 part_func_co.c \ 281 concentrations.c \ 282 ProfileAln.c \ 283 duplex.c \ 284 alifold.c \ 285 alipfold.c \ 286 LPfold.c \ 287 part_func_up.c \ 288 ribo.c \ 289 MEA.c \ 290 mm.c \ 291 2Dfold.c \ 292 2Dpfold.c \ 293 plex_functions.c \ 294 ali_plex.c \ 295 c_plex.c \ 296 plex.c \ 297 snofold.c \ 298 snoop.c \ 299 gquad.c \ 300 perturbation_fold.c \ 301 centroid.c \ 302 model.c \ 303 dp_matrices.c \ 304 boltzmann_sampling.c \ 305 bs_wrappers.c \ 306 equilibrium_probs.c \ 307 ${SVM_SRC} \ 308 ${JSON_SRC} \ 309 alphabet.c \ 310 sequence.c \ 311 unstructured_domains.c \ 312 grammar.c \ 313 heat_capacity.c 314 315if VRNA_AM_SWITCH_SVM 316libRNA_conv_la_SOURCES += zscore.c 317endif 318 319libRNA_eval_la_SOURCES = \ 320 eval.c \ 321 eval_wrappers.c 322 323libRNA_constraints_la_SOURCES = \ 324 constraints/constraints.c \ 325 constraints/SHAPE.c \ 326 constraints/hard.c \ 327 constraints/soft.c \ 328 constraints/ligand.c 329 330libRNA_utils_la_SOURCES = \ 331 utils/utils.c \ 332 utils/string_utils.c \ 333 utils/structure_utils.c \ 334 utils/structure_tree.c \ 335 utils/msa_utils.c \ 336 utils/higher_order_functions.c \ 337 utils/cpu.c \ 338 utils/units.c \ 339 io/io_utils.c \ 340 io/file_formats.c \ 341 io/file_formats_msa.c \ 342 search/BoyerMoore.c \ 343 commands.c \ 344 combinatorics.c \ 345 ${SVM_UTILS} 346 347if VRNA_AM_SWITCH_SIMD_SSE41 348libRNA_utils_sse41_la_SOURCES = \ 349 utils/higher_order_functions_sse41.c 350endif 351 352if VRNA_AM_SWITCH_SIMD_AVX512 353libRNA_utils_avx512_la_SOURCES = \ 354 utils/higher_order_functions_avx512.c 355endif 356 357libRNA_plotting_la_SOURCES = \ 358 plotting/alignments.c \ 359 plotting/layouts.c \ 360 plotting/probabilities.c \ 361 plotting/structures.c \ 362 plotting/plot_utils.c \ 363 plotting/naview.c \ 364 plotting/RNApuzzler/RNApuzzler.c \ 365 plotting/RNApuzzler/RNAturtle.c 366 367libRNA_loops_la_SOURCES = \ 368 loops/external.c \ 369 loops/external_bt.c \ 370 loops/external_pf.c \ 371 loops/hairpin.c \ 372 loops/hairpin_bt.c \ 373 loops/hairpin_pf.c \ 374 loops/internal.c \ 375 loops/internal_bt.c \ 376 loops/internal_pf.c \ 377 loops/multibranch.c \ 378 loops/multibranch_bt.c \ 379 loops/multibranch_pf.c 380 381libRNA_params_la_SOURCES = \ 382 params/io.c \ 383 params/default.c \ 384 params/params.c \ 385 params/convert.c 386 387libRNA_datastructures_la_SOURCES = \ 388 datastructures/basic_datastructures.c \ 389 datastructures/lists.c \ 390 datastructures/char_stream.c \ 391 datastructures/stream_output.c \ 392 datastructures/hash_tables.c \ 393 datastructures/heap.c 394 395libRNA_landscape_la_SOURCES = \ 396 move_set.c \ 397 landscape/move.c \ 398 landscape/findpath.c \ 399 landscape/neighbor.c \ 400 landscape/walk.c 401 402libRNA_special_const_la_SOURCES = \ 403 special_const.c \ 404 ugly_bt.c 405 406RNAPUZZLER_H = \ 407 plotting/RNApuzzler/headers/AABB_struct.h \ 408 plotting/RNApuzzler/headers/boundingBoxes_struct.h \ 409 plotting/RNApuzzler/headers/configArc_struct.h \ 410 plotting/RNApuzzler/headers/config_struct.h \ 411 plotting/RNApuzzler/headers/configtree_struct.h \ 412 plotting/RNApuzzler/headers/tBaseInformation_struct.h 413 414RNAPUZZLER_INC = \ 415 plotting/RNApuzzler/includes/coordinates.inc \ 416 plotting/RNApuzzler/includes/definitions.inc \ 417 plotting/RNApuzzler/includes/vector_math.inc \ 418 plotting/RNApuzzler/includes/boundingBoxes.inc \ 419 plotting/RNApuzzler/includes/configtree.inc \ 420 plotting/RNApuzzler/includes/drawingconfig.inc \ 421 plotting/RNApuzzler/includes/intersectLevelBoundingBoxes.inc \ 422 plotting/RNApuzzler/includes/intersectLevelLines.inc \ 423 plotting/RNApuzzler/includes/intersectLevelTreeNodes.inc \ 424 plotting/RNApuzzler/includes/postscriptArcs.inc \ 425 plotting/RNApuzzler/includes/boundingWedge.inc \ 426 plotting/RNApuzzler/includes/calcDeltas.inc \ 427 plotting/RNApuzzler/includes/handleAncestorIntersections.inc \ 428 plotting/RNApuzzler/includes/handleConfigChanges.inc \ 429 plotting/RNApuzzler/includes/handleSiblingIntersections.inc \ 430 plotting/RNApuzzler/includes/intersectionType.inc \ 431 plotting/RNApuzzler/includes/optimize.inc \ 432 plotting/RNApuzzler/includes/resolveExteriorChildIntersections.inc \ 433 plotting/RNApuzzler/includes/resolveIntersections.inc \ 434 plotting/RNApuzzler/includes/rotationAngle.inc \ 435 plotting/RNApuzzler/includes/svgArcs.inc 436 437# static library for subpackages 438all-local: libRNA.a 439 440libRNA.a: libRNA.la 441 $(AM_V_GEN)( \ 442 $(LIBTOOL) --config > libtoolconfig.tmp && \ 443 ( \. ./libtoolconfig.tmp; cp "$$objdir/libRNA.a" ./ ) && \ 444 rm -f libtoolconfig.tmp \ 445 ) 446 447clean-local: 448 -rm -f libRNA.a 449 450noinst_HEADERS = params/intl11.h \ 451 params/intl11dH.h \ 452 params/intl21.h \ 453 params/intl21dH.h \ 454 params/intl22.h \ 455 params/intl22dH.h \ 456 params/1.8.4_epars.h \ 457 params/1.8.4_intloops.h \ 458 ${RNAPUZZLER_H} \ 459 list.h \ 460 ${SVM_H} \ 461 ${JSON_H}\ 462 special_const.h \ 463 ugly_bt.h 464 465nodist_pkginclude_HEADERS = vrna_config.h 466 467EXTRA_DIST = $(pkginclude_HEADERS) \ 468 constraints/hc_depot.inc \ 469 loops/external_hc.inc \ 470 loops/external_sc.inc \ 471 loops/external_sc_pf.inc \ 472 loops/hairpin_hc.inc \ 473 loops/hairpin_sc.inc \ 474 loops/hairpin_sc_pf.inc \ 475 loops/internal_hc.inc \ 476 loops/internal_sc.inc \ 477 loops/internal_sc_pf.inc \ 478 loops/multibranch_hc.inc \ 479 loops/multibranch_sc.inc \ 480 loops/multibranch_sc_pf.inc \ 481 params/svm_model_avg.inc \ 482 params/svm_model_sd.inc \ 483 data_structures_nonred.inc \ 484 plotting/ps_helpers.inc \ 485 plotting/svg_helpers.inc \ 486 ${RNAPUZZLER_INC} \ 487 landscape/local_neighbors.inc \ 488 ${SVM_H} \ 489 ${JSON_H} \ 490 color_output.inc \ 491 special_const.h \ 492 ugly_bt.h 493 494if VRNA_AM_SWITCH_SVM 495EXTRA_DIST += zscore_dat.inc 496endif 497