test static dependencies

This commit is contained in:
2025-03-30 12:16:00 -05:00
parent 79e66baefc
commit 2b145098a2
3 changed files with 64 additions and 1 deletions

View File

@@ -160,7 +160,36 @@
buildPhase = '' buildPhase = ''
clang++ \ clang++ \
modules/DependsOnPrint/src/*.cpp src/App.cpp \ modules/DependsOnPrint/src/*.cpp \
include/utils/App/App.cpp \
-fpic -shared \
-I src -I include \
-Wall \
-o $name
'';
installPhase = ''
mkdir -p $out/bin
cp $name $out/bin
'';
};
DependsOnPrintStatic = pkgs.stdenvNoCC.mkDerivation {
name = "DependsOnPrint";
src = ./.;
nativeBuildInputs = with pkgs; [
clang
];
buildPhase = ''
clang++ \
modules/DependsOnPrint/src/*.cpp \
modules/Print/src/*.cpp \
include/utils/App/App.cpp \
-fpic -shared \ -fpic -shared \
-I src -I include \ -I src -I include \
-Wall \ -Wall \

View File

@@ -0,0 +1,17 @@
#include "DependsOnPrintStatic.h"
#include "modules/Print/src/Print.h"
DependsOnPrintStatic::DependsOnPrintStatic(void* h, Archimedes::App* a) : Module(h, a) {
name = "DependsOnPrintStatic";
deps["Print"] = new Print(nullptr, a);
}
DependsOnPrintStatic::~DependsOnPrintStatic() {
std::cout << "DependsOnPrintStatic Destroyed!\n";
}
void DependsOnPrintStatic::run() {
std::cout << "DependsOnPrintStatic lib loaded and run!\n";
app->stopModule(self);
}

View File

@@ -0,0 +1,17 @@
#include "Archimedes.h"
class DependsOnPrintStatic : public Archimedes::Module {
public:
DependsOnPrintStatic(void*, Archimedes::App*);
~DependsOnPrintStatic();
void run();
void onLoad() {}
};
extern "C" {
Archimedes::Module* create(void* handle, Archimedes::App* app) {
return new DependsOnPrintStatic(handle, app);
}
}