-- Project for building Ada programs for Linux, MacOS, or Windows -- Copyright (C)2020-2023, Philip Munts dba Munts Technologies. -- -- Redistribution and use in source and binary forms, with or without -- modification, are permitted provided that the following conditions are met: -- -- * Redistributions of source code must retain the above copyright notice, -- this list of conditions and the following disclaimer. -- -- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -- AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -- IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE -- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE -- LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS -- INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN -- CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) -- ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE -- POSSIBILITY OF SUCH DAMAGE. PROJECT Default IS LIBSIMPLEIO := external("LIBSIMPLEIO", "/usr/local/share/libsimpleio"); FOR Source_Dirs USE (".", LIBSIMPLEIO & "/ada/bindings", LIBSIMPLEIO & "/ada/devices", LIBSIMPLEIO & "/ada/interfaces", LIBSIMPLEIO & "/ada/objects/**"); FOR Object_Dir USE "./obj"; FOR Exec_Dir USE "."; PACKAGE Compiler IS FOR Default_Switches ("Ada") USE ("-O3", "-ffunction-sections", "-fdata-sections", "-gnato1", "-gnatwa", "-gnatVa", "-gnat2012" ); END Compiler; -- Linker goop to find hidapi.dll or libhidapi.so OS := external("OS", external("OSNAME", "unknown")); PACKAGE Linker IS CASE OS IS WHEN "Windows_NT" => FOR Default_Switches ("ada") USE ("-L" & LIBSIMPLEIO & "/win64"); WHEN "Darwin" => FOR Default_Switches ("ada") USE ("-L/opt/homebrew/lib", "-ld_classic"); WHEN OTHERS => NULL; END CASE; END Linker; END Default;