rubygems-requirements-system 0.1.4 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 34e6edefc65d483dbf4cdd7e65aa207d72333c77daaa9a8f01783e980b902b0a
4
- data.tar.gz: 389e7cb7ca4e47e340eda5d33124b5a6a6504f9394ee33f69e126501b2bfd7d3
3
+ metadata.gz: b9ae4c0c03cef9d3553020e858e0f3a124e4bff919111568563795765568bb1c
4
+ data.tar.gz: 30c19cb58a56b30c2ce09c4020678f526093bcb7636b641476a1b4b72a4af870
5
5
  SHA512:
6
- metadata.gz: cf042b4cbd1c2a81c53acd09b8c068dc7092c68579c1a25dba195ac1b029f679fa12985785c477203ffc6811402f7cfeecdada8d9cbb79b3926e9a921820ae1c
7
- data.tar.gz: ead6cbb4a59b00c6ecfdeedae8b2bc9cf0c04ac60da0512c78dd91f379f5be88d6024a5dd4cf05daf9dc214c0f4b44a58d8b8421dab6303b4b43e4ece628cb70
6
+ metadata.gz: 8d227279c190f067f1cdf6aea23e708a822eb38a8b16c9f9627aea16c13052070d05b9719cf99800415dd5b01e97e2474333f01fd660f937ab25385214347f8f
7
+ data.tar.gz: 30ddb08431f3b6c995d45a24e31a157b9340631c61e220bd9ecc2090145d89d8824dc8d9a5671bf33ef224480b380bd8d098847e8014f513ba5697c63dcfe998
data/doc/text/news.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # News
2
2
 
3
+ ## 0.1.5 - 2025-12-01
4
+
5
+ ### Improvements
6
+
7
+ * Updated bundled `pkg-config` gem to 1.6.5.
8
+
3
9
  ## 0.1.4 - 2025-11-26
4
10
 
5
11
  ### Improvements
@@ -19,7 +19,7 @@ require "rbconfig"
19
19
  require "shellwords"
20
20
 
21
21
  module PKGConfig
22
- VERSION = "1.6.4"
22
+ VERSION = "1.6.5"
23
23
 
24
24
  @@paths = []
25
25
  @@override_variables = {}
@@ -545,6 +545,7 @@ class PackageConfig
545
545
  flag.gsub(/\A-I/, "/I")
546
546
  end
547
547
  end
548
+ other_flags = merge_back_cflags(other_flags)
548
549
  [path_flags, other_flags]
549
550
  end
550
551
 
@@ -579,6 +580,32 @@ class PackageConfig
579
580
  normalized_cflags
580
581
  end
581
582
 
583
+ # Implementing behavior compatible with pkgconf's pkgconf_fragment_copy().
584
+ # This is not a complete reproduction yet, but the goal is to stay compatible.
585
+ # https://github.com/pkgconf/pkgconf/blob/pkgconf-2.5.1/libpkgconf/fragment.c#L381-L416
586
+ def merge_back_cflags(cflags)
587
+ merge_backed_cflags = []
588
+ cflags.each do |cflag|
589
+ if mergeable_flag?(cflag)
590
+ # NOTE: This may be slow because this checks merge_back_cflags N times
591
+ # (where N is the number of mergeable flags).
592
+ merge_backed_cflags.delete(cflag)
593
+ end
594
+ merge_backed_cflags << cflag
595
+ end
596
+ merge_backed_cflags
597
+ end
598
+
599
+ def mergeable_flag?(flag)
600
+ return false unless flag.start_with?("-")
601
+ return true if flag.start_with?("-D")
602
+ if flag.start_with?("-W")
603
+ return false if flag.start_with?("-Wa,", "-Wl,", "-Wp,")
604
+ return true
605
+ end
606
+ false
607
+ end
608
+
582
609
  def collect_libs
583
610
  target_packages = [*required_packages, self]
584
611
  libs_set = []
@@ -14,5 +14,5 @@
14
14
  # along with this program. If not, see <http://www.gnu.org/licenses/>.
15
15
 
16
16
  module RubyGemsRequirementsSystem
17
- VERSION = "0.1.4"
17
+ VERSION = "0.1.5"
18
18
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rubygems-requirements-system
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.4
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sutou Kouhei