diff --git a/src/main/java/de/dentrassi/rpm/builder/YumMojo.java b/src/main/java/de/dentrassi/rpm/builder/YumMojo.java
index 09e318a..55edb8f 100644
--- a/src/main/java/de/dentrassi/rpm/builder/YumMojo.java
+++ b/src/main/java/de/dentrassi/rpm/builder/YumMojo.java
@@ -32,6 +32,8 @@
 import java.util.stream.Collectors;
 
 import org.apache.commons.codec.digest.DigestUtils;
+import org.apache.commons.compress.archivers.cpio.CpioArchiveEntry;
+import org.apache.commons.compress.archivers.cpio.CpioArchiveInputStream;
 import org.apache.maven.artifact.Artifact;
 import org.apache.maven.execution.MavenSession;
 import org.apache.maven.plugin.AbstractMojo;
@@ -235,6 +237,47 @@ private void addSinglePackage(final Path path, final Context context) throws IOE
             rpmInformation = RpmInformations.makeInformation(ris);
         }
 
+        // Retrieve all the files contained in the rpm (including symlink)
+        List<String> providedFiles = Lists.newArrayList();
+        try (RpmInputStream ris = new RpmInputStream(Files.newInputStream(path))) {
+            ris.getPayloadHeader();
+            ris.getSignatureHeader();
+
+            final CpioArchiveInputStream cpio = ris.getCpioStream();
+            CpioArchiveEntry cpioEntry;
+            while ((cpioEntry = cpio.getNextCPIOEntry()) != null) {
+                providedFiles.add(RpmInformations.normalize(cpioEntry.getName()));
+            }
+            cpio.close();
+        }
+
+        // Remove provided files from the required list
+        List<org.eclipse.packager.rpm.info.RpmInformation.Dependency> requiresToKeep = Lists.newArrayList();
+        for (org.eclipse.packager.rpm.info.RpmInformation.Dependency requiredDep : rpmInformation.getRequires()) {
+            boolean fileProvided = false;
+            
+            for (String providedFile : providedFiles) {
+                if (requiredDep.getName().equals(providedFile)) {
+                   fileProvided = true;
+                    break;
+                }
+            }
+
+            if (!fileProvided) {
+                for (org.eclipse.packager.rpm.info.RpmInformation.Dependency providedDep : rpmInformation.getProvides()) {
+                    if (requiredDep.getName().equals(providedDep.getName())) {
+                        fileProvided = true;
+                        break;
+                    }
+                }
+            }
+            
+            if (!fileProvided) {
+                requiresToKeep.add(requiredDep);
+            }
+        }
+        rpmInformation.setRequires(requiresToKeep);
+
         context.addPackage(fileInformation, rpmInformation, singletonMap(SHA256, checksum), SHA256);
 
         Files.copy(path, this.packagesPath.toPath().resolve(fileName), StandardCopyOption.COPY_ATTRIBUTES);