Sophie

Sophie

distrib > Fedora > 17 > i386 > by-pkgid > dab886f3e84b915b3fc18652721f7de3 > files > 6

erlang-rebar-2.1.0-0.2.fc17.src.rpm

From 400dbe944291d6426ea474de552259539999e6a6 Mon Sep 17 00:00:00 2001
From: Dave Smith <dizzyd@dizzyd.com>
Date: Mon, 12 Nov 2012 20:18:00 -0700
Subject: [PATCH 4/9] Be sure to filter empty sources (h/t to Tuncer and Joe
 Norton)

---
 src/rebar_port_compiler.erl | 21 +++++++++++----------
 1 file changed, 11 insertions(+), 10 deletions(-)

diff --git a/src/rebar_port_compiler.erl b/src/rebar_port_compiler.erl
index 71b27a5..70ee308 100644
--- a/src/rebar_port_compiler.erl
+++ b/src/rebar_port_compiler.erl
@@ -248,16 +248,17 @@ needs_link(SoName, NewBins) ->
 %%
 
 get_specs(Config, AppFile) ->
-    case rebar_config:get_local(Config, port_specs, []) of
-        [] ->
-            %% No spec provided. Construct a spec
-            %% from old-school so_name and sources
-            [port_spec_from_legacy(Config, AppFile)];
-        PortSpecs ->
-            Filtered = filter_port_specs(PortSpecs),
-            OsType = os:type(),
-            [get_port_spec(Config, OsType, Spec) || Spec <- Filtered]
-    end.
+    Specs = case rebar_config:get_local(Config, port_specs, []) of
+                [] ->
+                    %% No spec provided. Construct a spec
+                    %% from old-school so_name and sources
+                    [port_spec_from_legacy(Config, AppFile)];
+                PortSpecs ->
+                    Filtered = filter_port_specs(PortSpecs),
+                    OsType = os:type(),
+                    [get_port_spec(Config, OsType, Spec) || Spec <- Filtered]
+            end,
+    [S || S <- Specs, S#spec.sources /= []].
 
 port_spec_from_legacy(Config, AppFile) ->
     %% Get the target from the so_name variable
-- 
1.8.1.4