From 6c0ddc68569cd8f0eee5f22fc271ff851545338a Mon Sep 17 00:00:00 2001 From: Joey Yakimowich-Payne Date: Thu, 30 Apr 2020 18:20:23 -0600 Subject: [PATCH] Prepare to fix linux builds --- src/sdl2/sdl2.nim | 37 +++++++++++++++++-------------------- 1 file changed, 17 insertions(+), 20 deletions(-) diff --git a/src/sdl2/sdl2.nim b/src/sdl2/sdl2.nim index bdd5ed7..55beff2 100644 --- a/src/sdl2/sdl2.nim +++ b/src/sdl2/sdl2.nim @@ -151,9 +151,22 @@ static: else: const cmd = &"cd {srcDir.sanitizePath} && bash ./sdl2-config --libs" const conf = execAction(cmd).output.getLibOutput - echo conf - echo buildDir.unixizePath - {.passL: &"-L{buildDir.sanitizePath} -L{buildDir.unixizePath} {conf}".} + {.passL: &"-L{buildDir.sanitizePath} -L{buildDir.unixizePath} {conf} -Wl,--no-as-needed -ldl -lsndio".} + + let pathenv = getEnv("PATH") + when defined(windows): + putEnv("PATH", buildDir.sanitizePath & ";" & pathenv) + else: + putEnv("PATH", buildDir.sanitizePath & ":" & pathenv) + putEnv("CFLAGS", "-I" & includeDir.sanitizePath) + putEnv("LDFLAGS", &"-L{buildDir.sanitizePath} -L{buildDir.unixizePath} {conf} -Wl,--no-as-needed -lsndio -ldl") # & " " & buildDir/"libSDL2main.a") + putEnv("SDL2_CONFIG", (srcDir/"sdl2-config").sanitizePath) + putEnv("SDL_CONFIG", (srcDir/"sdl2-config").sanitizePath) + putEnv("LIBS", &"-L{buildDir.sanitizePath} -L{buildDir.unixizePath}") + putEnv("SDL_CFLAGS", "-I" & includeDir.sanitizePath) + let ldpath = getEnv("LD_LIBRARY_PATH") + putEnv("LD_LIBRARY_PATH", &"{buildDir.sanitizePath}:{buildDir.unixizePath}:{ldpath}") + putEnv("SDL2_PATH", srcDir.sanitizePath) when defined(SDL_Static): cImport(srcDir/"include"/"SDL.h", recurse = true, flags = "-f=ast2 -DDOXYGEN_SHOULD_IGNORE_THIS -E__,_ -F__,_") @@ -186,22 +199,6 @@ const SDLStaticLib* = findStaticlib() const SDL2ConfigPath* = srcDir / "sdl2-config" const SDLSrcDir* = srcDir -static: - let pathenv = getEnv("PATH") - when defined(windows): - putEnv("PATH", buildDir.sanitizePath & ";" & pathenv) - else: - putEnv("PATH", buildDir.sanitizePath & ":" & pathenv) - echo pathenv - echo includeDir - putEnv("CFLAGS", "-I" & includeDir.sanitizePath) - putEnv("LDFLAGS", &"-L{buildDir.sanitizePath} -L{buildDir.unixizePath}") # & " " & buildDir/"libSDL2main.a") - putEnv("SDL2_CONFIG", (srcDir/"sdl2-config").sanitizePath) - putEnv("LIBS", &"-L{buildDir.sanitizePath} -L{buildDir.unixizePath}") - putEnv("SDL_CFLAGS", "-I" & includeDir.sanitizePath) - putEnv("LD_LIBRARY_PATH", &"{buildDir.sanitizePath}:{buildDir.unixizePath}") - putEnv("SDL2_PATH", srcDir.sanitizePath) - const WINDOWPOS_UNDEFINED* = WINDOWPOS_UNDEFINED_DISPLAY(0) WINDOWPOS_CENTERED* = WINDOWPOS_CENTERED_DISPLAY(0) @@ -212,4 +209,4 @@ const BUTTON_MMASK* = sdl_button(BUTTON_MIDDLE) BUTTON_RMASK* = sdl_button(BUTTON_RIGHT) BUTTON_X1MASK* = sdl_button(BUTTON_X1) - BUTTON_X2MASK* = sdl_button(BUTTON_X2) \ No newline at end of file + BUTTON_X2MASK* = sdl_button(BUTTON_X2)