Files
funnygame/fpc/public/ld.h
2025-07-30 23:53:26 +03:00

47 lines
884 B
C++

#ifndef LD_H
#define LD_H
#include "runner.h"
#include "helper.h"
#include "obj.h"
#include "tier0/platform.h"
#include "tier1/utlstring.h"
enum ELinkType
{
ELINK_EXECUTABLE,
ELINK_DYNAMIC_LIBRARY,
ELINK_STATIC_LIBRARY,
};
struct LinkProject_t: public CPUProject_t
{
public:
void AddObject( Object_t& object );
ELinkType linkType;
CUtlVector<Object_t> objects = {};
CUtlVector<CUtlString> libraries ={};
CUtlVector<CUtlString> libraryDirectories = {};
CUtlVector<CUtlString> libraryObjects = {};
CUtlVector<CUtlString> frameworkDirectories = {};
CUtlVector<CUtlString> frameworks = {};
AndroidManifest_t m_androidmanifest;
bool bNoStdLib;
};
#define LINKER_INTERFACE_NAME "Linker001"
#define CLANG_LINKER_INTERFACE_NAME "ClangLinker001"
abstract_class ILinker
{
public:
virtual CUtlString Link( LinkProject_t *pProject ) = 0;
};
extern ILinker *linker;
#endif