mirror of
https://bitbucket.org/Mattrixwv/cipherstream.git
synced 2025-12-06 18:33:58 -05:00
Added macros to help simplify adding ciphers in future
This commit is contained in:
77
makefile
77
makefile
@@ -1,62 +1,73 @@
|
|||||||
|
#Macros that are corss platform
|
||||||
|
LIBFLAGS = -shared -std=c++11 -O3 -fPIC
|
||||||
|
EXEFLAGS = -std=c++11 -O3
|
||||||
|
TESTFLAGS = $(EXEFLAGS) -DTEST_VERSION
|
||||||
|
DEBUGFLAGS = $(TESTFLAGS) -g
|
||||||
|
LIBDIR = ./lib
|
||||||
|
CIPHERS = Caesar Playfair Vigenere Atbash
|
||||||
|
LIBFILES = $(patsubst %,SourceFiles/%.cpp,$(CIPHERS))
|
||||||
|
|
||||||
#For Linux
|
#For Linux
|
||||||
LinuxAll: libCaesar.a libPlayfair.a libVigenere.a libAtbash.a Ciphers
|
allLinux: libsLinux Ciphers
|
||||||
LinuxTest: libCaesar.a libPlayfair.a libVigenere.a libAtbash.a CiphersTest
|
testLinux: libsLinux CiphersTest
|
||||||
LinuxDebug: CiphersDBG
|
debugLinux: CiphersDBG
|
||||||
|
libsLinux: directory $(patsubst %, $(LIBDIR)/lib%.a,$(CIPHERS))
|
||||||
|
LINUXLIBS = $(patsubst %, -l%,$(CIPHERS))
|
||||||
|
|
||||||
#For Windows
|
#For Windows
|
||||||
WindowsAll: libCaesar.lib libPlayfair.lib libVigenere.lib libAtbash.lib Ciphers.exe
|
allWindows: libsWindows Ciphers.exe
|
||||||
WindowsTest: libCaesar.lib libPlayfair.lib libVigenere.lib libAtbash.lib CiphersTest.exe
|
testWindows: libsWindows CiphersTest.exe
|
||||||
WindowsDebug: CipherDBG.exe
|
debugWindows: CipherDBG.exe
|
||||||
|
#Keeping the old one for now, until I can test it to make sure it works
|
||||||
|
#WindowsLibs: libCaesar.lib libPlayfair.lib libVigenere.lib libAtbash.lib
|
||||||
|
#WINDOWSLIBS = -llibCaesar -llibPlayfair -llibVigenere -llibAtbash
|
||||||
|
libsWindows: directory $(patsubst %, $(LIBDIR)/lib%.lib,$(CIPHERS))
|
||||||
|
WINDOWSLIBS = $(patsubst %, -llib%,$(CIPHERS))
|
||||||
|
|
||||||
|
|
||||||
directory:
|
directory:
|
||||||
mkdir -p lib
|
mkdir -p $(LIBDIR)
|
||||||
|
|
||||||
#Linux
|
#Linux
|
||||||
libCaesar.a: SourceFiles/Caesar.cpp directory
|
|
||||||
$(CXX) -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Caesar.cpp
|
|
||||||
|
|
||||||
libPlayfair.a: SourceFiles/Playfair.cpp directory
|
$(LIBDIR)/lib%.a: SourceFiles/%.cpp
|
||||||
$(CXX) -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Playfair.cpp
|
$(CXX) $(LIBFLAGS) -o $@ $<
|
||||||
|
|
||||||
libVigenere.a: SourceFiles/Vigenere.cpp directory
|
|
||||||
$(CXX) -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Vigenere.cpp
|
|
||||||
|
|
||||||
libAtbash.a: SourceFiles/Atbash.cpp directory
|
|
||||||
$(CXX) -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Atbash.cpp
|
|
||||||
|
|
||||||
Ciphers: main.cpp helperFunctions.hpp
|
Ciphers: main.cpp helperFunctions.hpp
|
||||||
$(CXX) -O3 -std=c++11 -o $@ main.cpp -L ./lib -lCaesar -lPlayfair -lVigenere -lAtbash
|
$(CXX) $(EXEFLAGS) -o $@ main.cpp -L $(LIBDIR) $(LINUXLIBS)
|
||||||
|
|
||||||
CiphersTest: main.cpp
|
CiphersTest: main.cpp
|
||||||
$(CXX) -O3 -std=c++11 -DTEST_VERSION -o Ciphers $< -L ./lib -lCaesar -lPlayfair -lVigenere -lAtbash
|
$(CXX) $(TESTFLAGS) -o Ciphers $< -L $(LIBDIR) $(LINUXLIBS)
|
||||||
|
|
||||||
CiphersDBG: main.cpp SourceFiles/Caesar.cpp SourceFiles/Playfair.cpp SourceFiles/Vigenere.cpp SourceFiles/Atbash.cpp
|
CiphersDBG: main.cpp $(LIBFILES)
|
||||||
$(CXX) -O3 -std=c++11 -g -DTEST_VERSION -o $@ $<
|
$(CXX) $(DEBUGFLAGS) -o $@ $<
|
||||||
|
|
||||||
|
|
||||||
#Windows
|
#Windows
|
||||||
|
|
||||||
libCaesar.lib: SourceFiles/Caesar.cpp directory
|
#libCaesar.lib: SourceFiles/Caesar.cpp directory
|
||||||
g++ -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Caesar.cpp
|
# g++ $(LIBFLAGS) -o lib/$@ SourceFiles/Caesar.cpp
|
||||||
|
|
||||||
libPlayfair.lib: SourceFiles/Playfair.cpp directory
|
#libPlayfair.lib: SourceFiles/Playfair.cpp directory
|
||||||
g++ -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Playfair.cpp
|
# g++ -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Playfair.cpp
|
||||||
|
|
||||||
libVigenere.lib: SourceFiles/Vigenere.cpp directory
|
#libVigenere.lib: SourceFiles/Vigenere.cpp directory
|
||||||
g++ -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Vigenere.cpp
|
# g++ -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Vigenere.cpp
|
||||||
|
|
||||||
libAtbash.lib: SourceFiles/Atbash.cpp directory
|
#libAtbash.lib: SourceFiles/Atbash.cpp directory
|
||||||
g++ -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Vigenere.cpp
|
# g++ -shared -std=c++11 -O3 -fPIC -o lib/$@ SourceFiles/Atbash.cpp
|
||||||
|
|
||||||
|
$(LIBDIR)/lib%.lib: SourceFiles/%.cpp
|
||||||
|
g++ $(LIBFLAGS) -o $@ $<
|
||||||
|
|
||||||
Ciphers.exe: main.cpp helperFunctions.hpp
|
Ciphers.exe: main.cpp helperFunctions.hpp
|
||||||
g++ -std=c++11 -O3 -o $@ main.cpp -L ./lib -llibCaesar -llibPlayfair -llibVigenere -llibAtbash
|
g++ $(EXEFLAGS) -o $@ main.cpp -L $(LIBDIR) $(WINDOWSLIBS)
|
||||||
|
|
||||||
CiphersTest.exe: main.cpp
|
CiphersTest.exe: main.cpp
|
||||||
g++ -std=c++11 -O3 -DTEST_VERSION -o Ciphers.exe $< -L ./lib -llibCaesar -llibPlayfair -llibVigenere -llibAtbash
|
g++ $(TESTFLAGS) -o Ciphers.exe $< -L $(LIBDIR) $(WINDOWSLIBS)
|
||||||
|
|
||||||
CiphersDBG.exe: main.cpp SourceFiles/Caesar.cpp SourceFiles/Playfair.cpp SourceFiles/Vigenere.cpp SourceFiles/Vigenere.cpp SourceFiles/Atbash.cpp
|
CiphersDBG.exe: main.cpp $(LIBFILES)
|
||||||
g++ -std=c++11 -O3 -g -DTEST_VERSION -o $@ $<
|
g++ $(DEBUGFLAGS) -o $@ $<
|
||||||
|
|
||||||
|
|
||||||
#Cleaning Shop
|
#Cleaning Shop
|
||||||
|
|||||||
Reference in New Issue
Block a user