diff --git a/meta/classes/icecc.bbclass b/meta/classes/icecc.bbclass
index 8a48f2ad63..e3b07028b8 100644
--- a/meta/classes/icecc.bbclass
+++ b/meta/classes/icecc.bbclass
@@ -143,8 +143,8 @@ def use_icecc(bb,d):
     if icecc_is_cross_canadian(bb, d):
         return "no"
 
-    pn = d.getVar('PN')
-    bpn = d.getVar('BPN')
+    pn = bb.parse.vars_from_file(d.getVar('FILE', False),d)[0] or 'defaultpkgname'
+    bpn = oe.utils.prune_suffix(pn, d.getVar('SPECIAL_PKGSUFFIX').split(), d)
 
     # Enable/disable checks are made against BPN, because there is a good
     # chance that if icecc should be skipped for a recipe, it should be skipped
