X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=source%2Fsharedlibrary.h;h=5331ef58290d8995b7cabdc5b5fadd0849cc7e9e;hb=5cfcbc7507b14df81018f734ae47f92b231b10d2;hp=f86fa814978804f73d7fef03a3d241de6f3734b8;hpb=242c55b17e6608b29a77ca17a5b677e202a3ca90;p=builder.git diff --git a/source/sharedlibrary.h b/source/sharedlibrary.h index f86fa81..5331ef5 100644 --- a/source/sharedlibrary.h +++ b/source/sharedlibrary.h @@ -1,28 +1,30 @@ -/* $Id$ - -This file is part of builder -Copyright © 2006-2007, 2009 Mikko Rasa, Mikkosoft Productions -Distributed under the LGPL -*/ - #ifndef SHAREDLIB_H_ #define SHAREDLIB_H_ -#include "executable.h" +#include "binary.h" /** -Represents a shared library. Mainly exists to give extra information to the -user. +Represents a shared library. It has two special properties: libname and +soname. Libname is the name used by the linker. Soname is the canonical +filename of the library, including version number. If the owning package has +no version, soname will be empty. */ -class SharedLibrary: public Executable +class SharedLibrary: public Binary { private: std::string libname; + std::string soname; public: + SharedLibrary(Builder &, const Msp::FS::Path &); SharedLibrary(Builder &, const Component &, const std::list &); +private: + static std::string generate_filename(const Component &); + +public: virtual const char *get_type() const { return "SharedLibrary"; } const std::string &get_libname() const { return libname; } + const std::string &get_soname() const { return soname; } }; #endif