105901b04Schristosmy %targets = (
2ef5fc3feSchristos    "haiku-common" => {
3ef5fc3feSchristos        template         => 1,
405901b04Schristos        CC               => "cc",
505901b04Schristos        CFLAGS           => add_before(picker(default => "-Wall",
6ef5fc3feSchristos                                              debug   => "-g -O0",
705901b04Schristos                                              release => "-O2")),
805901b04Schristos        cflags           => add_before("-DL_ENDIAN -include \$(SRCDIR)/os-dep/haiku.h",
9ef5fc3feSchristos                                       threads("-D_REENTRANT")),
10*66bae5e7Schristos        AR              => "ar",
11*66bae5e7Schristos        ARFLAGS         => "qc",
12*66bae5e7Schristos        HASHBANGPERL    => "/bin/env perl",
13ef5fc3feSchristos        sys_id           => "HAIKU",
14ef5fc3feSchristos        ex_libs          => "-lnetwork",
15ef5fc3feSchristos        perlasm_scheme   => "elf",
16ef5fc3feSchristos        thread_scheme    => "pthreads",
17ef5fc3feSchristos        dso_scheme       => "dlfcn",
18ef5fc3feSchristos        shared_target    => "gnu-shared",
19ef5fc3feSchristos        shared_cflag     => "-fPIC",
20ef5fc3feSchristos        shared_ldflag    => "-shared",
21*66bae5e7Schristos        perl_platform    => 'Unix',
22ef5fc3feSchristos    },
23ef5fc3feSchristos    "haiku-x86" => {
24*66bae5e7Schristos        inherit_from     => [ "haiku-common" ],
2505901b04Schristos        CFLAGS           => add(picker(release => "-fomit-frame-pointer")),
26ef5fc3feSchristos        bn_ops           => "BN_LLONG",
27*66bae5e7Schristos        asm_arch         => 'x86',
28*66bae5e7Schristos        perlasm_scheme   => 'elf',
29ef5fc3feSchristos    },
30ef5fc3feSchristos    "haiku-x86_64" => {
31ef5fc3feSchristos        inherit_from     => [ "haiku-common" ],
32ef5fc3feSchristos        cflags           => add("-m64"),
33ef5fc3feSchristos        bn_ops           => "SIXTY_FOUR_BIT_LONG",
34ef5fc3feSchristos    },
35ef5fc3feSchristos);
36