]> git.pld-linux.org Git - packages/rpm.git/blob - macros.pld.in
- cleanup cflags definitions
[packages/rpm.git] / macros.pld.in
1 # PLD Linux rpm macros
2 # vim:ft=spec
3
4 %distribution           PLD Linux
5 %vendor                 pld
6 %bugurl                 http://bugs.pld-linux.org/
7 %disturl                http://www.pld-linux.org/
8 %pld_release            th
9
10 #
11 # Per-platform rpm configuration file.
12
13 #==============================================================================
14 # ---- per-platform macros.
15 #
16 %_vendor                pld
17 %_os                    linux
18 %_target_platform       %{_target_cpu}-%{_vendor}-%{_target_os}
19
20 #==============================================================================
21 # ---- configure macros.  note that most of these are inherited
22 #      from the defaults.
23 #
24 %_prefix                /usr
25 %_exec_prefix           %{_prefix}
26 %_bindir                %{_exec_prefix}/bin
27 %_sbindir               %{_exec_prefix}/sbin
28 %_libexecdir            %{_exec_prefix}/%{_lib}
29 %_datadir               %{_prefix}/share
30 %_sysconfdir            %{_prefix}/etc
31 %_sharedstatedir        /var/lib
32 %_localstatedir         /var
33 %_libdir                %{_exec_prefix}/%{_lib}
34 %_includedir            %{_prefix}/include
35 %_oldincludedir         /usr/include
36 %_infodir               %{_prefix}/share/info
37 %_mandir                %{_prefix}/share/man
38 %_initrddir             %{_sysconfdir}/rc.d/init.d
39 %_sysconfdir            /etc
40
41 %_defaultdocdir         %{_usr}/share/doc
42
43 %_fmoddir               %{_libdir}/gfortran/modules
44
45 # Executed at after copying %doc to DOCDIR, with $DOCDIR set
46 %__compress_doc         @prefix@/lib/rpm/compress-doc%{?_noautocompressdoc: --noautocompressdoc='%{_noautocompressdoc}'}
47
48 %__os_install_post \
49 %{?ifnarch noarch:\
50 %{__spec_install_post_strip}\
51 %{__spec_install_post_chrpath}\
52 %{__spec_install_post_compress_modules}\
53 %{__spec_install_post_check_so}\
54 %endif}\
55 %{__spec_install_post_check_tmpfiles}\
56 %{__spec_install_post_compress_docs}\
57 %{__spec_install_post_py_hardlink}\
58 %{__spec_install_post_perl_clean}\
59 %{__arch_install_post}\
60 %{nil}
61
62 %__spec_install_post\
63 %{expand:%%define __sip_%{?_enable_debug_packages} 1}%{?__sip_1:%{?__debug_package:%{__debug_install_post}}}%{expand:%%undefine __sip_%{?_enable_debug_packages}}\
64 %{__arch_install_post}\
65 %{__os_install_post}\
66 %{nil}
67
68 #---------------------------------------------------------------------
69 #       Template for debug information sub-package.
70 %_enable_debug_packages         1
71
72 %debug_package \
73 %ifnarch noarch\
74 %global __debug_package 1\
75 %package debuginfo\
76 Summary: Debug information for package %{name}\
77 Summary(pl.UTF-8): Informacje dla debuggera dla pakietu %{name}\
78 Group: Development/Debug\
79 Requires: filesystem-debuginfo >= 3.0-16\
80 AutoReqProv: 0\
81 %description debuginfo\
82 This package provides debug information for package %{name}.\
83 Debug information is useful when developing applications that use this\
84 package or when debugging this package.\
85 %description debuginfo -l pl.UTF-8\
86 Ten pakiet dostarcza informacje dla debuggera dla pakietu %{name}.\
87 Informacje te są przydatne przy rozwijaniu aplikacji używających tego\
88 pakietu oraz przy odpluskwianiu samego pakietu.\
89 %files debuginfo -f debugfiles.list\
90 %defattr(-,root,root)\
91 %endif\
92 %{nil}
93
94 #---------------------------------------------------------------------
95 # Overwrite RPM macros with PLD specific one here.
96
97 %__grep                 /bin/grep
98 %__lua                  %{_bindir}/lua
99 %__rc                   %{_bindir}/rc
100 %__xar                  %{_bindir}/xar
101
102 %_tmppath               %(echo "${TMPDIR:-/var/tmp}")
103 %tmpdir                 %{_tmppath}
104
105 %_topdir                %(echo $HOME)/rpm
106
107 %buildroot              %{_tmppath}/%{name}-%{version}-root-%(id -u -n)
108
109 %_source_payload        w9.gzdio
110 %_binary_payload        w9.lzdio
111
112 %_rpmfc_magic_path      /usr/share/file/magic
113
114 # provides don't obsolete
115 %_upgrade_tag           name
116
117 # Do not generate executable() dependencies for scriptlets,
118 # as it may give false positives, for example:
119 # [ ! -x /bin/prog ] || /bin/prog
120 # will generate R:/bin/prog and we don't want that as /bin/prog is optional in this case
121 # 0 - Use external generator
122 # 1 - Use internal generator if available
123 # 2 - Use __scriptlet_requires to process scriptlet dependencies
124 %_use_internal_dependency_generator     1
125
126 %_duplicate_files_terminate_build       1
127 %_files_listed_twice_terminate_build    1
128 %_unpackaged_subdirs_terminate_build    0
129
130 #-----------------------------------------------------------------
131 # CFLAGS and LDFLAGS used to build
132
133 %debuginfocflags        %{expand:%%define __dic_%{?_enable_debug_packages} 1}%{?__dic_1: -gdwarf-4 -fno-debug-types-section -fvar-tracking-assignments -g2}%{expand:%%undefine __dic_%{?_enable_debug_packages}}
134 # -feliminate-dwarf2-dups disabled until PR ld/3290 is fixed.
135
136 %debugcflags    -O0 -g -Wall
137 %debugcppflags  %{nil}
138 %debugldflags   %{nil}
139
140 %optldflags     -Wl,--as-needed -Wl,--no-copy-dt-needed-entries -Wl,-z,relro -Wl,-z,combreloc
141 %optcppflags    %{nil}
142
143 # Warning: those macros are overwritten by macros.build,
144 #          left here for compatibility
145 %rpmcflags %(awk 'BEGIN {
146        split("%{?debug:%debugcflags}%{!?debug:%optflags}%{?debuginfocflags}",I);
147        split("%{?filterout} %{?filterout_c} %{?filterout_ld}",F);
148        %{filter_out}
149 }')
150 %rpmcppflags       %(awk 'BEGIN {
151        split("%{?debug:%debugcppflags}%{!?debug:%optcppflags}%{?debuginfocppflags}",I);
152        split("%{?filterout} %{?filterout_cpp} %{?filterout_cpp}",F);
153        %{filter_out}
154 }')
155 %rpmcxxflags       %(awk 'BEGIN {
156        split("%{?debug:%debugcflags}%{!?debug:%optflags}%{?debuginfocflags}",I);
157        split("%{?filterout} %{?filterout_cxx} %{?filterout_ld}",F);
158        %{filter_out}
159 }')
160 %rpmldflags        %(awk 'BEGIN {
161        split("%{?optldflags}",I);
162        split("%{?filterout_ld}",F)
163        %{filter_out}
164 }')
165
166 # common compilation flags
167 %_fortify_cflags        -Wp,-D_FORTIFY_SOURCE=2
168
169 # cf http://wiki.mandriva.com/en/Development/Packaging/Problems#format_not_a_string_literal_and_no_format_arguments
170 %Werror_cflags          -Wformat -Werror=format-security
171
172 %_ssp_cflags            -fstack-protector --param=ssp-buffer-size=4
173 %__common_cflags        -O2 -fwrapv -pipe %{Werror_cflags} %{debuginfocflags} %{?_fortify_cflags} %{!?nospecflags:%{?specflags}}
174 %__common_cflags_with_ssp       %{__common_cflags} %{?_ssp_cflags}
175
176 # arch macros
177 %ix86  i386 i486 i586 i686 pentium3 pentium4 athlon
178 %x8664 x86_64 amd64 ia32e
179 %ppc   ppc ppc7400 ppc7450
180
181 #---------------------------------------------------------------------
182 #       Expanded at end of %prep
183 #
184 %__id_u         %{__id} -u
185 %__chown_Rhf    %{__chown} -Rhf
186 %__chgrp_Rhf    %{__chgrp} -Rhf
187 %_fixowner      [ `%{__id_u}` = '0' ] && %{__chown_Rhf} root
188 %_fixgroup      [ `%{__id_u}` = '0' ] && %{__chgrp_Rhf} root
189 %_fixperms      %{__chmod} -Rf a+rX,u+w,g-w,o-w
190
191 %__id           /bin/id
192
193 #
194 # rpm5 prolog for loading the standard macro
195 %{load:/etc/rpm/macros.d/*.macros}
This page took 0.047234 seconds and 4 git commands to generate.