# Library version invercargill_major = '1' invercargill_minor = '0' invercargill_patch = '0' invercargill_version = '@0@.@1@.@2@'.format(invercargill_major, invercargill_minor, invercargill_patch) dependencies = [ dependency('glib-2.0'), dependency('gobject-2.0'), ] sources = files('Enumerable.vala') sources += files('Delegates.vala') sources += files('Pair.vala') sources += files('PositionItemPair.vala') sources += files('Tracker.vala') sources += files('Errors.vala') sources += files('SelectionContext.vala') sources += files('Safety.vala') sources += files('Promotion.vala') sources += files('Grouping.vala') sources += files('Interfaces.vala') sources += files('KeyValuePair.vala') sources += files('KeyCountPair.vala') sources += files('Attempt.vala') sources += files('Cache.vala') sources += files('Proxy.vala') sources += files('StickyProxy.vala') sources += files('EnumerableInfo.vala') sources += files('StickyPromotion.vala') sources += files('Element.vala') sources += files('Debug.vala') sources += files('OrderConfiguration.vala') sources += files('Iterate.vala') sources += files('Wrap.vala') sources += files('Partition.vala') sources += files('Composition.vala') sources += files('ByteComposition.vala') sources += files('Modifiers/Transform.vala') sources += files('Modifiers/Filter.vala') sources += files('Modifiers/Merge.vala') sources += files('Modifiers/Sort.vala') sources += files('Modifiers/Skip.vala') sources += files('Modifiers/Take.vala') sources += files('Modifiers/SkipLast.vala') sources += files('Modifiers/TakeLast.vala') sources += files('Modifiers/Fork.vala') sources += files('Modifiers/ParallelTransform.vala') sources += files('Modifiers/ParallelFilter.vala') sources += files('Modifiers/Unique.vala') sources += files('Modifiers/Position.vala') sources += files('Modifiers/FilterTransform.vala') sources += files('Modifiers/From.vala') sources += files('Modifiers/Until.vala') sources += files('Modifiers/Cache.vala') sources += files('Modifiers/Concat.vala') sources += files('Modifiers/Zip.vala') sources += files('Modifiers/Sealed.vala') sources += files('Modifiers/Interleave.vala') sources += files('Modifiers/Order.vala') sources += files('Modifiers/Union.vala') sources += files('Modifiers/Difference.vala') sources += files('Modifiers/Intersect.vala') sources += files('Modifiers/SymmetricDifference.vala') sources += files('Modifiers/Chunk.vala') sources += files('Modifiers/Cycle.vala') sources += files('Modifiers/GroupSequential.vala') sources += files('Modifiers/Padding.vala') sources += files('Modifiers/Reverse.vala') sources += files('Modifiers/Scanner.vala') sources += files('Modifiers/Window.vala') sources += files('Wrappers/Array.vala') sources += files('Wrappers/GenericArray.vala') sources += files('Generators/Range.vala') sources += files('Generators/Empty.vala') sources += files('Generators/Function.vala') sources += files('Generators/Directory.vala') sources += files('Generators/Deferred.vala') sources += files('Promotions/Numbers/Numbers.vala') sources += files('Promotions/Numbers/Implementations.vala') sources += files('Promotions/Equatables.vala') sources += files('Promotions/Attempts.vala') sources += files('Promotions/PropertyGroups.vala') sources += files('Promotions/BinaryData.vala') sources += files('Promotions/Registration.c') sources += files('Interfaces/Lot.vala') sources += files('Interfaces/ImmutableLot.vala') sources += files('Interfaces/ReadOnlyCollection.vala') sources += files('Interfaces/ReadOnlyAssociative.vala') sources += files('Interfaces/ReadOnlyAddressable.vala') sources += files('Interfaces/ReadOnlyAddressableBytes.vala') sources += files('Interfaces/ReadOnlySet.vala') sources += files('Interfaces/Collection.vala') sources += files('Interfaces/Associative.vala') sources += files('Interfaces/Addressable.vala') sources += files('Interfaces/Set.vala') sources += files('Interfaces/Properties.vala') sources += files('Interfaces/Elements.vala') sources += files('Interfaces/AddressableCollection.vala') sources += files('Interfaces/AddressableBytes.vala') sources += files('Interfaces/BinaryData.vala') sources += files('Interfaces/Queue.vala') sources += files('DataStructures/Series.vala') sources += files('DataStructures/Fifo.vala') sources += files('DataStructures/Lifo.vala') sources += files('DataStructures/PriorityQueue.vala') sources += files('DataStructures/Vector.vala') sources += files('DataStructures/HashSet.vala') sources += files('DataStructures/Dictionary.vala') sources += files('DataStructures/PropertyDictionary.vala') sources += files('DataStructures/SortedVector.vala') sources += files('DataStructures/SortedSeries.vala') sources += files('DataStructures/Buffer.vala') sources += files('DataStructures/RingBuffer.vala') sources += files('DataStructures/ImmutableBuffer.vala') sources += files('DataStructures/ByteBuffer.vala') sources += files('Mapping/Mapper.vala') sources += files('Mapping/PropertyMapper.vala') sources += files('Mapping/ValueMapper.vala') sources += files('Operators/Comparison.vala') sources += files('Operators/Equality.vala') sources += files('Operators/Hash.vala') sources += files('Operators/Stringify.vala') invercargill = shared_library('invercargill-@0@'.format(invercargill_major), sources, dependencies: dependencies, install: true, vala_gir: 'invercargill-@0@.gir'.format(invercargill_major), install_dir: [true, true, true, true] ) invercargill_dep = declare_dependency(link_with: invercargill, include_directories: include_directories('.')) pkg = import('pkgconfig') pkg.generate(invercargill, version : invercargill_version, name : 'invercargill',) g_ir_compiler = find_program('g-ir-compiler') custom_target('invercargill typelib', command: [g_ir_compiler, '--shared-library=libinvercargill-@0@.so'.format(invercargill_major), '--output', '@OUTPUT@', meson.current_build_dir() / 'invercargill-@0@.gir'.format(invercargill_major)], output: 'invercargill-@0@.typelib'.format(invercargill_major), depends: invercargill, install: true, install_dir: get_option('libdir') / 'girepository-1.0')