]> git.saurik.com Git - apt.git/commitdiff
enable fvisibility=hidden for our private library
authorDavid Kalnischkies <david@kalnischkies.de>
Fri, 21 Mar 2014 14:54:15 +0000 (15:54 +0100)
committerDavid Kalnischkies <david@kalnischkies.de>
Fri, 21 Mar 2014 14:54:15 +0000 (15:54 +0100)
While it is a huge undertaking to enable it for our public libraries as
basically everything we exported so far could be seen as public
interface our private library is new and under our full control, so we
can do whatever we like with it. The benefits are not that big in return
of course, but it reduces the size a bit, so thats great nontheless.

Git-Dch: ignore

17 files changed:
apt-pkg/contrib/macros.h
apt-private/acqprogress.h
apt-private/makefile
apt-private/private-cachefile.h
apt-private/private-cmndline.h
apt-private/private-download.h
apt-private/private-install.h
apt-private/private-list.h
apt-private/private-main.h
apt-private/private-moo.h
apt-private/private-output.h
apt-private/private-search.h
apt-private/private-show.h
apt-private/private-sources.h
apt-private/private-update.h
apt-private/private-upgrade.h
apt-private/private-utils.h

index d97053553544ae21f04235d0a57dbfc593be709a..2d6448e5e257fd7552abfebb415a877231885121 100644 (file)
 
 #if APT_GCC_VERSION >= 0x0400
        #define APT_SENTINEL    __attribute__((sentinel))
+       #define APT_PUBLIC __attribute__ ((visibility ("default")))
+       #define APT_HIDDEN __attribute__ ((visibility ("hidden")))
 #else
        #define APT_SENTINEL
+       #define APT_PUBLIC
+       #define APT_HIDDEN
 #endif
 
 // cold functions are unlikely() to be called
index e12dafe5025214334784ec62f53c1c1c1987b47c..71a10d78afc6430a6103fa29289b1326857c1873 100644 (file)
 #define ACQPROGRESS_H
 
 #include <apt-pkg/acquire.h>
+#include <apt-pkg/macros.h>
 
 #include <string>
 
-class AcqTextStatus : public pkgAcquireStatus
+class APT_PUBLIC AcqTextStatus : public pkgAcquireStatus
 {
    unsigned int &ScreenWidth;
    char BlankLine[1024];
    unsigned long ID;
    unsigned long Quiet;
-   
+
    public:
-   
+
    virtual bool MediaChange(std::string Media,std::string Drive);
    virtual void IMSHit(pkgAcquire::ItemDesc &Itm);
    virtual void Fetch(pkgAcquire::ItemDesc &Itm);
@@ -29,7 +30,7 @@ class AcqTextStatus : public pkgAcquireStatus
    virtual void Fail(pkgAcquire::ItemDesc &Itm);
    virtual void Start();
    virtual void Stop();
-   
+
    bool Pulse(pkgAcquire *Owner);
 
    AcqTextStatus(unsigned int &ScreenWidth,unsigned int const Quiet);
index 728890b9bec6b4025f97c009d78f58f8475c61f7..09736c6d3a43625d276ce1f50ba85154e4c61b64 100644 (file)
@@ -16,6 +16,7 @@ LIBRARY=apt-private
 MAJOR=0.0
 MINOR=0
 SLIBS=$(PTHREADLIB) -lapt-pkg
+CXXFLAGS += -fvisibility=hidden -fvisibility-inlines-hidden
 
 PRIVATES=list install download output cachefile cacheset update upgrade cmndline moo search show main utils sources
 SOURCE += $(foreach private, $(PRIVATES), private-$(private).cc)
index 67c5e8cdc643399cb83956ecae08312f2f7c7dc4..dce7e0a3a80bd18b9c90c26f1d2c5459aea79fe2 100644 (file)
@@ -5,16 +5,17 @@
 #include <apt-pkg/progress.h>
 #include <apt-pkg/configuration.h>
 #include <apt-pkg/pkgcache.h>
+#include <apt-pkg/macros.h>
 
 
 // class CacheFile - Cover class for some dependency cache functions   /*{{{*/
 // ---------------------------------------------------------------------
 /* */
-class CacheFile : public pkgCacheFile
+class APT_PUBLIC CacheFile : public pkgCacheFile
 {
    static pkgCache *SortCache;
-   static int NameComp(const void *a,const void *b) APT_PURE;
-   
+   APT_HIDDEN static int NameComp(const void *a,const void *b) APT_PURE;
+
    public:
    pkgCache::Package **List;
    
index 76045ffe7da79755fbbc84fd32ea8bcc9cc86437..d0af16782f697c754f9ff22daf40184160a58a5f 100644 (file)
@@ -2,9 +2,10 @@
 #define APT_PRIVATE_CMNDLINE_H
 
 #include <apt-pkg/cmndline.h>
+#include <apt-pkg/macros.h>
 
 #include <vector>
 
-std::vector<CommandLine::Args> getCommandArgs(char const * const Program, char const * const Cmd);
+APT_PUBLIC std::vector<CommandLine::Args> getCommandArgs(char const * const Program, char const * const Cmd);
 
 #endif
index 1447845edde7883ceb0fb9905bc4428e20fffc7a..a108aa531bcd967e6620013aa99145d5e94a2552 100644 (file)
@@ -1,9 +1,11 @@
 #ifndef APT_PRIVATE_DOWNLOAD_H
 #define APT_PRIVATE_DOWNLOAD_H
 
+#include <apt-pkg/macros.h>
+
 class pkgAcquire;
 
-bool CheckAuth(pkgAcquire& Fetcher, bool const PromptUser);
-bool AcquireRun(pkgAcquire &Fetcher, int const PulseInterval, bool * const Failure, bool * const TransientNetworkFailure);
+APT_PUBLIC bool CheckAuth(pkgAcquire& Fetcher, bool const PromptUser);
+APT_PUBLIC bool AcquireRun(pkgAcquire &Fetcher, int const PulseInterval, bool * const Failure, bool * const TransientNetworkFailure);
 
 #endif
index 79769d470db782547f3160e06eb6e2900fa44895..5e18560c55d35d5fd0898e6030e17d2786fa889e 100644 (file)
@@ -9,6 +9,9 @@
 #include <apt-pkg/cacheset.h>
 #include <apt-pkg/strutl.h>
 #include <apt-pkg/algorithms.h>
+#include <apt-pkg/macros.h>
+
+#include <apt-private/private-output.h>
 
 #include <stddef.h>
 #include <iosfwd>
@@ -17,7 +20,6 @@
 #include <string>
 #include <utility>
 
-#include "private-output.h"
 
 #include <apti18n.h>
 
@@ -26,13 +28,13 @@ class CommandLine;
 
 #define RAMFS_MAGIC     0x858458f6
 
-bool DoInstall(CommandLine &Cmd);
+APT_PUBLIC bool DoInstall(CommandLine &Cmd);
 
 bool DoCacheManipulationFromCommandLine(CommandLine &CmdL, CacheFile &Cache,
                                         std::map<unsigned short, APT::VersionSet> &verset);
 bool DoCacheManipulationFromCommandLine(CommandLine &CmdL, CacheFile &Cache);
 
-bool InstallPackages(CacheFile &Cache,bool ShwKept,bool Ask = true,
+APT_PUBLIC bool InstallPackages(CacheFile &Cache,bool ShwKept,bool Ask = true,
                         bool Safety = true);
 
 
index 749744dd1dde441a817ab5f1578e18d43207a0c1..461f527cb24c2f1382f66cd07e198ad8e3f80b4d 100644 (file)
@@ -1,9 +1,11 @@
 #ifndef APT_PRIVATE_LIST_H
 #define APT_PRIVATE_LIST_H
 
+#include <apt-pkg/macros.h>
+
 class CommandLine;
 
-bool List(CommandLine &Cmd);
+APT_PUBLIC bool List(CommandLine &Cmd);
 
 
 #endif
index 257c51a0b96d9fd1fc5761cd6f96f9243879d947..23d4aca688bbf63af02465f74e286aa415e98666 100644 (file)
@@ -1,8 +1,10 @@
 #ifndef APT_PRIVATE_MAIN_H
 #define APT_PRIVATE_MAIN_H
 
+#include <apt-pkg/macros.h>
+
 class CommandLine;
 
-void CheckSimulateMode(CommandLine &CmdL);
+APT_PUBLIC void CheckSimulateMode(CommandLine &CmdL);
 
 #endif
index 7bfc5c1fc50b4f8eddae67121acf6a8bb788948a..b8e1cfed66f4679f26c6c2f63401e1a6ec09725d 100644 (file)
@@ -3,7 +3,7 @@
 
 class CommandLine;
 
-bool DoMoo(CommandLine &CmdL);
+APT_PUBLIC bool DoMoo(CommandLine &CmdL);
 bool DoMoo1(CommandLine &CmdL);
 bool DoMoo2(CommandLine &CmdL);
 bool DoMoo3(CommandLine &CmdL);
index 81643f90a6b6f899990d5b44e22906902fc4a936..9633d0c37a6d077521b62d8b63befeb342d7be61 100644 (file)
@@ -2,6 +2,7 @@
 #define APT_PRIVATE_OUTPUT_H
 
 #include <apt-pkg/pkgcache.h>
+#include <apt-pkg/macros.h>
 
 #include <fstream>
 #include <string>
@@ -13,22 +14,24 @@ class pkgDepCache;
 class pkgRecords;
 
 
-extern std::ostream c0out;
-extern std::ostream c1out;
-extern std::ostream c2out;
-extern std::ofstream devnull;
-extern unsigned int ScreenWidth;
+APT_PUBLIC extern std::ostream c0out;
+APT_PUBLIC extern std::ostream c1out;
+APT_PUBLIC extern std::ostream c2out;
+APT_PUBLIC extern std::ofstream devnull;
+APT_PUBLIC extern unsigned int ScreenWidth;
 
-bool InitOutput();
-void ListSingleVersion(pkgCacheFile &CacheFile, pkgRecords &records, 
+APT_PUBLIC bool InitOutput();
+
+void ListSingleVersion(pkgCacheFile &CacheFile, pkgRecords &records,
                        pkgCache::VerIterator V, std::ostream &out,
                        bool include_summary=true);
 
 
 // helper to describe global state
-bool ShowList(std::ostream &out, std::string Title, std::string List,
+APT_PUBLIC void ShowBroken(std::ostream &out,CacheFile &Cache,bool Now);
+
+APT_PUBLIC bool ShowList(std::ostream &out, std::string Title, std::string List,
               std::string VersionsList);
-void ShowBroken(std::ostream &out,CacheFile &Cache,bool Now);
 void ShowNew(std::ostream &out,CacheFile &Cache);
 void ShowDel(std::ostream &out,CacheFile &Cache);
 void ShowKept(std::ostream &out,CacheFile &Cache);
index 539915f1f6419c81e4ee8fc1e8b20aaa69413081..d4786233a1be39c734a900c9d0b82958575fb8d2 100644 (file)
@@ -1,9 +1,11 @@
 #ifndef APT_PRIVATE_SEARCH_H
 #define APT_PRIVATE_SEARCH_H
 
+#include <apt-pkg/macros.h>
+
 class CommandLine;
 
-bool FullTextSearch(CommandLine &CmdL);
+APT_PUBLIC bool FullTextSearch(CommandLine &CmdL);
 
 
 #endif
index a15367e28e2c0c0484d4b1bf9b52a2b2f48abf63..359aeeb2819278fc1105529be5df99c6dde60f49 100644 (file)
@@ -1,12 +1,14 @@
 #ifndef APT_PRIVATE_SHOW_H
 #define APT_PRIVATE_SHOW_H
 
+#include <apt-pkg/macros.h>
+
 class CommandLine;
 
 namespace APT {
    namespace Cmd {
 
-      bool ShowPackage(CommandLine &CmdL);
+      APT_PUBLIC bool ShowPackage(CommandLine &CmdL);
    }
 }
 #endif
index 4c58af180ee1853d742b4de53586e7b079eac47e..0c421902ec545a01b7448bc8c7e77004ca36aad5 100644 (file)
@@ -1,8 +1,10 @@
 #ifndef APT_PRIVATE_SOURCES_H
 #define APT_PRIVATE_SOURCES_H
 
+#include <apt-pkg/macros.h>
+
 class CommandLine;
 
-bool EditSources(CommandLine &CmdL);
+APT_PUBLIC bool EditSources(CommandLine &CmdL);
 
 #endif
index d3d0b7af96685d69cbdf8553113bc4b18da6b9a0..e584f70cfb731c2fe6a8088b96cd7a96646d6ee2 100644 (file)
@@ -1,8 +1,10 @@
 #ifndef APT_PRIVATE_UPDATE_H
 #define APT_PRIVATE_UPDATE_H
 
+#include <apt-pkg/macros.h>
+
 class CommandLine;
 
-bool DoUpdate(CommandLine &CmdL);
+APT_PUBLIC bool DoUpdate(CommandLine &CmdL);
 
 #endif
index 64c4c087466eae1df03ac481d3272aeeb20c0de6..16bb93c9ba023a3ccc42f541edeef750a7f8914b 100644 (file)
@@ -1,10 +1,12 @@
 #ifndef APTPRIVATE_PRIVATE_UPGRADE_H
 #define APTPRIVATE_PRIVATE_UPGRADE_H
 
+#include <apt-pkg/macros.h>
+
 class CommandLine;
 
-bool DoDistUpgrade(CommandLine &CmdL);
-bool DoUpgrade(CommandLine &CmdL);
+APT_PUBLIC bool DoDistUpgrade(CommandLine &CmdL);
+APT_PUBLIC bool DoUpgrade(CommandLine &CmdL);
 bool DoUpgradeNoNewPackages(CommandLine &CmdL);
 bool DoUpgradeWithAllowNewPackages(CommandLine &CmdL);
 
index 4bb535e86b240a5560a9679f77e3c8ea98fc3994..43269978731a2418e271101bf0e259b54e9c5f45 100644 (file)
@@ -1,9 +1,11 @@
 #ifndef APT_PRIVATE_UTILS_H
 #define APT_PRIVATE_UTILS_H
 
-#include<string>
+#include <apt-pkg/macros.h>
 
-void DisplayFileInPager(std::string filename);
-void EditFileInSensibleEditor(std::string filename);
+#include <string>
+
+APT_PUBLIC void DisplayFileInPager(std::string filename);
+APT_PUBLIC void EditFileInSensibleEditor(std::string filename);
 
 #endif